更新时间:2024-01-10
1 MACFF配置
1.1 MACFF配置任务
MACFF的任务就是隔离交换机上同一个vlan的下连端口之间的互访报文,使得这些报文必须通过dhcp服务器分配给客户端的默认网关,由默认网关转发至下连端口。通过截获下连端口之间的ARP报文,来阻止下连端口间的ARP学习,并且回复网关的MAC地址,从而达到所有下连端口之间的互访报文都经过网关处理的目的。
注:MACFF需要DHCPR-snooping的支持,在启用MACFF前请确保DHCPR-snooping正常工作。默认网关需要关闭ICMP重定向。启用MACFF的交换机必须配置vlan管理地址。
• 开启/关闭MACFF功能
• 在VLAN 上启动MACFF
• 在VLAN 上配置MACFF的默认AR
• 在VLAN 上配置MACFF的其他服务AR
• 指定物理端口关闭MACFF功能
1.1.1 开启/关闭MACFF功能
在全局配置模式下进行下列配置:
命令
|
目的
|
macff enable
|
开启MACFF功能。
|
no macff enable
|
恢复缺省设置。
|
该命令是启动MACFF功能的全局控制命令。配置该命令,则交换机侦听所有ARP报文。
注意:在配置此命令之前,请确保已经打开DHCP-snooping。如果客户端是在配置DHCP-snooping之前通过此交换机获取地址,则交换机不能添加相应的DHCP绑定关系。
1.1.2 在VLAN 上启动MACFF
在VLAN上启动MACFF功能,则对属于整个VLAN的所有DHCP-snooping非信任物理端口收到的ARP报文进行监听。响应VLAN内的非信任物理端口收到的ARP报文请求,如果请求目标ip地址为收到报文所在物理端口的任一DHCP client的ip地址 ,那么将此报文丢弃;如果是ARP response,那么将此报文丢弃;如果是请求非本端口的其他DHCP client 、默认网关或者其他服务地址,那么会用相应mac地址回复ARP请求。
注意:启用MACFF的vlan必须配置vlan的管理地址,必须启用DHCP-snooping。
在全局配置模式下进行下列配置:
命令
|
目的
|
macff vlan vlan_id enable
|
在VLAN上启动MACFF功能
|
no macff vlan vlan_id enable
|
在VLAN上关闭MACFF功能。
|
1.1.3 在VLAN 上配置MACFF的默认AR
在vlan上配置MACFF的默认AR,此功能在客户端手动配置地址时(或者DHCP server没有配置默认路由option3,但不建议这样使用DHCP server),交换机会自动启用默认AR作为MACFF指定的默认网关(建议与客户端手动配置的默认网关一致),且默认AR只能有一个。
在全局配置模式下进行下列配置:
命令
|
目的
|
macff vlan vlan_id default-ar A.B.C.D
|
在VLAN上配置MACFF的默认AR。
|
no macff vlan vlan_id default-ar
|
在VLAN上删除MACFF的默认AR。
|
注意:在配置此命令之前,可以通过ip source binding xx:xx:xx:xx:xx:xx A.B.C.D interface name来手动添加客户端在交换机上的绑定表,不这样做MACFF默认把手动配置的客户端作为非法客户端,MACFF不会为其提供服务。
1.1.4在VLAN 上配置MACFF的其他服务AR
在vlan上配置MACFF其他服务AR,配置了其他服务AR以后,MACFF允许DHCP client直接访问这些服务AR,而无需将报文通过DHCP server分配的默认网关转发。
此功能可以在client的同网段下有某些服务器或者其他服务地址时使用。
在全局配置模式下进行下列配置:
命令
|
目的
|
macff vlan vlan_id other_ar A.B.C.D
|
在VLAN上配置MACFF的其他服务AR。
|
no macff vlan vlan_id other_ar A.B.C.D
|
在VLAN上删除MACFF的其他服务AR。
|
1.1.5指定物理端口关闭MACFF
指定物理端口关闭MACFF,则该接口的报文不做隔离,且不对ARP报文监听。
在物理接口配置模式下进行下列配置:
命令
|
操作
|
macff disable
|
指定物理端口停用MACFF
|
no macff disable
|
指定物理端口启用MACFF(默认启用)。
|
缺省情况下接口允许启用MACFF。
1.1.6打开MACFF调试开关
在全局配置模式下进行下列配置:
命令
|
操作
|
debug macff
|
打开macff调试开关
|
no debug macff
|
关闭macff调试开关
|
1.1.7 MACFF配置示例
示例网络连接如图1:
配置Switch:
(1)开启连接Private Network A的VLAN 1的MACFF,.DHCP服务器分配的默认网关为192.168.2.1。
Switch_config#arp 192.168.2.1 00:e0:0f:17:92:ed vlan 1
Switch_config#ip dhcp-relay snooping
Switch_config#ip dhcp-relay snooping vlan 1
Switch_config#macff enable
Switch_config#macff vlan 1 enable
(2)开启连接Private Network B的VLAN 2的MACFF,DHCP服务器分配的默认网关为192.168.2.2(如果需要,也可以是192.168.2.1)。
Switch_config#arp 192.168.2.2 00:e0:0f:ea:74:ee vlan 2
Switch_config#ip dhcp-relay snooping vlan 2
Switch_config#macff vlan 2 enable
(3) 配置DHCP服务器、默认网关连接端口和其他服务AR连接端口为信任端口。
Switch_config_g1/1#dhcp snooping trust
(4) 如果vlan 1下的下连主机A为手动配置的ip地址和默认网关,IP地址为192.168.2.102,MAC地址为6c-62-6d-59-18-b7,默认网关为192.168.2.1使得MACFF对其生效。(如果没有手动配置的客户端,跳过此步骤。)
Switch_config#arp 192.168.2.1 00:e0:0f:17:92:ed vlan 1
Switch_config#ip source binding 6c:62:6d:59:18:b7 192.168.2.102 interface GigaEthernet1/1
Switch_config#macff vlan 1 default-ar 192.168.2.1
(5) 在启用macff的vlan下对指定物理端口关闭macff。
Switch_config_g1/1#macff disable
(6) 配置与客户端主机同网段的其他服务AR,MACFF将允许客户端主机不通过默认网关而直接访问。(其他服务AR所在端口需要设置为信任端口)
Switch_config_g1/1#macff disable