1、手工配置
自動分配(自動向 DHCP 服務(wù)器獲得 IP 地址)
手動DHCP分配:管理員為客戶端指定預(yù)分配的 IP 地址,DHCP 只是將該 IP 地址傳達(dá)給設(shè)備。
2、自動DCHP分配:
DHCP 從可用地址池中選擇靜態(tài) IP 地址,自動將它永久性地分配給設(shè)備。不存在租期問題,地址是永久性地分配給設(shè)備。
動態(tài)DHCP分配:DHCP 自動動態(tài)地從地址池中分配或出租 IP 地址,使用期限為服務(wù)器選擇的一段有限時間,或者直到客戶端告知 DHCP 服務(wù)器其不再需要該地址為止。
手工配置 TCP/IP 參數(shù)是一些網(wǎng)絡(luò)管理員習(xí)慣使用的方法。通常,網(wǎng)絡(luò)管理員需要創(chuàng)建一 張詳細(xì)的配置清單,并將其帶在身上或存放在計算機(jī)上,以便于隨時查閱并配置 IP 地址、子網(wǎng)掩碼以及默認(rèn)網(wǎng)關(guān)和 DNS 服務(wù)器的 IP 地址。這種方法看似簡單可行,但卻相當(dāng)費時且容易出錯。
自動分配 TCP/IP 參數(shù)可以避免因手工配置帶來的如工作量大、費時、易出錯、地址易沖突等諸多問題,只需部署一臺提供自動分配 TCP/IP 參數(shù)的服務(wù)器,其他計算機(jī)則無需配置或進(jìn)行極為簡單的配置就可以上網(wǎng)。我們把這種服務(wù)器稱為 DHCP 服務(wù)器,動態(tài)獲得 IP 地址的 計算機(jī)就是 DHCP 客戶端。
DHCP 全稱是 Dynamic Host Configuration Protocol(動態(tài)主機(jī)配置協(xié)議),是由 IETF (Internet Engineering Task Force,Internet 工程任務(wù)組)設(shè)計開發(fā)的,專門用于為 TCP/IP 網(wǎng)絡(luò) 中的計算機(jī)自動分配 IP 地址,并完成 TCP/IP 參數(shù)(包括 IP 地址、子網(wǎng)掩碼、默認(rèn)網(wǎng)關(guān)以及 DNS 服務(wù)器等)配置的協(xié)議。 DHCP 服務(wù)器能夠從預(yù)先設(shè)置的 IP 地址池中自動給主機(jī)分配 IP 地址, 它不僅能夠解決 IP 地址沖突的問題,也能及時回收 IP 地址以提高 IP 地址的利用率。
何時使用 DHCP 服務(wù) 在實際工作中,通常在下列情況下需要采用 DHCP 服務(wù)器來自動分配 TCP/IP 參數(shù):
1、網(wǎng)絡(luò)的規(guī)模較大,網(wǎng)絡(luò)中需要分配 IP 地址的主機(jī)較多,特別是要在網(wǎng)絡(luò)中增加和刪 除網(wǎng)絡(luò)主機(jī)或者要重新配置網(wǎng)絡(luò)時, 手工配置的工作量很大, 而且常常會因為用戶不遵守規(guī)則 而出現(xiàn)錯誤,導(dǎo)致 IP 地址的沖突等,這時可以采用 DHCP 服務(wù)。
2、網(wǎng)絡(luò)中的主機(jī)多,而 IP 地址不夠用,這時也可以使用 DHCP 服務(wù)器來緩解這一問題。例如某個網(wǎng)絡(luò)上有 260 臺計算機(jī),采用靜態(tài) IP 地址時,每臺計算機(jī)都需要預(yù)留一個 IP 地 址,即共需要 260 個 IP 地址,但可用的 IP 地址只有 254 個,若采用手工配置,永遠(yuǎn)有 6 臺計 算機(jī)無法接入網(wǎng)絡(luò),然而實際工作中,這 260 臺計算機(jī)并不可能同時開機(jī),使用 DHCP 恰好 可以調(diào)節(jié) IP 地址的使用。但這種情況對 ISP(Internet Service Provider,互聯(lián)網(wǎng)服務(wù)供應(yīng)商) 來說是一個十分嚴(yán)重的問題,如果 ISP 有 100000 個用戶,是否需要 100000 個 IP 地址?因此 解決這個問題的方法就是使用 DHCP 服務(wù)。我們利用撥號上網(wǎng)實際上就是從 ISP 那里動態(tài)獲 得了一個公有的 IP 地址。
3、一些主機(jī)(例如采用無線或有線技術(shù)接入的筆記本電腦或 PDA)在不同的子網(wǎng)中移動時,可以通過 DHCP 在移動到某一個子網(wǎng)時自動獲得該子網(wǎng)的 IP 地址,無需做任何額外的配置,從而滿足了移動用戶的需求。報告廳、餐廳、賓館等移動用戶流動較大的公共場所通常 采用 DHCP 服務(wù)器分配 IP 地址。
DHCP 以客戶端/服務(wù)器模式工作,像任何其它客戶端/服務(wù)器關(guān)系一樣運作。當(dāng)一臺 PC 連接到 DHCP 服務(wù)器時,服務(wù)器分配或出租一個 IP 地址給該 PC。然后 PC 使用租借的 IP 地址連接到網(wǎng)絡(luò),直到租期結(jié)束。主機(jī)必須定期聯(lián)系 DHCP 服務(wù)器以續(xù)展租期。這種租用機(jī)制可以確保主機(jī)在移走或關(guān)閉時不會繼續(xù)占有它們不再需要的地址。DHCP 服務(wù)器將把這些地址歸還給地址池,根據(jù)需要重新分配。
DHCP租期
租期的目的:合理有效的使用IP地址
假如DHCP給你的租期是10小時,當(dāng)你用到5個小時的時候,DHCP會主動詢問客戶端你還要不要使用這個地址,如果你回應(yīng)說還要用,那么DHCP會將你之前的使用時間清零,重新計時,租期任然10小時;如果你沒有回應(yīng),則收回該地址。如果你一直續(xù)租則會永遠(yuǎn)循環(huán)下去,每隔5小時問你一次。
DHCP 服務(wù)的工作過程
1.DHCP工作站第一次登錄網(wǎng)絡(luò)
當(dāng) DHCP 客戶機(jī)第一次登錄網(wǎng)絡(luò)時,主要通過 4 個階段與 DHCP 服務(wù)器建立聯(lián)系,如圖 所示。
——DHCP DISCOVER(發(fā)現(xiàn))IP租約選擇——
——DHCP OFFER(提供)IP租約提供——
——DHCP REQUEST(請求)IP租約選擇——
——DHCP ACK(確認(rèn))IP租約確認(rèn)——
(1)——DHCP DISCOVER(發(fā)現(xiàn))IP租約選擇——
當(dāng) DHCP 客戶機(jī)第一次啟動時由于客戶機(jī)此時沒有 IP 地址,也不知道服務(wù)器的 IP 地址,由于主機(jī)在啟動時不具備有效的 IP 信息,因此它使用第 2 層和第 3 層廣播地址與服務(wù)器通信。 因此客戶機(jī)在當(dāng)前的子網(wǎng)中以 0.0.0.0 作為源地址,以 255.255.255.255 作為目標(biāo)地址向 DHCP服務(wù)器廣播 DHCP Discover 報文,申請一個 IP 地址。DHCP Discover 報文中還包括客戶機(jī)的 MAC 地址和主機(jī)名。
(2)——DHCP OFFER(提供)IP租約提供——
DHCP 服務(wù)器提供 IP 地址 DHCP 服務(wù)器收 DHCP Discover 報文后, 將從地址池中為它提供一個尚未被分配出去的 IP 地址,并把提供的 IP 地址暫時標(biāo)記為“不可用” 。服務(wù)器單播 DHCP Offer 報文送回給客戶機(jī),DHCP Offer 報文中包含的信息如圖所示。如果網(wǎng)絡(luò)中包含有不止一個 DHCP 服務(wù)器,則客戶機(jī)可能收到好幾個 DHCP Offer 報文,客戶機(jī)通常只承認(rèn)第一個 DHCP Offer。
當(dāng) DHCP 服務(wù)器收到 DHCDISCOVER 消息時,它會找到一個可供租用的 IP 地址,創(chuàng)建一個包含請求方主機(jī) MAC 地址和所出租的 IP 地址的 ARP 條目,并使用 DHCPOFFER 消息傳送綁定提供報文。DHCPOFFER 消息作為單播發(fā)送,服務(wù)器的第 2 層 MAC 地址為源地址,客戶端的第 2 層地址為目的地址。
某些情況下,來自服務(wù)器的 DHCP 消息交換可能是廣播,而不是單播。
DHCP 請求和提供 DHCP 客戶機(jī)將等待 1 秒,若 DHCP 客戶機(jī)未能得到 DHCP 服務(wù)器提供的地址,將分別 以 2 秒、4 秒、8 秒和 16 秒的時間間隔重新廣播四次,若還沒有得到 DHCP 服務(wù)器的響應(yīng), 則 DHCP 客戶機(jī)將以 0~1000 毫秒內(nèi)的隨機(jī)時間間隔再次發(fā)出廣播請求租用 IP 地址。 如果 DHCP 客戶機(jī)經(jīng)過上述努力仍未能從任何 DHCP 服務(wù)器端獲得 IP 地址, 則可能發(fā)生 以下兩種情況之一: 客戶機(jī)將使用保留的 B 類地址 169.254.0.1~169.254.255.254 范圍中的一個。
① 如果客戶端使用的是 Windows 2000 及后續(xù)版本,并且 Windows 操作系統(tǒng)將自動設(shè)置 IP 地址的功能處于激活狀態(tài), 那么客戶端將自動從 Microsoft 保留 IP 地址段中選擇一個自動私有地址(Automatic Private IP Address,APIPA)作為自己的 IP 地址。自動私有 IP 地址的范圍是 169.254.0.1~169.254.255.254。使用自動私有 IP 地址,在 DHCP 服務(wù)器不可用時,DHCP 客戶端之間仍然可以利用私有 IP 地址進(jìn)行通信。所以,即使在網(wǎng)絡(luò)中沒有 DHCP 服務(wù)器,計 算機(jī)之間仍能通過網(wǎng)上鄰居發(fā)現(xiàn)彼此。
② 如果使用其他的操作系統(tǒng)或自動設(shè)置 IP 地址的功能被禁止,則客戶機(jī)無法獲得 IP 地 址,初始化失敗。但客戶機(jī)在后臺每隔 5 分鐘發(fā)送四次 DHCP Discover 信息直到它收到 DHCP Offer 信息。
(3)——DHCP REQUEST(請求)IP租約選擇——
客戶機(jī)收到 DHCP Offer 后,廣播向服務(wù)器發(fā)送一個包含有關(guān) DHCP 服務(wù)器提供的 IP 地址的 DHCP Request 報文。如果客戶機(jī)沒有收到 DHCP Offer 報文并且還記得以前的網(wǎng)絡(luò)配置,此時 可以使用以前的網(wǎng)絡(luò)配置(如果該配置仍然在有效期限內(nèi))。
當(dāng)客戶端收到來自服務(wù)器的 DHCPOFFER 時,它回送一條 DHCPREQUEST 消息。此消息有兩個作用:一是租用發(fā)起,一是租用更新和檢驗。用于租用發(fā)起時,客戶端的 DHCPREQUEST 消息要求在 IP 地址分配后檢驗其有效性。此消息提供錯誤檢查,確保地址分配仍然有效。DHCPREQUEST 還用作發(fā)給選定服務(wù)器的綁定接受通知,并隱式拒絕其它服務(wù)器提供的綁定提供信息。
許多企業(yè)網(wǎng)絡(luò)使用多臺 DHCP 服務(wù)器。DHCPREQUEST 消息以廣播的形式發(fā)送,將綁定提供接受情況告知此 DHCP 服務(wù)器和任何其它 DHCP 服務(wù)器。
(4)——DHCP ACK(確認(rèn))IP租約確認(rèn)——
DHCP 服務(wù)器在收到 DHCP Request 信息后,立即發(fā)送 DHCP Ack 確認(rèn)信息,以確定此 租約成立,且此信息中還包含其他 DHCP 選項信息
客戶機(jī)接收到包含配置參數(shù)的 DHCP Ack 報文, 利用 ARP 檢查網(wǎng)絡(luò)上是否有相同的 IP 地 址。如果檢查通過,則客戶機(jī)接受這個 IP 地址及其參數(shù)。如果發(fā)現(xiàn)有問題,客戶機(jī)向服務(wù)器 發(fā)送 DHCP Decline 信息,并重新開始新的配置過程。服務(wù)器收到 DHCP Decline 信息后,將該 地址標(biāo)記為“不可用” 。
收到 DHCPREQUEST 消息后,服務(wù)器檢驗租用信息,為客戶端租用創(chuàng)建新的 ARP 條目,并用單播 DHCPACK 消息予以回復(fù)。除消息類型字段不同外,DHCPACK 消息與 DHCPOFFER 消息別無二致。客戶端收到 DHCPACK 消息后,記錄下配置信息,并為所分配的地址執(zhí)行 APR 查找。如果它沒有收到回復(fù),則它知道該 IP 地址是有效的,將開始把它用作自己的 IP 地址。
2.DHCP 工作站第二次登錄網(wǎng)絡(luò)
DHCP 客戶機(jī)獲得 IP 地址后再次登錄網(wǎng)絡(luò)時,就不需要再發(fā)送 DHCP Discover 報文了, 而是直接發(fā)送包含前一次所分配的 IP 地址的 DHCP Request 報文。 當(dāng) DHCP 服務(wù)器收到 DHCP Request 報文,會嘗試讓客戶機(jī)繼續(xù)使用原來的 IP 地址,并回答一個 DHCP Ack(確認(rèn)信息) 報文。 如果 DHCP 服務(wù)器無法分配給客戶機(jī)原來的 IP 地址,則回答一個 DHCP NAck(不確認(rèn) 信息)報文。當(dāng)客戶機(jī)接收到 DHCP NAck 報文后,就必須重新發(fā)送 DHCP Request 報文來請 求新的 IP 地址。
3.DHCP 租約的更新
DHCP 服務(wù)器將 IP 地址分配給 DHCP 客戶機(jī)后,有租用時間的限制,DHCP 客戶機(jī)必須 在該次租用過期前對它進(jìn)行更新。客戶機(jī)在 50%租借時間過去以后,每隔一段時間就開始請 求 DHCP 服務(wù)器更新當(dāng)前租借,如果 DHCP 服務(wù)器應(yīng)答則租用延期。如果 DHCP 服務(wù)器始終 沒有應(yīng)答,在有效租借期的 87.5%時,客戶機(jī)應(yīng)該與任何一個其他的 DHCP 服務(wù)器通信,并 請求更新它的配置信息。如果客戶機(jī)不能和所有的 DHCP 服務(wù)器取得聯(lián)系,租借時間到期后, 它必須放棄當(dāng)前的 IP 地址, 并重新發(fā)送一個 DHCP Discover 報文開始上述的 IP 地址獲得過程。 客戶端可以主動向服務(wù)器發(fā)出 DHCP Release 報文,將當(dāng)前的 IP 地址釋放。
天有同事反饋說她的電腦每次開機(jī)都會顯示DHCP...中,而且自檢很久之后才能進(jìn)入到桌面,問我有沒有什么好的辦法解決。我第一次遇到這個問題,還以為是本地連接設(shè)置問題,沒想到進(jìn)去后才發(fā)現(xiàn)這個本地連接的IP為靜態(tài)IP,根本就無關(guān)DHCP的事情。
外事不決找度娘,這個還是至理名言的。學(xué)習(xí)了度娘給出的資料后明白電腦開機(jī)啟動時一直顯示DHCP...自檢的原因,并掌握了三種解決電腦開機(jī)出現(xiàn)DHCP...的辦法。
電腦開機(jī)出現(xiàn)DHCP的原因分析:
這種情況的發(fā)生大多都是因為我們的網(wǎng)卡啟用了BOOT ROM芯片的引導(dǎo)功能,而且網(wǎng)卡帶有PXE的引導(dǎo)芯片之后所造成的。最重要的是我們還設(shè)置了電腦啟動為網(wǎng)絡(luò)啟動,并處于第一啟動項所以開機(jī)時會一直連接DHCP服務(wù)器獲取IP地址,才會導(dǎo)致系統(tǒng)開機(jī)要很久。PS:網(wǎng)絡(luò)啟動設(shè)置后表示從網(wǎng)絡(luò)上的某臺服務(wù)器加載系統(tǒng),比如無盤網(wǎng)吧,就是這種情況。
電腦開機(jī)出現(xiàn)DHCP的解決辦法:
方法一:直接拔掉網(wǎng)線再開機(jī)(最笨的方法)
這個方法還是我同事告訴我的,她說每次拔了網(wǎng)線再開機(jī)或啟動就不會出現(xiàn)這個DHCP自檢。經(jīng)過本人親自測試,還真的能夠解決這個問題,唯一不爽的就是每次都要拔網(wǎng)線,開好機(jī)后再重新插好網(wǎng)線,不嫌麻煩的可以用這個辦法。
方法二:按鍵盤上的Esc鍵取消自檢(比較簡單的方法)
在我們開機(jī)的時候,如果發(fā)現(xiàn)出現(xiàn)DHCP自檢的話,我們可以直接按鍵盤上的Esc鍵來取消DHCP自檢。經(jīng)本人親自測試,這個方法確實有效,而且還比較簡單,就是每次開機(jī)都要按一次這個Esc鍵,個人覺得也挺不爽的。
方法三:設(shè)置BIOS的開機(jī)啟動項(一勞永逸的方法)
出現(xiàn)DHCP自檢的原因就是我們設(shè)置了電腦開機(jī)第一啟動項為網(wǎng)絡(luò)啟動,那么我們只需要把第一啟動項改為硬盤啟動即可。比如我們公司的是聯(lián)想電腦,開機(jī)后按F1(其他電腦一般是按Del,或F2,或F10等)進(jìn)入BIOS設(shè)置,然后移動到“Startup”,把“Primary Boot Sequence”和“Automatic Boot Sequence”的啟動項改為硬盤啟動即可,也可以把網(wǎng)絡(luò)啟動(Network)移動到最后一個啟動。經(jīng)懿古今親自測試,這個方法確實有效,而且一勞永逸,建議大家使用這個方法。
總結(jié)
其實文中三個方法都挺簡單的而且還很有效,對于電腦小白不敢設(shè)置BIOS的,建議直接用方法二,直接按Esc鍵是最簡單的。如果稍微懂點BIOS,個人十分建議直接使用方法三來達(dá)到一勞永逸的效果。
DHCP是動態(tài)主機(jī)配置協(xié)議,是為解決傳統(tǒng)的靜態(tài)手工配置方式的不足應(yīng)運而生的一種技術(shù),可以實現(xiàn)網(wǎng)絡(luò)動態(tài)合理地分配IP地址給主機(jī)使用。
為什么要用DHCP,它有什么優(yōu)點?
廣播的Request報文讓網(wǎng)絡(luò)中其他DHCP服務(wù)器端得知客戶端已選擇了某個服務(wù)器端分配的IP地址,保證其他服務(wù)器端可以釋放通過單播Offer分配給該客戶端的IP地址。
對于已分配的IP地址,若終端超過租期仍未續(xù)租,服務(wù)器端判斷該終端不再需要使用該IP地址,將IP地址回收,可繼續(xù)分配給其他終端。
DHCP配置分為接口地址池和全局地址池,兩者思想一致,但是配置有些許差異
1、接口地址池
[Huawei]dhcp enable
[Huawei]interface GigabitEthernet0/0/0
[Huawei-GigabitEthernet0/0/0]dhcp select interface
[Huawei-GigabitEthernet0/0/0]dhcp server dns-list 10.1.1.2
[Huawei-GigabitEthernet0/0/0]dhcp server excluded-ip-address 10.1.1.2
[Huawei-GigabitEthernet0/0/0]dhcp server lease day 3
2、全局地址池
[Huawei]dhcp enable
[Huawei]ip pool pool2
Info: It's successful to create an IP address pool.
[Huawei-ip-pool-pool2]network 1.1.1.0 mask 24
[Huawei-ip-pool-pool2]gateway-list 1.1.1.1
[Huawei-ip-pool-pool2]dns-list 1.1.1.1
[Huawei-ip-pool-pool2]lease day 10
[Huawei-ip-pool-pool2]quit
[Huawei]interface GigabitEthernet0/0/0
[Huawei-GigabitEthernet0/0/1]dhcp select global