博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DHCP协议认识
阅读量:6984 次
发布时间:2019-06-27

本文共 1044 字,大约阅读时间需要 3 分钟。

DHCP(Danamic Host Configuration Protocol):动态主机配置协议;

这个DHCP请求过程分四段完成(正常情况下):

1)DHCP Discover

当客户端网卡启动后,默认情况下(配置在自动获取IP地址模式)会广播一个带有DHCP Discover信息的数据包(属于UDP数据包,包含自己的MAC地址,计算机名等信息),以寻找可用DHCP服务器,这个过程类似早期版本 的Bootstrap Protocol,即通过本机的68号端口发送广播数据到内网其他设备的67号端口,如果无法收到回复(DHCP Discover预设等待回复时间是1秒,会重复四次广播)客户机会使用APIPA协议,给自己分配一个私有地址(169.254.X.X)。

2)DHCP Offer

当DHCP服务器的本地67号端口收到带有DHCP Discover信息的数据包时会再通过67号端口回复一个DHCP Offer广播包,其中包含一些带分配的DHCP信息(包括待分配给客户机的IP地址,掩码,网关地址,域名,DHCP服务器地址等。

3)DHCP Request

当客户端68号端口收到带有DHCP Offer信息的数据包时(如果有多台DHCP服务器回复DHCP Offer信息数据包,默认以最先收到的为准)会广播回复一个DHCP Request请求数据包,以请求获得此IP租用相关信息(同时通知其他DHCP服务器,客户机已接受某台DHCP服务的Offer信息)。

4)DHCP ACK

当DHCP服务器67号端口收到带有DHCP Request信息数据包时就会广播回复一个带有完整DHCP信息的数据包给客户机并开始IP租用计时,当客户机收到此DHCP ACK数据包时会将相关信息跟网卡绑定(此过程客户机会先查询这个待分配的IP地址是否可用,通过ARP协议广播查看是否被其他电脑占用,如果不可用就广播回复DHCP Decline以拒绝此DHCP Offer数据包)。

以上四个阶段都是使用的广播发送数据包,因为到最后一步客户机才有自己的IP地址,全程都是通过XID(DHCP报文中的Transaction ID,事务ID)来辨别是否为同一个会话。如果DHCP服务器不在同一个子网则需要网关路由器在中间转发DHCP广播包(这个过程路由器用的都是67号端口)。

这里有更详细的分析说明:

转载于:https://www.cnblogs.com/Mst5u/p/10717105.html

你可能感兴趣的文章
【iPhone5概念机最新效果图曝光】
查看>>
深入浅出:5G和HTTP
查看>>
ES6-let和const命令
查看>>
java反射,代码优化
查看>>
python中获取当前所有的logger
查看>>
关于BDD100k数据输入处理mask变为56*56
查看>>
Reveal使用心法
查看>>
Directx11教程(18) D3D11管线(7)
查看>>
JVM系列二:GC策略&内存申请、对象衰老
查看>>
正则的[]与()
查看>>
OCP换题库了,052新加的考题及答案整理-第16题
查看>>
OCP新题,2019题库出现大量新题,062-第22题
查看>>
MySQL查询in操作 查询结果按in集合顺序显示(转)
查看>>
JavaScript中map函数和filter的简单举例
查看>>
RocketMq消息队列使用
查看>>
Dynamics CRM 提示“操作无效”
查看>>
09.15,一维数组,冒泡排序
查看>>
apache rewrite 规则转换 nginx rewrite 的网站
查看>>
Android--WebView
查看>>
python三大神器===》装饰器
查看>>