在Cisco交换机上配置DHCP Snooping(DHCP欺骗防护)
DHCP Snooping的作用
DHCP Snooping是一项重要的网络安全功能,可用于维护网络的安全性和可靠性,减少潜在的网络问题,并提供日志和监控功能,以便网络管理员更好地了解网络流量和活动。
具体表现为:
- 防止未经授权的DHCP服务器
- 保护IP地址分配的一致性,防止客户端设备尝试使用不同的MAC地址请求相同的IP地址
- 避免IP地址冲突,可以防止多个设备尝试使用相同的IP地址
- 记录DHCP行为的日志
- 提高网络安全,降低网络攻击风险,比如DHCP欺骗攻击
配置DHCP Snooping
启用DHCP Snooping:
bash
switch(config)# ip dhcp snooping
启用DHCP Snooping在特定VLAN上:
bash
switch(config)# ip dhcp snooping vlan <VLAN-ID>
启用DHCP Snooping在特定接口上:
bash
switch(config)# interface <interface-type> <interface-number>
switch(config-if)# ip dhcp snooping trust
使用 ip dhcp snooping trust 命令来指定信任该接口,允许DHCP服务器流量通过。未配置trust 的接口,被标记为非受信任接口,则接口可能会对DHCP ACK包进行丢弃。
配置DHCP Snooping绑定数据库(可选,用于保存绑定信息):
bash
switch(config)# ip dhcp snooping database <filename> location <directory>
设置DHCP Snooping绑定数据库的定时保存:
bash
switch(config)# ip dhcp snooping database timer <save-interval>
显示DHCP Snooping状态:
bash
switch# show ip dhcp snooping
显示DHCP Snooping绑定信息:
bash
switch# show ip dhcp snooping binding
清除DHCP Snooping绑定信息:
bash
switch# clear ip dhcp snooping binding <interface>
DHCP Snooping高阶配置
ip dhcp snooping verify mac-address
bash
ip dhcp snooping verify mac-address
启用该指令后,DHCP Snooping会验证客户端请求中的MAC地址,确保它与实际数据包中的MAC地址匹配。这有助于防止恶意客户端尝试使用伪造的MAC地址进行DHCP请求。
如果要禁用该验证:
bash
switch(config)# no ip dhcp snooping verify mac-address
禁用了此验证,交换机将不再验证DHCP请求中的MAC地址。
ip dhcp snooping information option
Option 82允许交换机在DHCP请求和响应中插入额外的上下文信息。这些信息通常包括接口标识、VLAN标识和设备标识。这有助于识别DHCP请求的来源,特别是在大型网络中,可以提供更多有关客户端的信息。
当我们的DHCP环境中,没有启用option 82选项功能时,可以禁用这个功能。
bash
no ip dhcp snooping information option
ip dhcp snooping verify no-relay-agent-address
这个选项指定在DHCP请求中是否应包含"Relay Agent"地址。通过启用或禁用此验证,您可以控制是否要求DHCP请求中包含"Relay Agent"地址。
在DHCP协议中,"Relay Agent"是用于将DHCP请求和响应从一个子网中继到另一个子网的设备。"Relay Agent"在转发DHCP消息时可以选择是否包括其自己的地址信息。默认情况下,DHCP Snooping会验证请求中是否包含"Relay Agent"地址。
如果要禁用agent验证,
bash
no ip dhcp snooping verify no-relay-agent-address
ip dhcp snooping glean
用于启用或禁用 DHCP Snooping 中的 glean 功能。Glean 功能在 DHCP Snooping 中的作用是检测并记录在非信任接口上收到的 ARP 请求,然后将这些 ARP 请求的 MAC 地址和 IP 地址绑定关系添加到 DHCP Snooping 数据库中。
Glean 可以帮助减少 IP 地址冲突。它确保每个 IP 地址只与一个特定的 MAC 地址关联。
但是这个功能默认是disabled的。鉴于的它的工作原理,启用它需要特别注意网络环境是否符合,对于经常发生客户端异动的环境,启用它并不利于网络的有效管理。
推荐阅读:
DHCP服务器域环境部署关键总结
为什么不建议在AD域控制器上安装 DHCP 服务器角色?
DHCP 客户端移动位置后无法获取IP地址的解决办法和原因分析
Windows DHCP Server不能主动有效释放租约过期IP解决办法
Ubuntu安装DHCP 服务和排错教程