DHCP Snooping原理
:
DHCP Snooping 是一种DHCP 安全特性,通过截获DHCP Client 和DHCP Relay之间的DHCP报文并进行分析处理,可以过滤不信任的DHCP 报文并建立和维护一个DHCP Snooping 绑定表。
绑定表包括MAC地址、IP地址、租约时间、VLAN ID、接口信息。
DHCP Snooping通过对这个绑定表的维护,建立一道在DHCP Client和DHCP Server之间的防火墙。
DHCP Snooping可以解决设备应用DHCP时遇到的DHCP DoS(Denial of Service)攻击、DHCP Server仿冒攻击、DHCP仿冒续租报文攻击等问题。
DHCP SNOOPING记录一个DHCP的绑定表,绑定表记录用户的MAC、IP、VLAN、端口等信息,在用户上线的时候,创建该用户的绑定表,当用户下线时删除此绑定表。
在绑定表生成的过程中或生成后,通过对收到的DHCP报文的检查,将报文中的对应字段与DHCP绑定表进行比较,发现DHCP攻击,然后丢弃该报文,以阻止DHCP攻击。
另外,DHCP SNOOPING区分信任端口和非信任端口,把通向DHCP Server(运营商网络内部)的接口设成“信任(Trusted)”,其它接口(连接运营商网络外部的接口)都设为“不信任(Untrusted)。只有DHCP RELAY设备才添加giaddr标识为RALAY的IP,对非信任端口,不处理DHCP Reply报文即带giaddr为非0的DHCP报文,以防止DHCP Server仿冒攻击。
同时,依赖于DHCP SNOOPING表项,可以防止IP欺骗和ARP欺骗等
DHCP Snooping关键技术
信任 / 非信任端口:一般通向DHCP服务器 (运营商网络内部)的端口设成“信任(Trusted)”,其它端口(连接运营商网络外部的端口)都设为“不信任(Untrusted)” 。
绑定表:建立MAC + IP + VLAN + Port的绑定关系。(动态,静态)
Option82:是DHCP协议报文中选项部分之中的一项,用于记录报文入端口类型,端口号,VLAN信息以及桥MAC地址,是生成绑定表的重要部分。