配置MFF功能实现用户的二层隔离和三层互通示例
组网需求
如图7-5所示,企业某部门使用SwitchA和SwitchB作为用户的接入设备,SwitchC作为汇聚设备。管理员希望位于VLAN10内的用户在接入设备上二层隔离,并且只能通过网关进行三层通信,从而达到网关对用户流量进行监控的目的。由于用户数量较多,为了便于统一管理IP地址,该部门的用户均通过DHCP方式获取IP地址,管理员希望应用服务器(DHCP Server)访问用户的流量可以二层透传给用户,避免网关因转发过多应用服务器的流量而影响网关性能。
配置思路
采用如下思路在SwitchA和SwitchB上进行以下配置:
配置DHCP Snooping功能,为二层隔离和三层互通功能的实现提供包含IP地址、MAC地址、VLAN等动态用户的信息。
配置MFF功能,强制用户流量由网关进行转发,实现用户之间的二层隔离和三层互通,同时达到网关对用户流量进行监控的目的。
配置DHCP Server的IP地址,使DHCP Server访问用户的流量可以二层透传给用户,从而减轻网关的负担。
配置探测用户状态报文透传,使网关可以及时感知用户状态。
操作步骤
- 创建VLAN并配置各接口加入VLAN
# 在SwitchA上创建VLAN10,并将接口10GE1/0/1、10GE1/0/2、10GE1/0/3加入到VLAN10中。
<HUAWEI> system-view [~HUAWEI] sysname SwitchA [*HUAWEI] commit [~SwitchA] vlan batch 10
[*SwitchA] interface 10ge 1/0/1 [*SwitchA-10GE1/0/1] port link-type access [*SwitchA-10GE1/0/1] port default vlan 10 [*SwitchA-10GE1/0/1] quit
[*SwitchA] interface 10ge 1/0/2 [*SwitchA-10GE1/0/2] port link-type access [*SwitchA-10GE1/0/2] port default vlan 10 [*SwitchA-10GE1/0/2] quit
[*SwitchA] interface 10ge 1/0/3 [*SwitchA-10GE1/0/3] port link-type trunk [*SwitchA-10GE1/0/3] port trunk allow-pass vlan 10 [*SwitchA-10GE1/0/3] quit
# 在SwitchB上创建VLAN10,并将接口10GE1/0/1、10GE1/0/2、10GE1/0/3加入到VLAN10中。
<HUAWEI> system-view [~HUAWEI] sysname SwitchB [*HUAWEI] commit [~SwitchB] vlan batch 10
[*SwitchB] interface 10ge 1/0/1 [*SwitchB-10GE1/0/1] port link-type access [*SwitchB-10GE1/0/1] port default vlan 10 [*SwitchB-10GE1/0/1] quit
[*SwitchB] interface 10ge 1/0/2 [*SwitchB-10GE1/0/2] port link-type access [*SwitchB-10GE1/0/2] port default vlan 10 [*SwitchB-10GE1/0/2] quit
[*SwitchB] interface 10ge 1/0/3 [*SwitchB-10GE1/0/3] port link-type trunk [*SwitchB-10GE1/0/3] port trunk allow-pass vlan 10 [*SwitchB-10GE1/0/3] quit
- 配置DHCP Snooping功能
# 在SwitchA上全局使能DHCP Snooping功能。
[*SwitchA] dhcp enable [*SwitchA] dhcp snooping enable
# 因所有用户均位于VLAN10,所以在SwitchA上使能VLAN10的DHCP Snooping功能。
[*SwitchA] vlan 10 [*SwitchA-vlan10] dhcp snooping enable [*SwitchA-vlan10] quit
# 在SwitchA上配置接口10GE1/0/3为DHCP Snooping信任接口。
[*SwitchA] interface 10ge 1/0/3 [*SwitchA-10GE1/0/3] dhcp snooping trusted [*SwitchA-10GE1/0/3] quit
# 在SwitchB上全局使能DHCP Snooping功能。
[*SwitchB] dhcp enable [*SwitchB] dhcp snooping enable
# 因所有用户均位于VLAN10,所以在SwitchB上使能VLAN10的DHCP Snooping功能。
[*SwitchB] vlan 10 [*SwitchB-vlan10] dhcp snooping enable [*SwitchB-vlan10] quit
# 在SwitchB上配置接口10GE1/0/3为DHCP Snooping信任接口。
[*SwitchB] interface 10ge 1/0/3 [*SwitchB-10GE1/0/3] dhcp snooping trusted [*SwitchB-10GE1/0/3] quit
- 配置MFF的基本功能
# 使能SwitchA的全局MFF功能。
[*SwitchA] mac-forced-forwarding enable
# 配置SwitchA的10GE1/0/3为网络接口。
[*SwitchA] interface 10ge 1/0/3
[*SwitchA-10GE1/0/3] mac-forced-forwarding network-port
[*SwitchA-10GE1/0/3] quit
# 在SwitchA上使能VLAN10的MFF功能。
[*SwitchA] vlan 10
[*SwitchA-vlan10] mac-forced-forwarding enable
# 在SwitchA上配置网关定时探测功能。
[*SwitchA-vlan10] mac-forced-forwarding gateway-detect
# 使能SwitchB的全局MFF功能。
[*SwitchB] mac-forced-forwarding enable
# 配置SwitchB的10GE1/0/3为网络接口。
[*SwitchB] interface 10ge 1/0/3
[*SwitchB-10GE1/0/3] mac-forced-forwarding network-port
[*SwitchB-10GE1/0/3] quit
# 在SwitchB上使能VLAN10的MFF功能。
[*SwitchB] vlan 10
[*SwitchB-vlan10] mac-forced-forwarding enable
# 在SwitchB上配置网关定时探测功能。
[*SwitchB-vlan10] mac-forced-forwarding gateway-detect
- 配置应用服务器的IP地址
# 在SwitchA上配置应用服务器的IP地址。
[*SwitchA-vlan10] mac-forced-forwarding server 10.1.1.2
# 在SwitchB上配置应用服务器的IP地址。
[*SwitchB-vlan10] mac-forced-forwarding server 10.1.1.2
- 配置探测用户状态报文透传功能
# 在SwitchA上配置探测用户状态报文透传功能。
[*SwitchA-vlan10] mac-forced-forwarding user-detect transparent
[*SwitchA-vlan10] quit
[*SwitchA] commit
[~SwitchA] quit
# 在SwitchB上配置探测用户状态报文透传功能。
[*SwitchB-vlan10] mac-forced-forwarding user-detect transparent
[*SwitchB-vlan10] quit
[*SwitchB] commit
[~SwitchB] quit
- 验证配置结果
#以SwitchB为例,执行命令display mac-forced-forwarding vlan 10查看VLAN10下的MFF配置情况。
<SwitchB> display mac-forced-forwarding vlan 10
Flags: S - static, D - dynamic --------------------------------------------------------------------------- Gateway detect : enable Dynamic user learning : enable User-detect transparent: enable Static gateway : - Max user : - Servers : 10.1.1.2 --------------------------------------------------------------------------- Gateway IP Gateway MAC --------------------------------------------------------------------------- 10.1.1.1 3867-9a11-0111 10.1.1.2 3867-9a11-0112 --------------------------------------------------------------------------- --------------------------------------------------------------------------- User IP User MAC Gateway IP Interface Flags --------------------------------------------------------------------------- 10.1.1.10 0001-0001-0002 10.1.1.1 10GE1/0/2 D --------------------------------------------------------------------------- MFF host total count = 1
# 此时如果将网关连接SwitchC的接口shut down,则VLAN10内的任意两个用户之间不能Ping通,而将该接口恢复为正常状态后,用户就能相互Ping通,即表明已实现用户的二层隔离和三层互通,MFF功能已生效。
配置文件
SwitchA的配置文件
# sysname SwitchA # vlan batch 10 # mac-forced-forwarding enable # dhcp enable # dhcp snooping enable # vlan 10 dhcp snooping enable mac-forced-forwarding enable mac-forced-forwarding user-detect transparent mac-forced-forwarding gateway-detect mac-forced-forwarding server 10.1.1.2 # interface 10GE1/0/1 port default vlan 10 # interface 10GE1/0/2 port default vlan 10 # interface 10GE1/0/3 port link-type trunk port trunk allow-pass vlan 10 mac-forced-forwarding network-port dhcp snooping trusted # return
SwitchB的配置文件
# sysname SwitchB # vlan batch 10 # mac-forced-forwarding enable # dhcp enable # dhcp snooping enable # vlan 10 dhcp snooping enable mac-forced-forwarding enable mac-forced-forwarding user-detect transparent mac-forced-forwarding gateway-detect mac-forced-forwarding server 10.1.1.2 # interface 10GE1/0/1 port default vlan 10 # interface 10GE1/0/2 port default vlan 10 # interface 10GE1/0/3 port link-type trunk port trunk allow-pass vlan 10 mac-forced-forwarding network-port dhcp snooping trusted # return