MFF应用场景
MFF为同一广播域内实现客户端主机间的二层隔离和三层互通提供了一种解决方案。MFF截获用户的ARP请求报文,通过ARP代答机制,构造源MAC为网关MAC地址的ARP应答报文发给用户。通过这种方式,强制用户将所有流量发送到网关,使网关可以监控数据流量,防止用户之间的恶意攻击,更好地保障网络部署的安全性。
图通过MFF实现二层网络隔离
如图所示,用户流量不能从二层汇聚节点直接通过,而是从网关通过,实现了二层隔离。
配置MFF功能实现用户的二层隔离和三层互通示例
组网需求
如图4-3所示,企业某部门使用SwitchA和SwitchB作为用户主机的接入设备,SwitchC作为汇聚设备。管理员希望位于VLAN10内的用户主机在接入设备上二层隔离,并且只能通过网关进行三层通信,从而达到网关对用户流量进行监控的目的。由于主机数量较多,为了便于统一管理IP地址,该部门的用户主机均通过DHCP方式获取IP地址,管理员希望应用服务器(DHCP Server)访问用户的流量可以二层透传给用户,避免网关因转发过多应用服务器的流量而影响网关性能。
图 配置MFF功能组网图
配置思路
采用如下的思路进行配置:
- 在SwitchA和SwitchB上配置DHCP Snooping功能,为二层隔离和三层互通功能的实现提供包含IP地址、MAC地址、VLAN等动态用户的信息。
- 在SwitchA和SwitchB上配置MFF功能,强制用户流量由网关进行转发,实现用户主机之间的二层隔离和三层互通,同时达到网关对用户流量进行监控的目的。
- 在SwitchA和SwitchB上配置DHCP Server的IP地址,使DHCP Server访问用户的流量可以二层透传给用户,从而减轻网关的负担。
本举例仅包括SwitchA和SwitchB上的配置,SwitchC(只需配置二层透传即可)、DHCP Server和网关Gateway的配置这里不做相关说明。
操作步骤
- 创建VLAN并配置各接口加入VLAN
# 在SwitchA上创建VLAN10,并将接口GE0/0/1、GE0/0/2、GE0/0/3加入到VLAN10中。
<HUAWEI> system-view
[HUAWEI] sysname SwitchA
[SwitchA] vlan batch 10
[SwitchA] interface gigabitethernet 0/0/1
[SwitchA-GigabitEthernet0/0/1] port link-type access
[SwitchA-GigabitEthernet0/0/1] port default vlan 10
[SwitchA-GigabitEthernet0/0/1] quit
[SwitchA] interface gigabitethernet 0/0/2
[SwitchA-GigabitEthernet0/0/2] port link-type access
[SwitchA-GigabitEthernet0/0/2] port default vlan 10
[SwitchA-GigabitEthernet0/0/2] quit
[SwitchA] interface gigabitethernet 0/0/3
[SwitchA-GigabitEthernet0/0/3] port link-type trunk
[SwitchA-GigabitEthernet0/0/3] port trunk allow-pass vlan 10
[SwitchA-GigabitEthernet0/0/3] quit
# 在SwitchB上创建VLAN10,并将接口GE0/0/1、GE0/0/2、GE0/0/3加入到VLAN10中。
<HUAWEI> system-view
[HUAWEI] sysname SwitchB
[SwitchB] vlan batch 10
[SwitchB] interface gigabitethernet 0/0/1
[SwitchB-GigabitEthernet0/0/1] port link-type access
[SwitchB-GigabitEthernet0/0/1] port default vlan 10
[SwitchB-GigabitEthernet0/0/1] quit
[SwitchB] interface gigabitethernet 0/0/2
[SwitchB-GigabitEthernet0/0/2] port link-type access
[SwitchB-GigabitEthernet0/0/2] port default vlan 10
[SwitchB-GigabitEthernet0/0/2] quit
[SwitchB] interface gigabitethernet 0/0/3
[SwitchB-GigabitEthernet0/0/3] port link-type trunk
[SwitchB-GigabitEthernet0/0/3] port trunk allow-pass vlan 10
[SwitchB-GigabitEthernet0/0/3] quit
2.配置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上配置接口GE0/0/3为DHCP Snooping信任接口。
[SwitchA] interface gigabitethernet 0/0/3
[SwitchA-GigabitEthernet0/0/3] dhcp snooping trusted
[SwitchA-GigabitEthernet0/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上配置接口GE0/0/3为DHCP Snooping信任接口。
[SwitchB] interface gigabitethernet 0/0/3
[SwitchB-GigabitEthernet0/0/3] dhcp snooping trusted
[SwitchB-GigabitEthernet0/0/3] quit
3.配置MFF功能
# 在SwitchA上全局使能MFF功能。
[SwitchA] mac-forced-forwarding enable
# 配置SwitchA的接口GE0/0/3为MFF的网络接口。
[SwitchA] interface gigabitethernet 0/0/3
[SwitchA-GigabitEthernet0/0/3] mac-forced-forwarding network-port
[SwitchA-GigabitEthernet0/0/3] quit
# 在SwitchA上使能VLAN10的MFF功能。
[SwitchA] vlan 10
[SwitchA-vlan10] mac-forced-forwarding enable
# 在SwitchB上全局使能MFF功能。
[SwitchB] mac-forced-forwarding enable
# 配置SwitchB的接口GE0/0/3为MFF的网络接口。
[SwitchB] interface gigabitethernet 0/0/3
[SwitchB-GigabitEthernet0/0/3] mac-forced-forwarding network-port
[SwitchB-GigabitEthernet0/0/3] quit
# 在SwitchB上使能VLAN10的MFF功能。
[SwitchB] vlan 10
[SwitchB-vlan10] mac-forced-forwarding enable
4.配置DHCP Server的IP地址
# 在SwitchA上配置DHCP Server的IP地址。
[SwitchA-vlan10] mac-forced-forwarding server 10.10.10.2
[SwitchA-vlan10] quit
# 在SwitchB上配置DHCP Server的IP地址。
[SwitchB-vlan10] mac-forced-forwarding server 10.10.10.2
[SwitchB-vlan10] quit
5.验证配置结果
# 以SwitchB为例,执行命令display mac-forced-forwarding vlan 10查看VLAN10下的MFF配置情况。
[SwitchB] display mac-forced-forwarding vlan 10
[Vlan 10] MFF host total count = 1
--------------------------------------------------------------------------------
Servers 10.10.10.2
--------------------------------------------------------------------------------
User IP User MAC Gateway IP Gateway MAC
--------------------------------------------------------------------------------
10.10.10.11 0001-0001-0001 10.10.10.1 0002-0002-0001
--------------------------------------------------------------------------------
# 以SwitchB为例,执行命令display mac-forced-forwarding network-port查看MFF的网络接口信息
[SwitchB] display mac-forced-forwarding network-port
--------------------------------------------------------------------------------
VLAN ID Network-ports
--------------------------------------------------------------------------------
VLAN 10 GigabitEthernet0/0/3
--------------------------------------------------------------------------------
# 此时如果将网关连接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 server 10.10.10.2
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/2
port link-type access
port default vlan 10
#
interface GigabitEthernet0/0/3
port link-type trunk
port trunk allow-pass vlan 10
mac-forced-forwarding network-port
dhcp snooping trusted
#
return
MFF和VRRP同时部署易出现的问题
#故障现象和根因:在作二层隔离设备的交换机上部署MFF,DHCP用户上线后,MFF表项也随之形成,其中MFF表项中的Gateway IP字段是网关实地址。由于在设备上部署了VRRP,用户三层网关是VRRP虚网关。用户上行报文中,报文的目的MAC和网关IP分别是虚MAC和网关虚地址,与MFF表项不同,因此报文转发不通。
#处理方法:修改DHCP SERVER的gateway-list为VRRP虚网关地址,用户重新上线后,MFF表项会刷新。此时MFF表项的Gateway IP和Gateway MAC分别是网关虚地址和虚MAC,因此报文能够正常转发。
友情提醒: 请添加客服微信进行免费领取流量卡!
QQ交流群:226333560 站长微信:qgzmt2
原创文章,作者:sunyaqun,如若转载,请注明出处:https://www.dallk.cn/4112.html