DHCP工作过程包括哪四种报文

DHCP工作过程包括哪四种报文,第1张

使用DHCP正常获取地址的过程中使用的是以下4种报文:\x0d\DHCPDiscover\x0d\DHCPOffer\x0d\DHCPRequest\x0d\DHCPAck

DHCP报文是封装在UDP报文中的。

UDP报文封装在IP报文里,IP报文封装在以太网报文里。

典型的DHCP过程是这样的:

1:客户机向服务器发送DHCP_DISCOVER报文,申请IP。

2:服务器向客户机返会DHCP_OFFER报文,指定一个将要分配的IP。

3:客户机向服务器发送DHCP_REQUEST报文,请求这个IP。

4:服务器PING几次(一般是3次)这个IP,如果没得到响应的话,就说明这个IP现在空闲,可以分配给客户机,所以向客户机发送DHCP_ACK报文,确认可以分配。如果得到相应,则发送DHCP_NAK报文,拒绝分配。

5:如果客户端收到DHCP_ACK,责发送一次免费ARP,判断这个IP是否已经被用。没有被用的话则绑定这个服务器分配来的IP,否则向服务器发送DHCP_DECLINE报文,拒绝这次分配。并重新执行第一步。

如果收到的是DHCP_NAK,则直接重新执行第一步。

大概过程是这样的,还有不明白的话再补充一下问题~

-----------------------------------------------------------

DHCP是应用层协议,UDP是传输层协议,IP是网络层协议,以太网是链路层协议。

数据在网络上传输的时候要自顶向下逐层封装的,关于这部份知识你可以参考一下TCP/IP分层模型。

客户机申请IP之前确实没有IP,DHCP_DISCOVER报文都是以广播形式发送的,IP头里的目的地址是255255255255,源地址是0000。

链路层目的地址是FF-FF-FF-FF-FF-FF,源地址是自己的mac地址。

这样服务器收到客户端发来的DISCOVER报文之后,会根据源mac地址向客户机发送单播的DHCP_OFFER报文。

这没什么思路,全靠对DHCP流程的了解

DHCP四个报文,discover,offer,Request,ACK

所以11是offer

对于DHCPoffer报文,可能采用单播,也可能采用广播,具体看flag

DHCP: 0 = no broadcast

这一行说明了采用的是单播

所以12(目的MAC地址)为001234567890

从DHCP: Client hardware address = 001234567890 找到

13(目的IP)为1921680180

从DHCP: Client address =[1921680180] 找到

14后面是68和67两个数字,这是DHCP使用的端口号,那么14肯定就是port

15,服务器的地址,那就是这个报文的源地址19216801

首先电脑开机,它默认是自动获得ip地址,它会向网络发送广播包,覆盖着各个网络,这个网络包的意思是该机器需要一个ip地址,如果在该网络中有dhcp服务器,他会识别并接收该广播包,并在数据包中识别其源,之后该服务器会回应该客户机,并会在其dhcp地址池中选定一个地址给该客户机,如果这时网络中有不止一个dhcp服务器,那么每个服务器的做法和上面的一样;这时

对客户机来说它会选择最先到达它这里的服务器的ip地址(如果没有做绑定的话),其它的就会忽略。

这是客户机获得地址

如果要想更新你要获得的地址可以由命令进行刷新

ipconfig

/release

它的意思是把当前的ip地址“丢掉”

清空;

ipconfig

/renew

它的意思是向dhcp服务器重新获得一个ip地址,具体原理和上面的一样。

能够帮到你!

注意其中的 DHCP Message Type 一项中 type=Request 表示这是一个请求报文。 如在以太网类型的网络中, CLIENT 会发出一个 ARP 请求来确定 DHCP

(1)需要 IP 地址的主机在启动时就向 DHCP 服务器广播发送发现报文(DHCPDISCOVER),这时该主机就成为 DHCP 客户。(2)本地网络上所有主机都能收到此广播报文,但只有 DHCP 服务器才回答此广播报文。(3)DHCP 服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到,则从服务器的 IP 地址池(address pool)中取一个地址分配给该计算机。DHCP 服务器的回答报文叫做提供报文(DHCPOFFER)。

rom /media

2、然后安装DHCP服务器安装包 #rpm -ivh /media/Server/dhcp-305-3el5i386rpm

3、复制dhcp服务器配置示例文件到/etc下并改名为dhcpdconf

#cd /usr/share/doc/dhcp-305/

#cp dhcpdconfsample /etc/dhcpdconf这一步会有一个是否覆盖,写y就行了

4、修改dhcp服务器的配置文件:#vim /etc/dhcpdconf

此步骤我不能插入,就和你说明几点里面要修改的意思:

(1)option routers IP地址

作用:为客户端指定默认网关

(2)option subnet-mask 子网掩码

作用:设置客户端的子网掩码

(3)option domain-name-servers IP地址

作用:为客户端指定DNS服务器地址

5、启动dhcp服务器: #service dhcpd restart

如果可以的话还可以进行这一步:

#iptables -F 清掉防火墙规则

好了,到客户端自动获取IP地址就可以了!!

另外,站长团上有产品团购,便宜有保证

以上就是关于DHCP工作过程包括哪四种报文全部的内容,包括:DHCP工作过程包括哪四种报文、客户机向dhcp服务器请求获得IP地址的详细封包问题、计算机三级网络技术等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10126634.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存