这里写目录标题
DHCP Snooping(DHCP监听)简介
DHCP Snooping是DHCP(Dynamic Host Configuration Protocol)的一种安全特性,用于保证DHCP客户端从合法的DHCP服务器获取IP地址,并记录DHCP客户端IP地址与MAC地址等参数的对应关系,防止网络上针对DHCP攻击。
目前DHCP协议(RFC2131)在应用的过程中遇到很多安全方面的问题,网络中存在一些针对DHCP的攻击,如DHCP Server仿冒者攻击、DHCP Server的拒绝服务攻击、仿冒DHCP报文攻击等。
为了保证网络通信业务的安全性,可引入DHCP Snooping技术,在DHCP Client和DHCP Server之间建立一道防火墙,以抵御网络中针对DHCP的各种攻击。
好处
- 设备具有防御网络上DHCP攻击的能力,增强了设备的可靠性,保障通信网络的正常运行。通过这种特性,交换机能够拦截第二层VLAN域内的所有DHCP报文。
- 为用户提供更安全的网络环境,更稳定的网络服务。
DHCP Snooping原理描述
DHCP监听将交换机端口划分为两类:
- 信任端口:正常接收DHCP服务器响应的DHCP ACK、DHCP NAK和DHCP Offer报文。连接合法DHCP服务器的端口或者连接汇聚交换机的上行端口。
- 非信任端口:只能够发送DHCP请求,丢弃来自非信任端口的所有其它DHCP报文。通常为连接终端设备的端口,如PC,网络打印机等。
信任端口功能
通过开启DHCP Snooping特性,交换机限制非信任端口(用户端口)只能够发送DHCP请求,丢弃来自用户端口的所有其它DHCP报文,例如DHCP Offer报文等。而且并非所有来自非信任端口的DHCP请求都被允许通过,交换机还会比较DHCP 请求报文的(报文头里的)源MAC地址和(报文内容里的)DHCP客户机的硬件地址(即CHADDR字段),只有这两者相同的请求报文才会被转发,否则将被丢弃。这样就防止了DHCP拒绝服务攻击。
信任端口可以接收所有的DHCP报文。通过只将交换机连接到合法DHCP服务器的端口设置为信任端口,其他端口设置为非信任端口,就可以防止用户伪造DHCP服务器来攻击网络。DHCP监听特性还可以对端口的DHCP报文进行限速。通过在每个非信任端口下进行限速,将可以阻止合法DHCP请求报文的广播攻击。
DHCP监听表
DHCP监听还有一个非常重要的作用就是建立一张DHCP监听绑定表(DHCP Snooping Binding)。一旦一个连接在非信任端口的客户端获得一个合法的DHCP Offer,交换机就会自动在DHCP监听绑定表里添加一个绑定条目,内容包括了该非信任端口的客户端IP地址、MAC地址、端口号、VLAN编号、租期等信息。
-
为了保证设