DHCP服務

 

什麼是DHCP

DHCP(動態主機配置協議)是從BOOTP協議發展而來的用於自動分配客戶端計算機IP地址的一種標準協議,在RFC 2131中進行定義。

Windows服務器操作系統中,均包含DHCP服務器組件。

默認情況下,基於Windows系統的客戶端的網絡配置是:

自動獲得IP地址

Windows系統的客戶端的網絡配置方法:2種

手動配置----靜態

自動配置----動態----需要DHCP服務器的支持

DHCP服務器使用租約的形式將IP地址分配給客戶端計算機使用

DHCP協議通訊使用端口UDP 67(服務器端)和UDP 68(客戶端)進行通訊,並且大部分DHCP協議通訊使用廣播進行。

使用DHCP的理由—DHCP的優點

減小管理員的工作量;

減小輸入錯誤的可能;

避免IP地址衝突;

當網絡更改IP地址段時,不需要重新配置每臺計算機的IP地址;

計算機移動不必重新配置IP地址;

提高了IP地址的利用率;

DHCP工作原理

客戶機請求IP租約; DHCPDISCOVER

服務器響應; DHCPOFFER

客戶機選擇IP地址; DHCPREQUEST

服務器確認IP租約; DHCPACK

DHCPDISCOVER

DHCP客戶端處於以下三種情況下,將發送DHCPDISCOVER廣播消息:

1、進行TCP/IP協議的初始化時;

2、DHCP客戶端請求某個IP地址被DHCP服務器拒絕,通常發生在已獲得租約的DHCP客戶端連接到不同的網絡中;

3、DHCP客戶端釋放已有租約並請求新的租約;

DHCP客戶端發起DHCPDISCOVER廣播消息

使用0.0.0.0作爲源IP地址,然後廣播地址255.255.255.255作爲目的地址;

請求數據包中同樣會包含客戶端的MAC地址和計算機名

如果沒有DHCP服務器響應DHCP客戶端的請求,DHCP客戶端在第1秒、2秒、4秒、8秒、16秒的時間間隔重新廣播,如果仍然沒有DHCP服務器響應,則客戶端會採用保留的自動私有IP地址暫時作爲自己的IP地址,同時每隔5分鐘繼續嘗試發送DHCPDISCOVER廣播消息,尋找DHCP服務器;

APIPA,Automatic Private IP Addressing 自動私有IP地址,是169.254.0.0/16中的一個;

DHCPOFFER

DHCPOFFER廣播消息:

源IP地址爲DHCP服務器的IP地址,目的IP地址爲255.255.255.255

DHCPOFFER廣播消息包含以下內容:

n 客戶端MAC地址;

n DHCP服務器提供的客戶端IP地址;

n DHCP服務器的IP地址;

n DHCP服務器提供的客戶端子網掩碼;

n 其他作用域選項,例如DNS服務器、網關、WINS服務器等;

n 租約期限等;

如果有多個DHCP服務器給予此DHCP客戶端回覆DHCPOFFER消息,則DHCP客戶端接受它接收到的第一個DHCPOFFER消息中的IP地址。

DHCPREQUEST

DHCPREQUEST廣播消息中包含了

n DHCP客戶端的MAC地址;

n 接受的租約中的IP地址;

n 提供此租約的DHCP服務器地址等;

此時由於沒有得到DHCP服務器最後確認,DHCP客戶端仍然不能使用租約中提供的IP地址,所以在數據包中仍然使用0.0.0.0作爲源IP地址,廣播地址255.255.255.255作爲目的地址;

DHCPACK

DHCP服務器在接收到DHCP客戶端發起的DHCPREQUEST廣播消息後,會發送DHCPACK廣播消息進行最後的確認,在這個消息中同樣包含了租約期限及其他TCP/IP選項信息。

如果DHCP客戶端的操作系統爲Windows 2000及其後版本,當DHCP客戶端接收到DHCPACK廣播消息後,會向網絡發出三個針對此IP地址的ARP解析請求以執行衝突檢測,確認網絡上沒有其他主機使用DHCP服務器提供的IP地址,從而避免IP地址衝突。如果發現該IP已經被其他主機所使用(有其他主機應答此ARP解析請求),則DHCP客戶端則會廣播發送(因爲它仍然沒有有效的IP地址)DHCPDECLINE消息給DHCP服務器拒絕此IP地址租約,然後重新發起DHCP DISCOVER進程。此時,在DHCP服務器管理控制檯中,會顯示此IP地址爲BAD_ADDRESS。

如果沒有其他主機使用此IP地址,則DHCP客戶端的TCP/IP使用租約中提供的IP地址完成初始化,從而可以和其他網絡中的主機進行通訊。至於其他TCP/IP選項,如DNS服務器和WINS服務器等

租約

DHCP服務器將IP地址提供給DHCP客戶端時,會包含租約的有效期,默認租約期限爲8天(691200秒)

續約

除了租約期限外,還具有兩個時間值T1和T2,其中T1定義爲租約期限的一半50%,默認情況下是四天(345600秒),而T2定義爲租約期限的的7/8 87.5%,默認情況下爲7天(604800秒)

當客戶機重新啓動或租期達50%時,就需要重新更新租約,客戶機直接向提供租約的DHCP服務器發送DHCPREQUEST消息包,要求更新現有的地址租約;

如果客戶機無法與提供租約的服務器取得聯繫,則客戶機一直等到租期到達87.5%時,進入重新申請狀態,DHCP客戶機向網絡中所有的DHCP服務器廣播DHCPDISCOVER消息包以更新現有的地址租約;

授權

爲了防止非法的DHCP服務器爲客戶端計算機提供不正確的IP地址配置,只有在活動目錄中進行過授權的DHCP服務器才能提供服務;

兩種方式來對DHCP服務器進行授權,需要具有Enterprise Admins權限:

1、在對應的DHCP服務器的管理控制檯中右擊服務器名然後選擇授權;

2、在任何一臺DHCP服務器的管理控制檯中,右擊DHCP,然後選擇管理授權的服務器;

需要注意的是,如果子網中同時具有屬於域和不屬於域的DHCP服務器,只有在屬於域的DHCP服務器被授權啓動後再啓動不屬於域的DHCP服務器時,不屬於域的DHCP服務器纔會停止服務;否則不屬於域的DHCP服務器同樣會正常工作。

IP租約更新/釋放

Ipconfig /all

Ipconfig /renew

Ipconfig /release

DHCP作用域

DHCP作用域是本地邏輯子網中可以使用的IP地址的集合

DHCP服務器只是分配匹配自己接收到DHCP客戶端租約請求的網絡接口網絡ID的IP地址租約給DHCP客戶,從而DHCP客戶可以直接和DHCP服務器進行通訊。

DHCP作用域定義的IP地址範圍是連續的,並且每個子網只能有一個作用域。如果你想要使用單個子網內的不連續的IP地址範圍,則必須先定義作用域,然後設置所需的排除範圍。

爲了實現更好的實現容錯和負載平衡,在規劃DHCP作用域包含的IP地址時,通常採用“80/20”規則;

每一個作用域具有以下屬性:

----可以租用給DHCP客戶端的IP地址範圍;可在其中設置排除選項,設置爲排除的IP地址將不分配給DHCP客戶端使用;

----子網掩碼,用於確定給定IP地址的子網;此選項創建作用域後無法修改;

----創建作用域時指定的名稱;

----租約期限值,分配給DHCP客戶端;

----DHCP作用域選項,如DNS服務器、路由器IP地址和WINS服務器地址等等;

----保留(可選),用於確保某個確定MAC地址的DHCP客戶端總是能從此DHCP服務器獲得相同的IP地址。

分配給DHCP客戶端的地址範圍=作用域IP地址範圍-排除的IP地址範圍

在創建作用域後,還可以修改起止IP地址範圍,但是不能再修改子網掩碼長度;

更短的租約期限有利於IP地址租約的回收,以便爲其他客戶服務,但是會導致網絡中產生更多的DHCP流量;

如果你的網絡客戶流動性較小,你可以設置相對較長的租約期限;如果網絡客戶流動性較強,則可以設置較短的租約期限;

默認的設置8天;

超級作用域

是由多個DHCP作用域組成的作用域,單個DHCP作用域只能包含一個固定的子網,而超級作用域可以包含多個DHCP作用域,從而包含多個子網;

超級作用域主要用於解決以下問題:

----當前單個DHCP作用域中的可用地址幾乎耗盡,而且網絡中將添加更多的計算機,需要添加額外的IP網絡地址範圍來擴展同一物理網段的地址空間;

----DHCP客戶端必須遷移到新作用域,例如重新規劃IP網絡編號,從現有的活動作用域中使用的地址範圍遷移到使用另一IP網絡地址範圍的新作用域;

----希望使用兩個DHCP服務器在同一物理網段上管理分離的邏輯IP網絡;

當創建好超級作用域後,你可以將其他不屬於超級作用域的DHCP作用域添加到超級作用域中;

或者將作用域從超級作用域中刪除,此刪除操作僅將DHCP作用域從超級作用域中獨立出來,而不是真正的刪除;

而刪除超級作用域是將此超級作用域刪除,它所包含的所有DHCP作用域都將獨立出來;

保留

通過使用保留,你可以爲某個特定MAC地址的DHCP客戶端保留一個特定的IP地址,此時保留的IP地址將不會用於爲其他DHCP客戶端進行分配;

保留只是爲DHCP客戶端計算機服務,在可能的情況下,應儘可能的考慮使用靜態IP地址而不是使用保留;

你可以爲作用域地址範圍中的任何IP地址創建保留,即使該IP地址屬於排除範圍;

分配選項

DHCP選項定義了除了IP地址和子網掩碼外,DHCP服務器分配DHCP客戶端的其他TCP/IP選項。網關地址、DNS服務器、WINS服務器等等只是常見的幾種DHCP選項,在Windows的DHCP服務器中自帶了70多種DHCP選項,除此之外,你還可以自定義分配給DHCP客戶的DHCP選項。在DHCP服務器中,你可以在以下五個不同的級別管理DHCP選項:

----預定義選項,配置方法爲在DHCP服務器管理控制檯中右擊DHCP服務器名,然後選擇設置預定義的選項。在這一級,你只能定義DHCP服務器中的DHCP選項,從而讓它們可以作爲可用選項顯示在任何一個通過DHCP控制檯提供的選項配置對話框(如“服務器選項”、“作用域選項”或“保留選項”)中。你可以根據需要將選項添加到標準選項預定義列表或從該列表中刪除選項,但是預定義選項只是讓DHCP選項可以進行配置,而是否配置則必須根據選項配置來決定;

----類別選項,在使用任何選項配置對話框(“服務器選項”、“作用域選項”或“保留選項”)時,均可單擊高級標籤來配置和啓用標識爲指定用戶或供應商類別的成員客戶端的指派選項,只有那些標識自己屬於此類別的DHCP客戶端才能分配到你爲此類別明確配置的選項,否則爲其使用常規標籤中的定義。類別選項比常規選項具有更高的優先權,可以覆蓋相同級別選項(“服務器選項”、“作用域選項”或“保留選項”)中常規選項中指派和設置的值;

----服務器選項,配置方法爲在DHCP服務器管理控制檯中展開DHCP服務器,右擊服務器選項,選擇配置選項。服務器選項中的配置將應用到DHCP服務器中的所有作用域和客戶端,不過服務器選項可以被作用域選項或保留選項所覆蓋;

----作用域選項,配置方法爲在DHCP服務器管理控制檯中展開對應的DHCP作用域,右擊作用域選項,選擇配置選項。作用域選項中的配置應用到對應DHCP作用域中的所有DHCP客戶端,不過作用域選項可以被保留選項所覆蓋;

----保留選項,配置方法爲在DHCP服務器管理控制檯中展開對應DHCP作用域中的保留,右擊對應的保留項,選擇配置選項。保留選項僅爲作用域中使用保留地址配置的單個DHCP客戶端而設置;

常用的DHCP選項有:

003 路由器的IP地址

006 DNS服務器的IP地址

015 DNS域名

044 WINS服務器的IP地址

046 NetBIOS名稱解析的類型

作用域選項優先於服務器選項;

DHCP客戶端手動設置>保留選項>作用域選項>服務器選項

Ipconfig /showclassid 本地連接 類別名

Ipconfig /setclassid 本地連接

動態更新

當DHCP客戶端從DHCP服務器獲得IP地址租約時,DHCP服務器可以根據DHCP客戶端的請求使用它所在區域中的授權DNS服務器對DHCP客戶端信息進行動態更新。

DHCP作用域中的設置覆蓋DHCP服務器中的設置;

在創建DHCP作用域時,DHCP作用域的動態更新設置將繼承DHCP服務器中的設置;

衝突檢測

DHCP工作方式的DHCP ACK部分中曾經提到,Windows 2000及其後版本的DHCP客戶端接收到DHCP服務器發送的DHCP ACK廣播消息後,會向網絡發出三個針對DHCP服務器提供的IP地址的ARP解析請求以執行衝突檢測,以確認網絡上沒有其他主機使用DHCP服務器提供的IP地址,從而避免IP地址衝突;

衝突檢測次數欄輸入你需要DHCP服務器進行衝突檢測的次數,默認爲0,即爲不進行衝突檢測;

強烈建議你設置不超過三次的衝突檢測次數

過多的檢測次數會增加DHCP服務器應答DHCP客戶端租約請求的時延;

如果在DHCP客戶端和DHCP服務器不屬於相同的網絡,那麼必須具備以下兩個條件之一,才能讓DHCP客戶端和路由器正常進行通訊:

----DHCP客戶端網絡上部署有DHCP中繼代理,並且配置爲轉發DHCP消息到DHCP服務器;

-----兩個網絡間的路由器兼容RFC 1542(支持BOOTP/DHCP轉發)。

無論上述哪種方式,DHCP中繼代理或兼容RFC 1542的路由器在轉發DHCP客戶端的租約請求時,都會修改轉發的DHCP請求數據包中的Gateway字段,將其設置爲自己接收到DHCP客戶端租約請求的網絡接口的IP地址,而DHCP服務器則使用此Gateway字段來決定分配IP地址租約的DHCP作用域。

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