DHCP概述
DHCP產生的原因
大型網絡中靜態配置IP地址容易出現地址衝突
定義
DHCP:動態主機配置協議
,用於主機自動獲得IP地址、子網掩碼、網關地址、DNS服務器地址,租用期等相關信息。採用C/S
模式。DHCP給運行服務器軟件、且位置固定的計算機指派一個永久地址,給運行客戶端軟件的計算機分配一個臨時地址。
DHCP的設計思考
問題1:
- DHCP協議如何找到服務器?
答:通過廣播,廣播的目標地址是255.255.255.255(對自己所在的本局域網發廣播)
【在不知道目標在哪的時候可以採用廣播的方式進行通信】
問題2:
- 多個客戶端同時請求IP,服務器該如何分辨?
答:通過MAC地址
問題3:
- 服務器是否能夠給某個客戶分配固定的IP地址?
答:可以並且有些情況下是有必要的
【如何實現:通過MAC地址,固定MAC地址給固定的IP地址】
問題4:
- DHCP服務器如何保證分配的IP地址是唯一的?
答:在服務器分配某一個IP地址的時候,發廣播去問局域網上所有的主機有沒有人的IP地址是將要分配的這個IP地址,如果沒有收到回覆,那麼可以分配。
問題5:
- DHCP協議如果要實現某個客戶端的IP動態變化,該如何處理?
答:使用租用期
問題6
- DHCP協議的報文應當包含幾種?
答:DHCPDISCOVER、DHCPOFFER、DHCPREQUEST、DHCPACK、DHCPREQUEST
DHCP基於UDP工作,DHCP服務器運行在67號端口,DHCP客戶運行在68號端口。
【爲什麼使用UDP而不是TCP?】因爲DHCP要使用廣播,1對多的傳輸模式只能用UDP
- 若DHCP服務器不響應步驟6的請求報文DHCPREQUEST,則在租用期過了87.5%時,DHCP客戶必須重新發送請求報文DHCPREQUEST(重複步驟6),然後又繼續後面的步驟。
- DHCP客戶可隨時提前終止服務器所提供的租用期,這時只需向DHCP服務器發送釋放報文DHCPRELEASE即可。
DHCP中繼代理
- 並不是每個網絡上都有DHCP服務器,這樣會使DHCP服務器的數量太多。現在是每一個網絡至少有一個DHCP中繼代理,它配置了DHCP服務器的IP地址信息。
- 當DHCP中繼代理收到主機發送的發現報文後,就以單播方式向DHCP服務器轉發此報文,並等待其回答。收到DHCP服務器回答的提供報文後,DHCP中繼代理再將此提供報文發回給主機。
- 一個網絡如果沒有DHCP服務器,至少需要一個DHCP中繼代理,它配置了DHCP服務器的IP地址信息。
ipconfig命令:
- ipconfig/release:釋放IP地址
- ipconfig/renew:重新使用DHCP獲取IP地址
禁止主機通過DHCP獲取IP:
- 禁用系統服務中的DHCP client服務