2024-04-08
DHCP(Dynamic Host Configuration Protocol,動態主機配置協議)通常被應用在大型的局域網絡環境中,主要作用是集中地管理、分配IP地址,使網絡環境中的主機動態的獲得IP地址、Gateway地址、DNS服務器地址等信息,並能夠提升地址的使用率,使用DHCP服務功能可以大大減少手動配置IP的工作。它會(hui) 將地址池中的空餘(yu) 地址逐一分配,這就避免我們(men) 手動配置IP地址時,卻不知道哪些地址是空閑可用,哪些是正在使用以及哪些過期不用的迷之尷尬。
它采用了客戶端/服務器模型,主機地址的動態分配任務由網絡主機驅動。當DHCP服務器接收到來自網絡主機的申請地址信息時,就會(hui) 向目的網絡主機發送相關(guan) 的地址配置信息(主機地址、掩碼、網關(guan) 、以及DNS),從(cong) 而實現網絡主機信息的動態配置,實現統一上網,統一布局。
一、DHCP具有的功能:
1.保證同一網絡內(nei) 任何IP地址在同一時刻隻能由一台DHCP客戶機所使用。
2.DHCP可以給用戶隨機空閑可以用的IP地址,或者與(yu) MAC地址進行綁定,從(cong) 而獲得永久且固定的IP地址。
3.DHCP應當可以同用其他方法獲得IP地址的主機共存(如手工配置IP地址的主機)。
4.DHCP服務器應當向現有的BOOTP客戶端提供服務。
二、DHCP對IP地址的分配機製:
1.自動分配方式(Automatic Allocation):DHCP服務器為(wei) 主機指定一個(ge) 永久性的IP地址,一旦DHCP客戶端第一次成功從(cong) DHCP服務器端租用到IP地址後,就可以永久性的使用該地址。
2.動態分配方式(Dynamic Allocation):DHCP服務器給主機指定一個(ge) 具有時間限製的IP地址,時間到期或主機明確表示放棄該地址時,該地址可以被其他主機使用。
3.手工分配方式(Manual Allocation):客戶端的IP地址是由網絡管理員指定的,DHCP服務器隻是將指定的IP地址告訴客戶端主機。
三種地址分配方式中,隻有動態分配可以重複使用客戶端不再需要的地址。
三、DHCP的工作流程:
1.發現階段:就是DHCP Client 尋找 DHCP Server 的階段,客戶端廣播一個(ge) DHCP Discover 消息,消息內(nei) 包含著自身的MAC地址,以及想要請求的參數列表項、廣播標誌位等信息;而二層廣播域中運行了DHCP Server服務的設備或者服務器,接收到該客戶端發送的消息,會(hui) 對DHCP Discover消息進行回複。
2.提供階段:DHCP Server向DHCP Client提供IP地址,每一個(ge) 接收到DHCP Discover消息的DHCP Server都會(hui) 從(cong) 自己維護的地址池中選擇一個(ge) 合適的IP地址(DHCP服務ip地址分配順序:MAC地址綁定的IP 地址>已使用的IP地址>空閑狀態的IP地址>超過租期的IP地址>產(chan) 生衝(chong) 突的IP地址),並通過DHCP Offer消息將這個(ge) 地址發送給對端DHCP Client。
3.選擇階段:在網絡中,客戶自動獲取地址,往往是“就近原則”,最快收到的哪台服務器的回複,哪台服務器將成為(wei) 我們(men) 客戶端的服務器;實現客戶端對服務器一對一。假設DHCP Client會(hui) 在收到的若幹個(ge) Offer消息,那麽(me) 會(hui) 根據 “就近原則”來選擇接受哪一個(ge) Offer。通常情況下,會(hui) 接受最先收到的那一個(ge) Offer。假設客戶端最先收到的消息來自於(yu) 路由器R,客戶端則會(hui) 廣播一個(ge) DHCP Request消息,目的是為(wei) 了向路由器R(DHCP Server)發送請求,請求獲取到發送給自己的DHCP Offer中的IP地址,同時這個(ge) 消息中帶有 “R”的標識,表示PC隻願意接受路由器R下發的 IP地址。路由器R收到之後後,知道PC願意接受自己的Offer,而其他DHCP Server收到這個(ge) 帶有R標記的消息後,就好比客戶端有了自己的歸屬,其他人就應該學會(hui) 放手。其實很簡單,當客戶端有服務器給分配地址了,如果其他服務器還依舊給客戶端分地址,很大程度很造成客戶端頻繁更換地址,地址出問題了,客戶端不知道找誰好。因此,在網絡中,默認是選擇服務器之後,便隻從(cong) 這個(ge) 服務器獲取服務。不會(hui) 同時對多個(ge) 相同服務的服務器獲取服務。
4.確認階段:即DHCP服務器確認所分配IP地址的階段;路由器R會(hui) 向DHCP Client發送一個(ge) DHCP Ack消息。而收到該類型消息的客戶端,則會(hui) 廣播一個(ge) 免費的APR報文,探測本網段是否有其他終端使用服務器分配的IP地址,如果此時探測到本網段中有IP地址衝(chong) 突,則會(hui) 向DHCP服務器發送DHCP Decline報文。同時為(wei) 了保證同一網絡中,IP地址的唯一性,過程中DHCP server有可能因為(wei) 其他原因(如DHCP客戶端移到另一個(ge) 網絡,DHCP server未查到該客戶端的租約信息)而發送一個(ge) DHCP Nak消息。如果 PC接受到了Nak消息,則表示嚐試獲取IP地址失敗,重新回到發現階段開始新一輪申請。
文字的表述中,4個(ge) 流程看起來也是真的很大的工作量,但是在我們(men) 上網的時候,DHCP的使用卻在一瞬間的時間中完成了對於(yu) IP地址的配置。
400-1144-149