DHCP原理及配置|(一)DHCP 原理
DHCP客户端通过和DHCP服务器的交互通讯以获得IP地址租约 。 为了从DHCP服务器获得一个IP地址 , 在标准情况下DHCP客户端和DHCP服务器之间会进行四次通讯 。 DHCP协议通讯使用端口UDP 67(服务器端)和UDP 68(客户端)进行通讯 , UDP68端口用于客户端请求 , UDP67用于服务器响应 , 并且大部分DHCP协议通讯使用广播进行 。
DHCP客户端和DHCP服务器的这四次通讯过程:
文章插图
1、DHCP DISCOVER
当DHCP客户端处于以下三种情况之一时 , 触发DHCP DISCOVER广播消息:
1)当TCP/IP协议作为DHCP客户端(自动获取IP地址)进行初始化(DHCP客户端启动、启用网络适配器或者连接到网络时);
2)DHCP客户端请求某个IP地址被DHCP服务器拒绝 , 通常发生在已获得租约的DHCP客户端连接到不同的网络中;
3)DHCP客户端释放已有租约并请求新的租约 。
此时 , DHCP客户端发起DHCP DISCOVER广播消息 , 向所有DHCP服务器获取IP地址租约 。 此时由于DHCP客户端没有IP地址 , 因此在数据包中 , 使用0.0.0.0作为源IP地址 , 然后广播地址255.255.255.255作为目的地址 。 在此请求数据包中同样会包含客户端的MAC地址 , 以便DHCP服务器进行区分 。
如果没有DHCP服务器答复DHCP客户端的请求 , DHCP客户端在等待1秒后会再次发送DHCP DISCOVER广播消息 。 除了第一个DHCP DISCOVER广播消息外 , DHCP客户端还会发出三个DHCP DISCOVER广播消息 , 等待时延分别为9秒、13秒和16秒加上一个长度为0~1000毫秒之间的随机时延 。 如果仍然无法联系DHCP服务器 , 则认为自动获取IP地址失败 , 默认情况下将随机使用APIPA(自动专有IP地址 , 169.254.0.0/16)中定义的未被其他客户使用的IP地址 , 子网掩码为255.255.0.0 , 但是不会配置默认网关和其他TCP/IP选项 , 因此只能和同子网的使用APIPA地址的客户端进行通讯 。
2、DHCP OFFER
所有接收到DHCP客户端发送的DHCP DISCOVER广播消息的DHCP服务器会检查自己的配置 , 如果具有有效的DHCP作用域和富余的IP地址 , 则DHCP服务器发起DHCP OFFER广播消息来应答发起DHCP DISCOVER广播的DHCP客户端 , 此消息包含以下内容:
- 客户端MAC地址;
- DHCP服务器提供的客户端IP地址;
- DHCP服务器的IP地址;
- DHCP服务器提供的客户端子网掩码;
- 其他作用域选项 , 例如DNS服务器、网关、WINS服务器等;
- 租约期限等 。
3、DHCP REQUEST
当DHCP客户端接受DHCP服务器的租约时 , 它将发起DHCP REQUEST广播消息 , 告诉所有DHCP服务器自己已经做出选择 , 接受了某个DHCP服务器的租约 。
在此DHCP REQUEST广播消息中包含了DHCP客户端的MAC地址、接受的租约中的IP地址、提供此租约的DHCP服务器地址等 , 所有其他的DHCP服务器将收回它们为此DHCP客户端所保留的IP地址租约 , 以给其他DHCP客户端使用 。
此时由于没有得到DHCP服务器最后确认 , DHCP客户端仍然不能使用租约中提供的IP地址 , 所以在数据包中仍然使用0.0.0.0作为源IP地址 , 广播地址255.255.255.255作为目的地址 。
4、DHCP ACK
提供的租约被接受的DHCP服务器在接收到DHCP客户端发起的DHCP REQUEST广播消息后 , 会发送DHCP ACK广播消息进行最后的确认 , 在这个消息中同样包含了租约期限及其他TCP/IP选项信息 。
如果DHCP客户端的操作系统为Windows版本 , 当DHCP客户端接收到DHCP ACK广播消息后 , 会向网络发出三个针对此IP地址的ARP解析请求以执行冲突检测 , 确认网络上没有其他主机使用DHCP服务器提供的IP地址 , 从而避免IP地址冲突 。 如果发现该IP已经被其他主机所使用(有其他主机应答此ARP解析请求) , 则DHCP客户端则会广播发送(因为它仍然没有有效的IP地址)DHCP DECLINE消息给DHCP服务器拒绝此IP地址租约 , 然后重新发起DHCP DISCOVER进程 。 此时 , 在DHCP服务器管理控制台中 , 会显示此IP地址为BAD_ADDRESS 。
如果没有其他主机使用此IP地址 , 则DHCP客户端的TCP/IP使用租约中提供的IP地址完成初始化 , 从而可以和其他网络中的主机进行通讯 。 至于其他TCP/IP选项 , 如DNS服务器和WINS服务器等 , 本地手动配置将覆盖从DHCP服务器获得的值 。
- 桌面|日常使用的软件及网站分享 篇一:几个动态壁纸软件和静态壁纸网站:助你美化你的桌面
- 电信|巴西电信协会及运营商发文 反对限制华为5G
- 控制|正弦电气科创板IPO过会,需说明与前员工设立或控制的经销商交易的原因及合理性
- 网购|黑色星期五及网购星期一大数据出炉 全球第三方卖家销售额超48亿美元
- 用户|密室逃脱行业发展及用户分析报告:哪些人在沉迷密室逃脱?
- 黑五|2020亚马逊黑五及网购星期一全球第三方卖家销售额超48亿美元
- 手机|手机发热怎么办?手机发烫的解决办法及原因
- 爱奇艺|连续亏损十年,爱奇艺收入不及快手,视频网站的出口在哪里?
- 欺诈和滥用|美国最高法院审理黑客法及其限制的案件
- 微信绑定了银行卡,这两种照片要及时删除,避免造成不必要的损失