华为交换机的 hybrid 特性

Hybrid特性是华为交换机的专有特性,该特性为局域网的搭建提供了更多的灵活性和安全性。那么就让我们一起走进hybrid世界,去体验hybrid特性给我们带来的快乐。
首先让我们来看一个网路拓扑图:
这是一个公司的小型网络拓扑图,该公司现有财务和工程两个部门以及一个文件服务器,分别处于不同的VLAN,现要求财务部和工程部都能访问公司内部文件服务器,但是财务部和工程部之间不能互相访问。看到这里,大家都想通过路由器或三层交换机做访问控制列表实现,没错是可以实现,但是现在只有二层设备。怎么办?好办。现在分别讲一下在huaweicisco环境下的解决方法。
Huawei环境:
在华为环境下我们可以利用华为专有的hybrid特性。首先我们先了解一下华为交换机的几种接口类型。
Aaccess接口:access端口只能承载一个vlan的流量,通常用于交换机与PC相连的接口,当access接口收到一个数据帧时,先判断是否有vlan信息,如果没有则打上自己的PVID,如果有则直接丢弃;当access接口要转发一个数据帧时,先判断该数据帧的vlan是否和自己在一个vlan,如果是,则剥离vlan信息,再转发,如果不是,则丢弃。
Trunk接口:trunk接口可以承载多个vlan的流量,但在华为交换机上默认情况下只允许默认vlan的流量通过,只允许对默认vlan不打标记。通常用于与其它交换机相连的接口。当trunk接口收到一个数据帧时,先判断是否允许该vlan的流量通过,如果允许,则转发到相应的接口,由相应的接口进行处理,如果不允许,则丢弃。Trunk接口发送数据帧时,同样判断是否允许该vlan通过,如果允许则转发到相应的接口,由相应的接口进行处理,如果不允许,则直接丢弃。
Hybrid接口:hybrid接口可以承载多个vlan的流量,可用在与PC或交换机相连的接口,与trunk接口的最大区别是可以对任何vlan打标记或不打标记。当hybrid接口接收数据帧时,先判断该数据帧是否有vlan信息,如果有,则看该接口是否对该vlan打标记,如果对该vlan打标记,则直接转发到相应的接口,由相应的接口进行处理;如果没有明确说对该vlan打标记,则丢弃。因为默认情况下,hybrid 接口只允许默认vlan的数据帧通过,如果要允许其它的vlan 通过,就要对相应的vlan打标记。如果收到的数据帧没有任何标记,则标记为自己的PVID。在接口上配置对某些vlan标记所起的作用只是允许和不允许该vlan的数据帧通过的问题,在接口上配置为对某些vlan不打标记时只在接口发送数据帧时起作用,当接口收数据时,是不起作用的。hybrid 接口发送数据帧时,若该数据帧有标记,则判断该数据帧的标记vlan和自己是否在同一个vlan,如果是在同一个vlan,则去掉标记后转发;如果该数据帧和自己不在同一个vlan,则判断接口对该数据帧是标记还是不标记,如果是不标记,则去掉标记后再进行转发,如果是标记,则直接转发,若没有明确说明是标记,还是不标记,则直接丢弃。如果要发送的数据帧没有标记,则直接转发。当把一个接口加入到vlan2后,再把该接口设置为hybrid接口时,该接口的PVID就变成了vlan2,同时对vlan2的数据帧不打标记。

了解这些之后,我们就可以很容易的进行配置了,配置过程如下:

[Switch1]vlan 2

[Switch1-vlan2]port ethernet 0/2

[Switch1]interface ethernet 0/2

[Switch1-ethernet0/2]port link-type hybrid

[Switch1-ethernet0/2]port hybrid vlan 1 untagged

[Switch1]interface ethernet 0/1

[Switch1-ethernet0/1]port link-type hybrid

[Switch1-ethernet0/1]port link-type hybrid vlan 2 untagged

[Switch2]vlan 3

[Switch2-vlan3]port ethernet 0/3

[Switch2]vlan 4

[Switch2-vlan4]port ethernet 0/4

[Switch2]interface ethernet 0/3

[Switch2-ethernet0/3]port link-type hybrid

[Switch2-ethernet0/3]port hybrid vlan 1 untagged

[Switch2]interface ethernet 0/4

[Switch2-ethernet0/4]port link-type hybrid

[Switch2-ethernet0/4]port hybrid vlan 1 untagged

[Switch2]interface ethernet 0/1

[Switch2-ethernet0/1]port link-type hybrid

[Switch2-ethernet0/1]port link-type hybrid vlan 3 4 untagged

注意红色部分,为什么要对vlan1不打标记呢?好吧,让我们看一下整个流程。

根据我的配置,当财务部们的PC发送一个数据到文件服务器时:

数据去------switch2ethernet 0/3接口接收该数据,这时交换机会将该数据标记为vlan3的数据,然后根据mac地址表转发到相应的接口--------switch2ethernet 0/1接口,发现该接口对vlan3的数据不标记,于是去掉标记后再进行转发---------switch1ethernet 0/1接口接收该数据帧,发现该数据是没有任何标记的,于是标记为自己的PVIDvlan1),然后进行转发,这个时候数据发生了很大的变化,二层原本是被封装为vlan3的数据现在变成了vlan1的,-------switch1ethernet0/2,发现该接口对vlan1的数据是不标记的,于是去掉标记后进行转发,这时数据就到达了文件服务器。

数据回------switch1ethernet 0/2接口接收该数据,这时交换机会将该数据标记为vlan2的数据,然后根据mac地址表转发到相应的接口--------switch1ethernet 0/1接口,发现该接口对vlan2的数据不标记,于是去掉标记后再进行转发---------switch2ethernet 0/1接口接收该数据帧,发现该数据是没有任何标记的,于是标记为自己的PVIDvlan1),然后进行转发,这个时候数据同样发生了很大的变化,二层原本是被封装为vlan2的数据帧,但现在变成了vlan1的,-------switch2ethernet0/3,发现该接口对vlan1的数据是不标记的,于是去掉标记后进行转发,这时数据就到达了财务部门的PC

工程部门和文件服务器的通讯是一样的。

现在再来说一说财务部和工程部直间的通讯:

从财务部到市场部:数据去------switch1ethernet 0/3接口接收该数据,这时交换机会将该数据标记为vlan3的数据,然后根据mac地址表转发到相应的接口--------switch1ethernet 0/4接口,发现该接口既没有说明对vlan3的数据标记还是不标记,于是丢弃。既然去都去不了,还说什么回呢?

从市场部到财务部:数据去------switch2ethernet 0/4接口接收该数据,这时交换机会将该数据标记为vlan4的数据,然后根据mac地址表转发到相应的接口--------switch1ethernet 0/3接口,发现该接口既没有说明对vlan4的数据标记还是不标记,于是丢弃。

总结:hybrid接口确实是一个非常不错的特性,在安全性和灵活性方面有着非常广泛的应用价值。强烈建议先一定要把原理搞明白之后再去应用到实际工作中,否则将会出现你无法预料和解决的问题。