ARP攻击如何来解决
ARP攻击没有实在太好的解决办法,目前有几种方法不过不能彻底解决像在DHCP上设置保留、在本机上设置IPMAC绑定、装防护软件等,作用不大。下面我来介绍一种方法,那就是在交换机上做IPMAC绑定。
Cisco中有以下三种方案可供选择,方案1和方案2实现的功能是一样的,即在具体的交换机端口上绑定特定的主机的MAC地址(网卡硬件地址),方案3是在具体的交换机端口上同时绑定特定的主机的MAC地址(网卡硬件地址)和IP地址。

方法1——基于端口的MAC地址绑定

思科2950交换机为例,登录进入交换机,输入管理口令进入配置模式:
Switch#config terminal
#进入配置模式
Switch(config)# Interface fastethernet 0/1
#进入具体端口配置模式

Switch(config-if)#Switchport port-secruity
#配置端口安全模式

Switch(config-if )switchport port-security mac-address 0009.6bc4.d4bf (
主机的MAC地址)
#配置该端口要绑定的主机的MAC地址
Switch(config-if )no switchport port-security mac-address 0009.6bc4.d4bf (
主机的MAC地址)
#删除绑定主机的MAC地址
注意:
以上命令设置交换机上某个端口绑定一个具体的MAC地址,这样只有这个主机可以使用网络,如果对该主机的网卡进行了更换或者其他PC机想通过这个端口使用网络都不可用,除非删除或修改该端口上绑定的MAC地址,才能正常使用。

以上功能适用于思科2950355045006500系列交换机


方法2——基于MAC地址的扩展访问列表

Switch(config)
Mac access-list extended MAC10
#定义一个MAC地址访问控制列表并且命名该列表名为MAC10    
Switch(config)permit host 0009.6bc4.d4bf any
#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机

Switch(config)permit any host 0009.6bc4.d4bf
#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机

Switch(config-if )interface Fa0/20
#
进入配置具体端口的模式

Switch(config-if )mac access-group MAC10 in
#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)

Switch(config)no mac access-list extended MAC10
#清除名为MAC10的访问列表

此功能与应用与第一种方法相同,但它是基于端口做的MAC地址访问控制列表限制,可以限定特定源MAC地址与目的地址范围。
以上功能在思科2950355045006500系列交换机上可以实现,但是需要注意的是29503550需要交换机运行增强的软件镜像(Enhanced Image)。

方案3——IP地址的MAC地址绑定
只能将应用12与基于IP的访问控制列表组合来使用才能达到IP-MAC 绑定功能。   

Switch(config)Mac access-list extended MAC10
#定义一个MAC地址访问控制列表并且命名该列表名为MAC10
Switch(config)
permit host 0009.6bc4.d4bf any
#定义MAC地址为0009.6bc4.d4bf的主机可以访问任意主机
Switch(config)
permit any host 0009.6bc4.d4bf
#定义所有主机可以访问MAC地址为0009.6bc4.d4bf的主机
Switch(config)Ip access-list extended IP10
#定义一个IP地址访问控制列表并且命名该列表名为
IP10
Switch(config)
Permit 192.168.0.1 0.0.0.0 any
#定义IP地址为192.168.0.1的主机可以访问任意主机
Switch(config)Permit any 192.168.0.1 0.0.0.0
#定义所有主机可以访问IP地址为192.168.0.1的主机

Switch(config-if )
interface Fa0/20
#
进入配置具体端口的模式
Switch(config-if )mac access-group MAC10 in
#在该端口上应用名为MAC10的访问列表(即前面我们定义的访问策略)

Switch(config-if )
Ip access-group IP10 in
#在该端口上应用名为IP10的访问列表(即前面我们定义的访问策略)
Switch(config)no mac access-list extended MAC10
#清除名为MAC10的访问列表

Switch(config)no Ip access-group IP10 in
#清除名为IP10的访问列表

上述所提到的应用1是基于主机MAC地址与交换机端口的绑定,方案2是基于MAC地址的访问控制列表,前两种方案所能实现的功能大体一样。如果要做到IPMAC地址的绑定只能按照方案3来实现,可根据需求将方案1或方案2IP访问控制列表结合起来使用以达到自己想要的效果。
注意:以上功能在思科2950355045006500系列交换机上可以实现,但是需要注意的是29503550需要交换机运行增强的软件镜像(Enhanced Image)。
华为交换机的配置:

假设IP地址10.1.1.2MAC地址0009.6bc4.d4bf

1
IP+MAC+端口绑定流程

三层交换机中目前只有S3526系列支持使用AM命令来进行IP地址和端口的绑定。并且如果S3526系列交换机要采用AM命令来实现绑定功能,则交换机必须是做三层转发(即用户的网关应该在该交换机上)。

2
、采用DHCP-SECURITY来实现

1.
配置端口的静态MAC地址
[SwitchA]mac-address static 0009.6bc4.d4bf interface e0/1 vlan 1
2.
配置IPMAC对应表
[SwitchA]dhcp-security 10.1.1.2 0009.6bc4.d4bf static
3.
配置dhcp-server组号(否则不允许执行下一步,此dhcp-server组不用在交换机上创建也可)
[SwitchA-Vlan-interface1]
dhcp-server 1
4.
使能三层地址检测
[SwitchA-Vlan-interface1]address-check enable
3
、采用AM命令来实现
1.
使能AM功能
[SwitchA]am enable
2.
进入端口视图
[SwitchA]vlan 10
3.
E0/1加入到vlan10
[SwitchA-vlan10]
port Ethernet 0/1
4.
创建(进入)vlan10的虚接口
[SwitchA]interface Vlan-interface 10
5.
vlan10的虚接口配置IP地址
[SwitchA-Vlan-interface10]ip add 10.1.1.1 255.255.255.0
6.
进入E0/1端口
[SwitchA]interface Ethernet 0/1
7.
该端口只允许起始IP地址为10.1.1.210IP地址上网
[SwitchA-Ethernet0/1]am ip-pool 10.1.1.2 10