与cisco ios中的基于mac地址划分vlan一样,H3c交换机中基于mac地址也是一种动态vlan的划分方式,它并不会把某一个端口静态的划分给某一个vlan,而是根据所连接的主机的mac地址来动态选择加入对应的vlan中。
在cisco中划分基于mac地址的vlan是比较麻烦的,首先要配置VMPS服务器,还要配置vpms客户端,而且vmps服务器目前来说只能由catos的交换机承担,所以要实现基于mac地址的vlan划分的网络中必须具备有两种操作系统的cisco设备,条件是比较苛刻的。但是在H3C的交换机基于mac地址划分相比之下要简单的多。它是按照报文的源mac地址来定义vlan的成员的,将指定的报文加入该vlan标记后进行转发,但是在H3C的设备中基于mac地址划分vlan 的设备不多,与基于IP子网的vlan一样。主要有S5500,S5510,S7500E等交换机系列。
与基于IP子网和基于协议的vlan一样。基于mac地址的vlan功能只能在类型为hybrid端口上划分,而且也主要用于在用户的接入设备的下行端口上进行配置。因此不能和聚合功能同时使用。
基于mac地址的划分又分为三种划分方式:手动配置静态mac vlan、动态触发端口加入静态mac vlan 和动态mac vlan。
1、 手动配置静态mac
vlan 手动配置静态mac vlan 方式中,管理员需要手动配置mac vlan表项,启动基于mac划分vlan 的功能,然后手动将对应的端口加入mac vlan。这种方式显然工作量比较大,常用于mac vlan中用户相对较少的网络黄静,在该方式下,manc vlan 的划分原理如下:
A、 当端口收到的报文为不带vlan标记时,会根据报文的源mac地址匹配mac vlan表,首先进行模糊匹配,即查询表中mask(mac地址掩码)不是全为F(只比较非F的
位)的表项,将源mac和mask记性逻辑与运算后在与mac vlan表项中mac地址匹配,如果完全相同,则匹配成功,给报文添加表项中指定的vlan id并转发报文,如果匹配失败则进行精确匹配,即查询mask全为F的表项,如果报文中的源mac地址和vlan中的mac地址表完全相同的时候,则匹配成功,如果没有找到匹配mac地址的则继续按基于IP子网vlan、协议vlan、端口vlan进行匹配。
B、
当端口收到的报文带有vlan标记的报文时候,如果vlan id在端口中允许通过的vlan id 列表中,则继续收发该报文,否则丢弃。
2、 动态端口触发端口加入mac
vlan 在手动配置mac vlan划分方式中,管理元需要把端口一一加入macvlan表项里,当我们有时往往根本不能确定交换机从哪些端口收到属于macvlan的报文时候,这时我们就不能通过手动方式把相应的端口加入到mac vlan,此时就需要借助另一种更加之恩那个的mac vlan配置方式,使用动态触发端口加入到静态mac vlan,这种配置方式只需要在配置静态mac vlan后在端口启用基于mac的vlan划分功能和mac vlan动态触发功能,咋端口收到与mac vlan表项匹配的报文后,可以通过此报文动态触发端口加入mac vlan。其划分原理如下:
A、 当端口收到报文为不待vlan标记的报文时候按以下流程处理。
B、 当收到报文携带vlan标记处理方式和基于端口的vlan一样处理。
3、 动态mac vlan
动态mac vlan需要和接入认证(比如基于mac地址的802.1x认证)配合使用,以实现终端的安全、灵活接入。用户在交换机上配置动态mac vlan功能以后,还需要在接入认真服务器上配置mac地址和vlan的关联关系。这种配置是比较麻烦的。
在动态mac vlan中,用户访问网络时,接入认证服务器先对用户进行认证,如果认真通过,服务器下发vlan信息,交换机会根据用户报文mac地址和下发的vlan信息生成mac vlan表项,将mac vlan添加到端口允许通过的vlan列表。用户下载后,交换机自动删除mac vlan表项,并将mac vlan从端口允许通过的vlan列表中删除。
4、 手动配置静态mac vlan配置示例
本例拓扑结构如下:switch A 和switch B的gigabitethernet1/0/1端口分别连接到两个会议室,pc1和pc2是会议用笔记本电脑,会在两个会议室之间移动使用。Mac地址分别为:00-00-00-00-00-01、00-00-00-00-00-02。
使用时候pc1和pc2分别用于两个部门的员工,两个部门的vlan使用vlan100和vlan200进行隔离,现要求无论哪个笔记本在哪个会议室使用都只能访问自己的服务器server1和server2.
配置命令:
SW A:
<sw_A>system-view
[sw_A]vlan 100
[sw_A-vlan100] Quite
[sw_A]Vlan 200
[sw_A-vlan200] Quite
[sw_A] Interface gigabitethernet1/0/2
[sw_A-gigabitethernet1/0/2]Port link-type trunk
[sw_A-gigabitethernet1/0/2]Port trunk permit vlan 100 200
[sw_A-gigabitethernet1/0/2]Quite
[sw_A] interface gigabitethernet1/0/1
[sw_A-gigabitethernet1/0/1] port link-type hybrid
[sw_A-gigabitethernet1/0/1] port trunk permit vlan 100 200 untagged
[sw_A-gigabitethernet1/0/1]quite
[sw_A] mac-vlan mac-address 0000-0000-0001 vlan 100
[sw_A] mac-vlan mac-address 0000-0000-0002 vlan 200
[sw_A] interface gigabitethernet1/0/1
[sw_A-gigabitethernet1/0/1]mac-vlan enable !---开启mac关联
[sw_A-gigabitethernet1/0/1]quite
Sw B:
交换机B的配置与A是一样的。
Core交换机的配置
<sw_core>system-view
[sw_core] vlan 100
[sw_core-vlan100] port gigabitethernet1/013
[sw_core-vlan100] quite
[sw_core] vlan 200
[sw_core-vlan200] port gigabitethernet1/014
[sw_core-vlan200] quite
[sw_core] interface gigabitethernet1/0/3
[sw_core -gigabitethernet1/0/3] port link-type trunk
[sw_core -gigabitethernet1/0/3] permit trunk vlan 100 200
[sw_core -gigabitethernet1/0/3] quite
[sw_core] interface gigabitethernet1/0/4
[sw_core -gigabitethernet1/0/4 port link-type trunk
[sw_core -gigabitethernet1/0/4] permit trunk vlan 100 200
[sw_core -gigabitethernet1/0/4] quite
配置完成!





