DHCP
概述
动态主机配置协议DHPC服务器可以是服务器
- 一个协议软件在使用前先作正确协议配置,具体配置内容取决于协议
连接到因特网的计算机协议软件需要配置的项目:
IP地址
子网掩码
默认路由器的IP地址
域名服务器的IP地址
DHCP可以高效地分配IP地址
局域网的网络协议
使用UDP来实现
DHCP报文类型
DHCP Discoevr:发现
DHCP Offer:提供
DHCP Request:告知决定
DHCP ACK:租约确认
DHCP NCK:租约不确认
DHCP Release:释放租约
DHCP Decline:收到ACK后,Client告诉服务器不接受
DHCP Inform:客户端向服务器端请求详细信息
DHCP报文结构
OP:报文类型
- 1请求,2应答
HTYPE:硬件地址类型
- 1表示10M以太网地址
HLEN:以太网地址长度
- 10M为6
Hops:是否使用代理服务器进行处理
DHCP过程
Client先广播Discover报文,然后Server返回一个Offer报文
Client选择优先返回的Offer来优先服务
Client广播Request报文,告知到底谁服务了谁,然后Server返回一个ACK报文
时间到了之后可以选择Release或者续租
A和B的信息不对称不同步
局域网的地址B分配完成了而A不知道
广播里面会携带分配的地址信息,告知A进行同步
发现阶段
广播携带的地址是MAC地址
响应阶段
选择阶段
所有的Server进行同步
租约确认阶段
租期续约
在租期中,DHCP Client直接向为其提供IP地址的DHCP Server发送DHCP Request消息,收到回应的DHCP ACK消息后,DHCP Client根据所提供的新的租期以及其它更新的TCP/IP参数更新自己的配置
租期释放
当DHCP Client不再需要使用分配IP地址时,就会主动向DHCP Server发送Realease报文,DHCP Server会释放被绑定的租期
- 到时间后Server会主动询问,没有应答会自动释放
DHCP欺骗及防范
欺骗原理
非授权的DHCP服务器先应答,客户端最后获得的网络参数即是非授权的
- 恶意服务器把自己作为默认网关
在实际应用DHCP的网络中,基本上都会采用DHCP中继,因此本网络的非授权DHCP服务器一般都会先于其余网络的授权DHCP服务器的应答
- 网络传输有延迟
欺骗攻击
首先PC发出请求
然后将DHCP请求发送出去
伪装者收到后,DHCP伪装者给出应答
DHCP Server也会给出应答,但是可能比伪装者慢
这样子A收到的就是伪装者的报文
A发出去的网关就是B,所以A上网的请求就发送给B,B转发给默认网关上网,然后返回信息给B
B再把返回的信息给A
很隐蔽的安全问题
除了服务器不应该启动DHCP进程
DHCP欺骗防范
在交换机上启用DHCP Snooping功能DHCP Snooping技术通过建立和维护DHCP Snooping绑定表过滤不可信任的DHCP信息:比如B的DHCP不能通过认证,交换机拒绝进行转发
在交换机的全局配置模式启用DHCP Snooping:
switch (config) # ip dncp snooping
在交换机的全局配置模式中开启需要启用DHCP Snooping的VLAN:
switch (config) # ip dhcp snooping vlan vlan号
在端口配置子模式中将授权DHCP服务器所连的端口设为新人端口(缺省都是非信任的端口):就是连接到DHCP Server的端口:
switch (config-if) # ip dhcp snooping trust