在終端規模較大的網絡中手工配置IP地址時,為避免IP地址重複,需要事先規劃每個終端的IP地址,導緻工作量大且容易出錯!
當終端位置經常變更時(例如企業出差人員的便攜電腦),每次變更都需要重新手工配置IP地址;某些特殊的無盤工作站,無法手工配置IP地址,該如何與網絡實現互通?
關注我,為你開拓更多知識點! 留言私信“衆元”在線答疑哦!
動态主機配置協議DHCP(Dynamic Host Configuration Protocol),上面的問題都可以解決了。再也不用擔心手工配錯,費神費力了。
DHCP能夠實現動态為主機分配IP地址,而且是目前應用很廣泛的一種技術。例如,辦公室,網吧裡的固定PC;咖啡廳,機場等提供WIFI接入的地方用手機上網,這些都會用到DHCP。
資源不存在
一、什麼是DHCP?DHCP,動态主機配置協議,前身是BOOTP協議,是一個局域網的網絡協議,使用UDP協議工作,常用的2個端口:
67(DHCP server),68(DHCP client)。
DHCP通常被用于局域網環境,主要作用是集中的管理、分配IP地址,使client動态的獲得IP地址、Gateway地址、DNS服務器地址等信息,并能夠提升地址的使用率。簡單來說,DHCP就是一個不需要賬号密碼登錄的、自動給内網機器分配IP地址等信息的協議。
關注我,為你開拓更多知識點! 留言私信“衆元”在線答疑哦!
二、DHCP協議中的報文:DHCP報文共有一下幾種:
關注我,為你開拓更多知識點! 留言私信“衆元”在線答疑哦!
DHCP的工作流程:
關注我,為你開拓更多知識點! 留言私信“衆元”在線答疑哦!
三、DHCP協議包的組成:DHCP客戶端一般來說是局域網中獨立的PC主機。
DHCP客戶端發出的DHCP DISCOVER包是DHCP協議的開始。
延續租期、發現、釋放IP地址等大多數DHCP中的行為都是由DHCP客戶端主動發起。
關注我,為你開拓更多知識點! 留言私信“衆元”在線答疑哦!
五、DHCP 自動狀态機:DHCP獲得ip地址的4步驟:discover>offer>request>ack(nak)
DHCP刷新租期的步驟:request>ack(nak)
DHCP釋放ip的步驟:release
wnr2000v5 1.0.0.8的代碼中沒有發現rebooting、initreboot狀态。所以DHCP client的狀态一般從init開始,完整的狀态機如下圖:
關注我,為你開拓更多知識點! 留言私信“衆元”在線答疑哦!
六、DHCP工作過程詳解:1、DHCP客戶機初始化:
1.尋找DHCP Server
當DHCP客戶機第一次登錄網絡的時候(也就是客戶機上沒有任何IP地址數據時),它會通過UDP 67端口向網絡上發出一個DHCPDISCOVER數據包(包中包含客戶機的MAC地址和計算機名等信息)。因為客戶機還不知道自己屬于哪一個網絡,所以封包的源地址為0.0.0.0,目标地址為255.255.255.255,然後再附上DHCP discover的信息,向網絡進行廣播。
DHCP discover的等待時間預設為1秒,也就是當客戶機将第一個DHCP discover封包送出去之後,在1秒之内沒有得到回應的話,就會進行第二次DHCP discover廣播。若一直沒有得到回應,客戶機會将這一廣播包重新發送四次(以2,4,8,16秒為間隔,加上1-1000毫秒之間随機長度的時間)。如果都沒有得到DHCP Server的回應,客戶機會從169.254.0.0/16這個自動保留的私有IP地址中選用一個IP地址。并且每隔5分鐘重新廣播一次,如果收到某個服務器的響應,則繼續IP租用過程。
2. 提供IP地址租用
當DHCP Server監聽到客戶機發出的DHCP discover廣播後,它會從那些還沒有租出去的地址中,選擇最前面的空置IP,連同其它TCP/IP設定,通過UDP 68端口響應給客戶機一個DHCP OFFER數據包(包中包含IP地址、子網掩碼、地址租期等信息)。此時還是使用廣播進行通訊,源IP地址為DHCP Server的IP地址,目标地址為255.255.255.255。同時,DHCP Server為此客戶保留它提供的IP地址,從而不會為其他DHCP客戶分配此IP地址。
由于客戶機在開始的時候還沒有IP地址,所以在其DHCP discover封包内會帶有其MAC地址信息,并且有一個XID編号來辨别該封包,DHCP Server響應的DHCP OFFER封包則會根據這些資料傳遞給要求租約的客戶。
3. 接受IP租約
如果客戶機收到網絡上多台DHCP服務器的響應,隻會挑選其中一個DHCP OFFER(一般是最先到達的那個),并且會向網絡發送一個DHCP REQUEST廣播數據包(包中包含客戶端的MAC地址、接受的租約中的IP地址、提供此租約的DHCP服務器地址等),告訴所有DHCP Server它将接受哪一台服務器提供的IP地址,所有其他的DHCP服務器撤銷它們的提供以便将IP地址提供給下一次IP租用請求。此時,由于還沒有得到DHCP Server的最後确認,客戶端仍然使用0.0.0.0為源IP地址,255.255.255.255為目标地址進行廣播。
事實上,并不是所有DHCP客戶機都會無條件接受DHCP Server的OFFER,特别是如果這些主機上安裝有其它TCP/IP相關的客戶機軟件。客戶機也可以用DHCP REQUEST向服務器提出DHCP選擇,這些選擇會以不同的号碼填寫在DHCP Option Field裡面。客戶機可以保留自己的一些TCP/IP設定。
4.租約确認
當DHCP Server接收到客戶機的DHCP REQUEST之後,會廣播返回給客戶機一個DHCP ACK消息包,表明已經接受客戶機的選擇,并将這一IP地址的合法租用以及其他的配置信息都放入該廣播包發給客戶機。
客戶機在接收到DHCP ACK廣播後,會向網絡發送三個針對此IP地址的ARP解析請求以執行沖突檢測,查詢網絡上有沒有其它機器使用該IP地址;如果發現該IP地址已經被使用,客戶機會發出一個DHCP DECLINE數據包給DHCP Server,拒絕此IP地址租約,并重新發送DHCP discover信息。此時,在DHCP服務器管理控制台中,會顯示此IP地址為BAD_ADDRESS。
如果網絡上沒有其它主機使用此IP地址,則客戶機的TCP/IP使用租約中提供的IP地址完成初始化,從而可以和其他網絡中的主機進行通訊。
2、DHCP客戶機租期續約:
客戶機會在租期過去50%的時候,直接向為其提供IP地址的DHCP Server發送DHCP REQUEST消息包。如果客戶機接收到該服務器回應的DHCP ACK消息包,客戶機就根據包中所提供的新的租期以及其它已經更新的TCP/IP參數,更新自己的配置,IP租用更新完成。如果沒有收到該服務器的回複,則客戶機繼續使用現有的IP地址,因為當前租期還有50%。
如果在租期過去50%的時候沒有更新,則客戶機将在租期過去87.5%的時候再次向為其提供IP地址的DHCP聯系。如果還不成功,到租約的100%時候,客戶機必須放棄這個IP地址,重新申請。如果此時無DHCP可用,客戶機會使用169.254.0.0/16中随機的一個地址,并且每隔5分鐘再進行嘗試。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!