【计算机网络】扮演“房产中介”的DHCP

本文为个人学习笔记,参考极客时间。


动态主机配置协议(DHCP)

目的:解决客户端繁琐的网络配置

在日常生活中,我们客户端的IP是经常随着我们位置的变化而变化的,比如使用家中的 WIFI 的 IP 与在学校中使用 WIFI 的 IP 肯定是不一样的。如果我们每次更换位置都要重新修改配置文件就很麻烦。对此,我们需要有一个自动配置的协议,也就是动态主机配置(DHCP)

有了这个协议,网络管理员就轻松很多了。他只需要配置一段共享的 IP 地址。每一台新接入的机器都会通过 DHCP 协议,来这个共享的 IP 地址里申请,然后自动配置好就可以使用网络了。等人走了,就把之前申请到的 IP 地址还回去,其他的机器还能用。

如果是数据中心里面的服务器,IP 一旦配置好,基本不会改变,这就相当于买房自己装修。DHCP 的方式相当于租房子,你无需装修(配置它),DHCP已经帮你配置好了。你暂时用一下,用完还回来就可以了。

具体工作方式分析

  •  DHCP Discover

当一台新机器加入一个网络的时候,肯定一脸懵逼,啥都不知道。这时候,他只能大吼一句:“我来啦,有人吗?”

新来的机器使用 IP 为 0.0.0.0 发送一个DHCPDISCOVER广播包,目的 IP 地址为 255.255.255.255。广播包中封装了UDP,UDP封装了BOOTP。

在这个广播包里面,新人大喊:“我是新来的(Boot request),我的 MAC 地址是这个,我还没有 IP,谁能租一个 IP给我?”

  • DHCP Offer

如果网络管理员在网络里面配置了 DHCP Server 的话,DHCP Server 就相当于这些 IP 的管理员。他立刻能知道来了一台新机器,这时候,MAC 地址的唯一性就起作用了,当一台机器带着他的 MAC 地址加入网络时,MAC 就是他的唯一身份,如果重复了,DHCP Server 也就认为并没有新机器加入。只有 MAC 地址唯一,DHCP Server 才知道这是一个新人,需要租给他一个 IP 地址。

DHCP Server 大吼回去:“我分配了这个 IP 租给你,你看咋样?”同时一并将分配的 IP、网关、子网掩码和 IP 租用期等信息一起发送回去。

注意:这里“新人”还并没有得到分配的 IP,因此DHCP Server 也只能通过广播发送出去。

  • DHCP Request

新来的机器很开心,因为他一“吼”得到了回复,并且有人愿意租给他一个 IP 地址,这意味着他能在网络上立足了。当然,网络中可能有多个 DHCP Server ,它有可能同时收到多个 IP 地址。它会选择其中一个 DHCP Offer,一般会选择最先到达的那个,并且向网络发送一个 DHCP Request 广播数据包。数据包中包含了自己的 MAC 地址、接受的租约中的 IP 地址、提供此租约的 DHCP 服务器地址等,并请求其他的 DHCP Server 撤销他们分配的 IP 地址,以便给下一个新人。

注意:这里新来的机器还未收到 DHCP Server 的最后确认,因此还是以 0.0.0.0 为源 IP 地址,255.255.255.255 为目的 IP 地址进行广播。

  • DHCP ACK

当 DHCP Server 收到客户机的 DHCP Request 后,会广播返回客户机一个 DHCP ACK 消息包,表明已经接受客户机的请求,并将 IP 地址的合法租用信息和其他配置信息放到广播包中,发给客户机。

IP 地址的收回和续租

既然是租房子,那么肯定是由租期的,租期到了,管理员就要将房子收回了。

因此,客户机会在租期过去 50% 的时候,直接向为其提供地址的 DHCP Server 发送 DHCP Request 消息包。在客户机接收到  DHCP Server DHCP ACK 消息包后,会根据上面的租期信息更新自己的配置,从而完成续租。

发布了104 篇原创文章 · 获赞 27 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_41960890/article/details/104951766