001.DHCP簡介

來源:互聯網
上載者:User

標籤:ack   管理   0.0.0.0   資料   nbsp   tab   沒有   網關   div   

一 DHCP概念

DHCP指動態主機設定通訊協定,是一個區域網路的網路通訊協定,使用UDP協議工作。

二 應用
  • 為大量客戶機自動分配地址,提供集中管理
  • 減輕管理和維護成本,提高網路設定效率
三 分配的主要資訊
  • 網卡的IP地址、子網路遮罩
  • 對應的網路地址、廣播位址
  • 預設閘道地址
  • DNS伺服器位址
  • 引導檔案、TFTP伺服器位址
四 DHCP流程
順序 協議 形式 備忘
用戶端尋找伺服器 DISCOVER  廣播  源地址為0.0.0.0,目標地址為255.255.255.255
伺服器提供地址資訊  OFFER 廣播  
接受並廣播 DHCP REQUEST 廣播 源地址為0.0.0.0,目標地址為255.255.255.255
伺服器確認 ACK 廣播  
用戶端重新登入 REQUEST 廣播 續租目的地址為DHCP伺服器位址
伺服器確認 ACK 單播 續約應答

 

4.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地址完成初始化,從而可以和其他網路中的主機進行通訊。

4.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分鐘再進行嘗試。

001.DHCP簡介

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.