處理DHCP故障問題的思路
一說起DHCP故障問題,不少朋友都覺得無(wú)從下手。那么本文就來(lái)細(xì)細(xì)講解一下這方面的內(nèi)容吧。從它的概念,以及問題的分析和處理都做一個(gè)總結(jié)。網(wǎng)絡(luò)的概念很廣泛,對(duì)于協(xié)議的學(xué)習(xí)也有很多方面。今天我們介紹的則是DHCP協(xié)議相關(guān)的一些故障處理。眾所周知每臺(tái)計(jì)算機(jī)要想正常上網(wǎng)需要有一個(gè)地址,這個(gè)地址就是我們常說的IP地址。在實(shí)際工作中身為網(wǎng)絡(luò)管理員的我們?nèi)绾斡行У墓芾磉@些IP地址呢?為每臺(tái)計(jì)算機(jī)設(shè)置對(duì)應(yīng)的IP地址,子網(wǎng)掩碼,網(wǎng)關(guān)地址,DNS地址等網(wǎng)絡(luò)參數(shù)的話固然是可以的,但是非常的煩瑣,工作量大不說,在實(shí)際應(yīng)用中很可能經(jīng)常會(huì)出現(xiàn)沖突的現(xiàn)象。
我們?nèi)绾斡行У姆峙溥@些網(wǎng)絡(luò)參數(shù)呢?DHCP服務(wù)可以幫我們大忙,通過將DHCP服務(wù)配置在專業(yè)的服務(wù)器上,然后為網(wǎng)絡(luò)中所有普通客戶機(jī)分配IP等信息是件效率非常高的工作。不過DHCP在為我們網(wǎng)絡(luò)管理提供便利的同時(shí)也帶來(lái)了一些問題。例如網(wǎng)絡(luò)帶寬受影響,客戶機(jī)經(jīng)常無(wú)法獲得正確的地址信息,甚至是無(wú)法獲得任何信息。其實(shí)這些故障我們都可以按照一定的規(guī)律去解決的,今天就由筆者為各位讀者全面介紹排查DHCP故障的方法。
DHCP故障問題一、概念篇:
在介紹排查DHCP故障之前首先為大家闡明幾個(gè)概念性的東西,只有理論上充實(shí)了,才能更好的理解下面介紹的故障排除的思路。
***:DHCP服務(wù)能夠提供什么數(shù)據(jù)?DHCP服務(wù)不是***的,他只能提供網(wǎng)絡(luò)層相關(guān)的參數(shù),例如IP地址,MASK地址,網(wǎng)關(guān)地址,WINS與DNS服務(wù)器地址等。對(duì)于更低層的地址,諸如MAC地址等信息是無(wú)法提供的。MAC地址是燒錄在計(jì)算機(jī)網(wǎng)卡中的。
第二:多臺(tái)DHCP服務(wù)器是否可以同時(shí)運(yùn)行?DHCP服務(wù)器是通過廣播包向客戶機(jī)發(fā)送網(wǎng)絡(luò)信息的,因此如果同一個(gè)網(wǎng)絡(luò)中確切的說是同一個(gè)廣播域中存在多臺(tái) DHCP服務(wù)器的話,就會(huì)出現(xiàn)各個(gè)服務(wù)器提供各自的網(wǎng)絡(luò)信息,這樣就造成網(wǎng)絡(luò)中廣播數(shù)據(jù)包的沖突。客戶機(jī)不知道該接受哪臺(tái)DHCP服務(wù)器發(fā)來(lái)的信息。因此微軟公司設(shè)置默認(rèn)情況下同一個(gè)廣播域網(wǎng)絡(luò)中只能存在一臺(tái)DHCP服務(wù)器,后設(shè)置建立或啟用的DHCP將無(wú)法工作。
第三:租約是什么?在配置DHCP服務(wù)器過程中會(huì)設(shè)置租約的天數(shù),那么什么是租約呢?在DHCP服務(wù)器將網(wǎng)絡(luò)信息分配數(shù)據(jù)包發(fā)給客戶機(jī)后會(huì)收到客戶機(jī)發(fā)回的答復(fù)數(shù)據(jù)包,接著DHCP服務(wù)器會(huì)將已經(jīng)分配出去的IP地址與從客戶機(jī)接收到的該計(jì)算機(jī)MAC地址建立一個(gè)對(duì)應(yīng)關(guān)系,并把這個(gè)對(duì)應(yīng)關(guān)系保存在DHCP服務(wù)器的租約池中。為什么需要這個(gè)租約池呢?一方面為下次分配網(wǎng)絡(luò)參數(shù)信息提高了速度。不過如果該MAC地址對(duì)應(yīng)條目的客戶計(jì)算機(jī)被移到其他地方或者M(jìn)AC 地址發(fā)生了改變的話,如果上面建立的對(duì)應(yīng)關(guān)系一直保存在DHCP服務(wù)器的租約池中就會(huì)造成可用的IP地址數(shù)量越來(lái)越少,很多有效的地址被無(wú)效的MAC占用,因此微軟引入了租約這個(gè)概念。通過租約我們可以強(qiáng)制每隔一段時(shí)間將DHCP服務(wù)器的租約池中保存的對(duì)應(yīng)條目全部清空,從而防止了非法MAC地址霸占合法IP的現(xiàn)象。
第四:我的客戶機(jī)可以從DHCP服務(wù)器獲得169.254.*.*形式的IP信息,這句話是錯(cuò)誤的。為什么呢?微軟公司在windows2000系統(tǒng)中提供了這樣的功能,即如果網(wǎng)絡(luò)中不存在任何DHCP服務(wù)器,客戶機(jī)本地網(wǎng)絡(luò)信息又被設(shè)置為自動(dòng)獲得IP方式的話,那么windows2000及其以上操作系統(tǒng)將自動(dòng)為自己分配一個(gè)諸如169.254.*.*形式的IP信息。因此如果你發(fā)現(xiàn)自己的客戶機(jī)只能獲得169.254.*.*這樣的IP地址的話,說明你的DHCP服務(wù)器沒有正常工作。
DHCP故障問題二、客戶端排障:
DHCP故障主要有兩個(gè)方面,客戶機(jī)存在問題以及服務(wù)器自身問題。首先我們來(lái)介紹下在客戶端進(jìn)行的排除故障方法。
***步:通過任務(wù)欄的“開始->運(yùn)行->輸入CMD”進(jìn)入命令行模式。
第二步:在命令行模式中輸入ipconfig后回車,看是否可以自動(dòng)獲得IP地址。
小提示:在進(jìn)行前兩步操作前首先要保證客戶機(jī)的IP地址分配方式被設(shè)置為自動(dòng)獲得IP地址。
第三步:如果可以獲得正確的IP地址說明DHCP正常,如果發(fā)現(xiàn)獲得錯(cuò)誤的地址,其中包括169.254.*.*這樣的形式,則執(zhí)行ipconfig /release命令,該命令是將當(dāng)前獲得的網(wǎng)絡(luò)參數(shù)信息釋放。
第四步:釋放網(wǎng)絡(luò)參數(shù)后再次執(zhí)行ipconfig我們會(huì)看到當(dāng)前得到的網(wǎng)絡(luò)參數(shù)已經(jīng)為空,所有信息變成0.0.0.0。
第五步:釋放得到的錯(cuò)誤信息后執(zhí)行ipconfig /renew將自動(dòng)獲得新的信息。
小提示:如果我們不執(zhí)行釋放IP信息的命令直接運(yùn)行ipconfig /renew的話將無(wú)法重新獲得IP信息。因此第三步必不可少。
第六步:重新獲得IP信息后我們查看當(dāng)前的地址參數(shù),如果無(wú)法獲得任何信息的話還是要從本機(jī)入手解決問題,如果獲得的是錯(cuò)誤信息的話則需要找到DHCP服務(wù)器,對(duì)其進(jìn)行檢查。
第七步:將本地網(wǎng)卡禁用然后再次啟用,按照上面介紹的步驟重新做一次。
第八步:如果我們知道DHCP服務(wù)器的IP地址的話,可以在客戶機(jī)上使用ping命令“ping 服務(wù)器ip”查看網(wǎng)絡(luò)連通情況。
第九步:在系統(tǒng)的“事件查看器”中尋找有無(wú)關(guān)于DHCP服務(wù)相關(guān)的故障記錄。方法是“開始->控制面板->管理工具->事件查看器”。
第十步:通過“開始->控制面板->管理工具->服務(wù)”打開服務(wù)設(shè)置窗口,在服務(wù)列表中找到dhcp client service。在其上雙擊,然后點(diǎn)停止按鈕,接著再點(diǎn)啟動(dòng)按鈕將其重新啟動(dòng)。如果發(fā)現(xiàn)該服務(wù)本身沒有啟用則更說明了故障的根源所在,直接啟動(dòng)并設(shè)置啟動(dòng)方式為“自動(dòng)”即可。
第十一步:打開網(wǎng)絡(luò)的本地連接進(jìn)行修復(fù),方法是“網(wǎng)上鄰居->屬性->本地連接->修復(fù)”。系統(tǒng)將自動(dòng)清除ARP緩存與NETBS信息,接著更新DNS與DHCP服務(wù)組件與相關(guān)信息。
第十二步:如果上面十一步仍然不能解決問題的話,我們只能先使用靜態(tài)IP地址與DNS等網(wǎng)絡(luò)信息配置本機(jī)來(lái)進(jìn)行檢測(cè)了。如果配置了靜態(tài)IP信息后可以正常上網(wǎng),連接LAN的話,則說明問題的出在客戶機(jī)與DHCP服務(wù)器的連接或者DHCP服務(wù)器自身上。我們就要將問題的起因放到DHCP服務(wù)器上。
小提示:有的時(shí)候?yàn)榭蛻舳嗽O(shè)置一個(gè)其他用戶,然后使用該用戶登錄也可以解決部分DHCP故障,另外用 lspfix.exe或winsockxpfix.exe,修復(fù)tcpip的棧區(qū)錯(cuò)誤,結(jié)合“開始->運(yùn)行->輸入sfc /scannow”掃描一遍系統(tǒng)文件也能得到意想不到的結(jié)果。
DHCP故障問題三、服務(wù)器排障:
DHCP 服務(wù)器的排障方法我們已經(jīng)介紹過很多了,感興趣的讀者可以查閱以前服務(wù)器頻道相關(guān)文章。主要的手段就是查詢服務(wù)器上的dhcp server的設(shè)置是否正常,如果沒有啟用將其開啟。另外還要時(shí)不時(shí)的將DHCP服務(wù)器關(guān)閉查看是否網(wǎng)絡(luò)中還存在其他DHCP服務(wù)器從而產(chǎn)生沖突。另外在網(wǎng)絡(luò)建立域的情況下,要想開啟DHCP服務(wù)器是需要由域控制對(duì)該DHCP服務(wù)器授權(quán)的,所以授權(quán)工作不要遺忘。
還需要提的一點(diǎn)就是租約的問題,如果發(fā)現(xiàn)DHCP工作正常,一部分客戶機(jī)無(wú)法獲得IP信息,執(zhí)行ipconfig /renew提示找不到DHCP服務(wù)器,而另外一部分可以正常獲得的話,百分之九十是因?yàn)樽饧s的原因,要嘛租約里保存的信息過多,需要我們手工清除一次;要嘛租約時(shí)間設(shè)置的過長(zhǎng),以至于大量非法MAC占用了有效IP地址。
小提示:凡是提供DHCP服務(wù)的服務(wù)器都必須設(shè)置固定IP地址,想在動(dòng)態(tài)獲得IP信息的計(jì)算機(jī)上啟用DHCP服務(wù)是不可以的。而且雖然微軟公司在限制 DHCP服務(wù)上做了規(guī)定,例如同一個(gè)網(wǎng)絡(luò)中不容許兩臺(tái)DHCP存在。但是目前有很多第三方軟件可以建立DHCP服務(wù)器,甚至是寬帶路由器也將DHCP功能集成于自身配置中,因此在這種情況下就無(wú)法清楚的查詢出網(wǎng)絡(luò)中到底存在幾個(gè)DHCP服務(wù)器了,我們只能將懷疑對(duì)象一一關(guān)閉或者在交換機(jī)及路由器上將懷疑對(duì)象進(jìn)行訪問控制列表過濾。總之網(wǎng)絡(luò)中存在非法DHCP服務(wù)器引起的網(wǎng)絡(luò)故障是非常難解決的,需要反復(fù)調(diào)查循序漸進(jìn)。
總結(jié):當(dāng)DHCP 服務(wù)出現(xiàn)問題時(shí)不要盲目的去服務(wù)器上查找結(jié)果,大部分時(shí)候都是因?yàn)榭蛻魴C(jī)故障造成的,另外客戶機(jī)與服務(wù)器之間的媒介也要值得注意,網(wǎng)線是否連接正常,交換機(jī)是否工作正常都是需要考慮的,必要時(shí)一定要多多替換,換幾個(gè)網(wǎng)線或幾個(gè)交換機(jī)端口來(lái)判斷。切記不要想當(dāng)然去操作,要腳踏實(shí)地的去測(cè)量才能得到真正的結(jié)果。