DHCP原理

                                       DHCP原理介紹

1.動態主機配置協議(Dynamic Host Configuration Protocol, DHCP)是一個局域網網絡協議,使用UDP協議工作,主要有兩個用途:給內部網絡或網絡服務供應商自動分配IP地址,給用戶或者內部網絡管理員作爲對所有計算機作中央管理的手段。

2.dhcp分爲三種:

   Manual Allocation:人工分配,獲得的IP也叫靜態地址

Automatic Allocation:自動分配,其情形是:一旦 DHCP客戶端第一次成功的從 DHCP服務器端        租用到 IP 地址之後,就永遠使用這個地址。

Dynamic Allocation:動態分配,當 DHCP客戶端第一次從 DHCP服務器端租用到 IP 地址之後,        並非永久的使用該地址,只要租約到期,客戶端就得釋放(release)這個 IP 地址,以給其它工作站使用


3.DHCP的工作流程分爲四步:

一、客戶機請求 IP(DHCPdiscover)
二、服務器響應(DHCPoffer)
三、客戶機選擇 IP(DHCPrequest)
四、服務器確認 IP租約(DHCPack/DHCPnak)

下面我們就來分別講一下:

一、客戶機請求 IP(DHCPdiscover)
當客戶機設置使用 DHCP協議獲取 IP時,客戶機將使用 0.0.0.0作爲源地址,使用255.255.255.255作爲目標地址來廣播請求 IP地址的信息。廣播信息中包含 DHCP客戶機的MAC地址和計算機名。(這裏的 MAC地址可不是 FFFF.FFFF.FFFF的 MAC 廣播哦~)

二、服務器響應(DHCPoffer)
由於是廣播所以同一網段內的計算機都會“聽”到!DHCP服務器當然也不例外。DHCP服務器“聽”到後,它首先會針對該次請求的信息所攜帶的 MAC地址與 DHCP主機本身的設置值進行對比。如果 DHCP主機的設置中有針對該 MAC 提供的靜態 IP(每次都給一個固定 IP),則提供給客戶機相關的固定 IP與相關的網絡參數;如果該信息的 MAC並不在 DHCP主機的設置中,則 DHCP主機會選取當前網段內沒有使用的IP給客戶機使用!當然這裏的響應,服務器也是採用 255.255.255.255的廣播,因爲此時客戶機還沒 IP哦~
這裏有幾個要注意的地方:
1、如果同一網段內有多臺 DHCP服務器,那麼客戶機是看誰先響應,誰先響應就選擇誰。
2、在 DHCP主機發給客戶端的信息中,會附帶一個“租約期限”信息,用來告訴客戶機這個 IP能用多久!

三、客戶機選擇 IP(DHCPrequest)
當客戶機接收到響應的信息之後,首先會以 ARP在網段內廣播(ARP使用全 1的廣播 MAC地址),以確定來自 DHCP服務器的 IP沒被佔用!如果該 IP被佔用,那麼客戶機對於這次的 DHCP信息將不接受,而是再次發送 DHCP請求。若該 IP沒有被佔用,客戶機則接受 DHCP服務器所給的網絡參數。同時,客戶機發出一個廣播,通知所挑選的 DHCP服務器(有多臺 DHCP服務器存在時),當然此時也是通知其它的 DHCP服務器,讓這些 DHCP服務器將本預分配給客戶機的 IP釋放掉!(這裏的概念一定要弄清楚!)注意,這一步客戶機並還沒有應用從 DHCP服務器獲取到 IP哦!所以這一步源地址還是0.0.0.0,目標地址是 255.255.255.255。

四、服務器確認 IP租約(DHCPack/DHCPnak)
終於到最後一步了,DHCP服務器收到客戶機選擇 IP的廣播後,則以 DHCPack消息的形式向客戶機廣播成功的確認。
DHCPack包含:IP、掩碼、網關、DNS等。當然上面還有一個 DHCPnak,一看就知道是不成功的意思!那麼,哪些情況纔會有這種廣播呢?

例如,IP地址已無效或這個地址已被其它的客戶機使用了!

此時,當客戶機收到 DHCP服務器的 DHCPack消息後,客戶機便使用了 DHCP服務器所給的網絡參數!這裏的四個步驟可都是用的廣播哦,不知道大家有沒有注意!呵呵~到此,我們的 DHCP原理就講完了,下面我還給補充了點東東,希望對大家有用:

1、當我們的客戶機無法找到 DHCP服務器時,它將從 TCP/IP的 B類網段 169.254.0.0中挑選一個 IP地址作爲自己的 IP地址,而繼續每隔 5分鐘嘗試與 DHCP服務器進行通信。(這裏的這個 B類地址被稱爲 APIPA,即自動分配私有 IP地址!)

2、IP租約的更新,當客戶機重新啓動或租期達 50%時,客戶機不會從第一步(DHCPdiscover)開始重新申請 IP,而是從第三步(DHCPrequest)開始哦~只有當租期達 87.5%時,它才從第一步(DHCPdiscover)開始重新申請!

3、客戶機這裏還有兩條命令,希望大家給記住:

ipconfig/release : 是用來 IP租約的釋放。使用 DHCPrelease消息!

ipconfig/renew : 是用來 IP租約的更新。使用 DHCPdiscover消息!

4、客戶機必須要經過四步的情況:

(1)第一次扮演 DHCP客戶機角色。

(2)IP被 DHCP服務器收回。

(3)客戶機自己釋放了 IP,並重租一個 IP時。

(4)客戶機更換網卡了。

(5)客戶機轉移到另一網段時。

4.dhcp client 地址更新過程:

   DHCP服務器分配給客戶端的動態IP地址通常有一定的租借期限,期滿後服務器會收回該IP地址。        如果DHCP客戶端希望繼續使用該地址,需要更新IP租約。

   1:租約沒有到期,如果客戶端重啓,則會向DHCP服務器發送DHCPREQUEST,請求使用原來的ip地址。

   2:在IP地址租約期限達到50%時,DHCP客戶端會自動向DHCP服務器發送DHCPREQUEST包,以完成IP租約的更新。如果此IP地址有效,則DHCP服務器迴應DHCPACK包,確認租約更新。

   3:如果在步驟2中DHCP服務器無響應,則在租約期限達到87.5%時,DHCP客戶端會向DHCP服務器發送DHCPREQUEST包,再次請求租約的更新,如果此IP地址有效,則DHCP服務器迴應DHCPACK,確認租約更新

   4:如果在步驟3中DHCP服務器無響應,客戶端會發送廣播包DHCPDISCOVER,重新向網絡中的DHCP服務器發出ip地址請求;或者等到租約達到100%時,終止租約。

五:dhcp中繼:

在大型的網絡中,可能會存在多個子網。DHCP客戶機通過網絡廣播消息獲得DHCP服務器的響應後得到IP地址。但廣播消息是不能跨越子網的。因此,如果DHCP客戶機和服務器在不同的子網內,客戶機還能不能向服務器申請IP地址呢?這就要用到DHCP中繼代理。DHCP中繼代理實際上是一種軟件技術,安裝了DHCP中繼代理的計算機稱爲DHCP中繼代理服務器,它承擔不同子網間的DHCP客戶機和服務器的通信任務。

完。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章