DHCP-Snooping配置用途:
DHCP-snooping的任务就是对DHCP报文进行判断,防止伪造的DHCP服务器提供DHCP服务,维护接口上MAC地址与IP地址的对应绑定关系。根据MAC地址与IP地址的对应绑定,可以完成DAI(动态ARP监测)和IP source guard功能。DHCP-Snooping功能主要包括侦听DHCP报文、动态维护MAC地址与IP地址的对应绑定表,二层交换机过滤非信任端口的不满足这种对应绑定关系的报文,防止非法用户对网络的攻击。
关于思科交换机DHCP服务器配置详见:思科交换机DHCP服务配置方法
一、配置DHCP Snooping功能
1、打开DHCP Snooping功能:
Cntidog-Cisco-Switch(config)#ip dhcp snooping
2、设置DHCP Snooping功能将作用于哪些VLAN(例如VLAN 10):
Cntidog-Cisco-Switch(config)#ip dhcp snooping vlan 10
3、非信任端口收到的DHCP请求报文的源MAC和CHADDR字段是否相同,以防止DHCP耗竭攻击,该功能默认即为开启:
Cntidog-Cisco-Switch(config)#ip dhcp snooping verify mac-address
4、配置接口为DHCP监听特性的信任接口(一般为上联端口),所有接口默认为非信任接口:
Cntidog-Cisco-Switch(config-if)#ip dhcp snooping trust
二、扩展功能(非必须)
限制非信任端口的DHCP报文速率为每秒15个包(默认即为每秒15个包)如果不配该语句,则show ip dhcp snooping的结果将不列出没有该语句的端口,可选速率范围为1-2048建议,在配置了端口的DHCP报文限速之后,最好配置以下两条命令:
Cntidog-Cisco-Switch(config-if)#ip dhcp snoopiing limit rate 15
使由于DHCP报文限速而被禁用的端口能自动从err-disable状态后,经过30秒时间才能恢复:
Cntidog-Cisco-Switch(config)#errdisable recovery cause dhcp-rate-limit
设置交换机是否为非信任端口收到的DHCP报文插入Option 82,默认即为开启状态:
Cntidog-Cisco-Switch(config)#ip dhcp snooping information option
设置汇聚交换机将接收从非信任端口收到的接入交换机发来的带有选项82的DHCP报文:
Cntidog-Cisco-Switch(config)#ip dhcp snooping information option allow-untrusted
三、DHCP Snooping的状态维护
显示当前DHCP监听的各选项和各端口的配置情况:
Cntidog-Cisco-Switch#show ip dhcp snooping
显示当前的DHCP监听绑定表:
Cntidog-Cisco-Switch#show ip dhcp snooping binding
显示DHCP监听绑定数据库的相关信息:
Cntidog-Cisco-Switch#show ip dhcp snooping database
显示DHCP监听的工作统计:
Cntidog-Cisco-Switch#show ip dhcp snooping statistics
清除DHCP监听绑定表;注意:本命令无法对单一条目进行清除,只能清除所有条目:
Cntidog-Cisco-Switch#clear ip dhcp snooping binding
清空DHCP监听绑定数据库的计数器:
Cntidog-Cisco-Switch#clear ip dhcp snooping database statistics
清空DHCP监听的工作统计计数器:
Cntidog-Cisco-Switch#clear ip dhcp snooping statistics
配置说明:
客户端端口推荐配置spanning-tree portfast命令,使得该端口不参与生成树计算,节省端口启动时间,防止可能因为端口启动时间过长导致客户端得不到IP地址。