博客專欄

        EEPW首頁 > 博客 > DHCP的工作流程

        DHCP的工作流程

        發布人:szutek 時間:2022-10-31 來源:工程師 發布文章

        各位親愛的小宇粉絲朋友們!上期我們淺淺的了解了一下“簡單省事專用助手”也就是DHCP。看到很多小伙伴對于這個小助手還是非常感興趣的。那今天咱就接著這個DHCP的工作流程接著講講吧!



        DHCP 的工作流程一共分為4個過程:

        發現階段

        就是DHCP Client 尋找 DHCP Server 的階段,客戶端廣播一個DHCP Discover 消息,消息內包含著自身的MAC地址,以及想要請求的參數列表項、廣播標志位等信息;而二層廣播域中運行了DHCP Server服務的設備或者服務器,接收到該客戶端發送的消息,會對DHCP Discover消息進行回復。


        提供階段

        DHCP Server向DHCP Client提供IP地址,每一個接收到DHCP Discover消息的DHCP Server都會從自己維護的地址池中選擇一個合適的IP地址(DHCP服務ip地址分配順序:MAC地址綁定的IP 地址>已使用的IP地址>空閑狀態的IP地址>超過租期的IP地址>產生沖突的IP地址),并通過DHCP Offer消息將這個地址發送給對端DHCP Client。


        選擇階段

        在網絡中,客戶自動獲取地址,往往是“就近原則”,最快收到的哪臺服務器的回復,哪臺服務器將成為我們客戶端的服務器;實現客戶端對服務器一對一。假設DHCP Client會在收到的若干個Offer消息,那么會根據 “就近原則”來選擇接受哪一個Offer。通常情況下,會接受最先收到的那一個Offer。假設客戶端最先收到的消息來自于路由器R,客戶端則會廣播一個DHCP Request消息,目的是為了向路由器R(DHCP Server)發送請求,請求獲取到發送給自己的DHCP Offer中的IP地址,同時這個消息中帶有 “R”的標識,表示PC只愿意接受路由器R下發的 IP地址。路由器R收到之后后,知道PC愿意接受自己的Offer,而其他DHCP Server收到這個帶有R標記的消息后,就好比客戶端有了自己的歸屬,其他人就應該學會放手。其實很簡單,當客戶端有服務器給分配地址了,如果其他服務器還依舊給客戶端分地址,很大程度很造成客戶端頻繁更換地址,地址出問題了,客戶端不知道找誰好。因此,在網絡中,默認是選擇服務器之后,便只從這個服務器獲取服務。不會同時對多個相同服務的服務器獲取服務。 


        確認階段

        即DHCP服務器確認所分配IP地址的階段;路由器R會向DHCP Client發送一個DHCP Ack消息。而收到該類型消息的客戶端,則會廣播一個免費的APR報文,探測本網段是否有其他終端使用服務器分配的IP地址,如果此時探測到本網段中有IP地址沖突,則會向DHCP服務器發送DHCP Decline報文。同時為了保證同一網絡中,IP地址的唯一性,過程中DHCP server有可能因為其他原因(如DHCP客戶端移到另一個網絡,DHCP server未查到該客戶端的租約信息)而發送一個DHCP Nak消息。如果 PC接受到了Nak消息,則表示嘗試獲取IP地址失敗,重新回到發現階段開始新一輪申請。

         

        文字的表述中,4個流程看起來也是真的很大的工作量,但是在我們上網的時候,DHCP的使用卻在一瞬間的時間中完成了對于IP地址的配置,這波科技力量確實是一個“狠活”。




        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。




        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 镇平县| 崇阳县| 始兴县| 云林县| 同德县| 连云港市| 白朗县| 朝阳市| 布拖县| 泾阳县| 漾濞| 昌平区| 呼玛县| 高平市| 平阴县| 鹿邑县| 灌阳县| 讷河市| 孟村| 盐池县| 永平县| 大竹县| 图们市| 金乡县| 贡山| 罗山县| 额尔古纳市| 峨山| 莱阳市| 南华县| 林西县| 汕尾市| 额尔古纳市| 广南县| 樟树市| 恩平市| 广水市| 荥经县| 稻城县| 天峻县| 聂荣县|