故障現象
筆者曾負責過一個工程,交換機用的是 CISCO Catalyst 2924,路由器用的是 CISCO 3640。交換機按端口劃分為兩個虛擬子網VLAN1和VLAN2。VLAN1的IP地址范圍為192.168.o.XXX,子網掩碼為255.255.255.0;VLAN2的IP地址范圍為192.168 1.XXX,子網掩碼為255.255.255.0。交換機1口設為虛擬子網間的主干路(Trunk),與 CISCO 3640路由器的以太網口連接,2~20口被劃分在VLAN1中,21~24口被劃分在 VLAN2中。客戶端使用的是Windows 98操作系統,安裝TCP/IP協議,接入VLAN1; 服務器端使用的是Windows 2000 Server十 DHCP服務器,同時在VLAN2中安裝TCP/IP協議接入VLAN2。客戶端的IP地址用自動獲得IP地址的方式,通過路由器做中繼代理,由DHCP服務器分配一個IP地址。服務器的IP地址是192.168.1.8,子網掩碼是255. 255.255.0。交換機的廠地址是192.168.1.9,子網掩碼皇255.255.255.0。路由器lP地址是192.168.1.10,子網掩碼是255.255.255.0。
CISCO 3640路由器支持子口的設置(子口就是在單個物理接口上建立并保持多條邏輯連接),最初的路由器配置如下:
interface FastEthernetl/0
ip address 192.168.0.1.255. 255.255.0
no ip directed—broadcast&
fair一queue 64 256 0
!
interface FastEthernetl/0.1
encapsulation dot1Q 1
ip helper一address 192.168.1.8
no ip directed—broadcast
!
interface FastEthernetl/0.2
encapsulatlon dot1Q 2
ip address 192. 168.1.1 255.55.255.0
no ip directed 一broadcast
router eigrp 100
passive—interface Seria10/0
network 168. 0.0.0
no auto—summary
硬件連接好后,在客戶端用Windows 98自帶的Winipcfg命令獲取IP地址時,問題出現了:客戶端無法獲取IP地址。
診斷過程
從硬件連接看,問題可能出在網卡 網線、交換機、路由器四個方面。將客戶端手工設置IP地址、能夠Piing通服務器、交換機、路由器、說明網卡網線、交換機、路由器都工作正常,那問題會出在什么地方呢?會不會是路由器的配置語句不對呢?經查閱隨機文檔配置語句本身沒有問題。&小問題的范圍,筆者把客戶端接入VLAN2中,這時客戶端就能獲取IP地址了,再將客戶端接入VLAN1 中,又不能獲取IP地址了,看來是VLAN出 現了問題。
我們知道客戶端第一次獲取IP地址,要經過4步。每一步的信息傳輸都是用廣播發出的,其中任何一步在VLVN的傳輸中受阻都會使客戶端無法獲取IP地址,那么如何查看廣播包在交換機中傳輸呢?在TCP/IP協議中,傳輸協議分為 TCP和 UDP、TCP是面向連接的協議,UDP是非面向連接的協議。從廣播的性質來分析,廣播包應該是UDP包,廣播要通過路由器。而路由器又能監測UDP包,這樣就可通過路由器查看廣播包在VLAN間的傳輸了。輸入路由器監測UDP包的命令“Debug ip udp”后發現IP租用請求信息(DHCPDISCOVER)僅發送到了VLAN1 中,沒有傳送到VLAN2中,這應該是客戶端無法獲得IP地址的關鍵。
在路由器的配置中,“ip helper—address 192. 168.1.8”這條命令的作用是負責指明UDP包傳輸的目的地址,IP租用請求信息沒有被傳送到VLAN2中,就是由于這條命令沒起作用。再次查看隨機文檔,這條命令確實沒寫錯。正在百思不得其解時,筆者發現路由器以太網口的第二子口設置了IP地址,第一子口未設置IP地址,而母口卻設置了IP地址,也就是說第一子口的IP地址是由母口決定的。那“ip helper—adress 192.168.1.8 ”這條命令是否也應該設到母口上呢?筆者于是將路由器的配置改寫如下:
interface FastEthernet1/0
ip address 192 .168. 0.1 .255.255.255 0
ip helper—address 192.168.1.8
no ip directed—broadcast
fair一queue 64 256 0 I
!
interface FastEthernet 1/0.1
Encapsulatlon dot1Q 1
no ip dlrected—broadca
!
interface FastEthernet1/0.2
encapsulation dot1Q 2
ip address 192.168.1.1.255. 255. 255. 0
no ip drected—broadcast
router eigrp 100
passive一interface Serial0/0
network 168 .0 .0 .0
no auto—summary
如此設置后,客戶端就能夠獲得IP地址了。后來筆者查閱了一些有關書籍,證實CISCO 3640路由器第一子口的配置信息都應設在母口上。
排除心得
在網絡設置,維護工作中,出現無法獲得IP地址,無法聯網等連通性故障是比較常見的,無論是網線 網卡、集線器等硬件出問題,還是路由器參數設置、各機器網絡參數設置等出問題,都可能造成網絡不通。硬件問題可以通過替換,比較的方法排除 ,相對較簡單;而軟件方面的參數設置由于涉及面多,隱蔽性強,較難查找。這就需要耐心、細致、仔細對照相關資料、參數。以下就給大家介紹一下如何確定網絡連通性故障的常見步驟
(1)當出現一種網絡應用故障時,如無法接入 Internet,要嘗試使用其他網絡應用,如查找網絡中的其他電腦,或使用局域網中的Web測覽等。即可判斷是連通性故障,然后繼續下面操作。
(2)查看網卡的指示燈是否正常。正常情況下,在不傳送數據時,網卡的指示燈閃爍較慢,傳送數據時,閃爍較快。無論是不亮,還是長亮不滅。都表明有故障存在。如果網卡的指示燈不正常,需關掉電腦更換網卡。對于HUB的指示燈,凡是插有網線的端口,指示燈都亮。由于是HUB,所以,指示燈的作用只能指示該端口是否連接有終端設備,不能顯示通信狀態。
(3)使用Ping命令Ping本地的IP地址或計算機名(如zw179)檢查網卡和IP網絡協議是否安裝完好。如果能Ping通,說明該電腦的網卡和網絡協議設置都設有問題。應當檢查網線和 HUB及 HUB的接口狀態,如果無法Ping通只能說明TCP/IP協議有問題。
(4)如果確定網卡和協議都沒有問題的情況下,網絡還是不通,可初步斷定是HUB和雙絞線的問題。為了進一步進行確認,可再換一臺計算機用同樣的方法進行判斷。如果其他計算機與本機連接正常,則故障一定是先前的那臺計算機和HUB的接口上。
(5)如果確定HUB有故障,應首先檢查HUB的指示燈是否正常,如果先前那臺電腦與HUB連接的接口燈不亮說明該HUB的接口有故障(HUB的指示燈表明插有網線的端口, 指示燈亮,指示燈不能顯示通信狀態)。
(6)如果HUB沒有問題,則檢查電腦到HUB的那一段雙絞線和所安裝的網卡是否有故障。判斷雙絞線是否有問題可以通過“雙絞線測試儀”或用2塊萬用表分別由兩個人在雙絞線的兩端測試。主要測試雙絞線的1、2和3、6四條線(其中1、2線用于發送 3、6線用于接收)。如果發現有一根不通就要重新制作。通過上面的故障原因分析,我們就可以判斷故障出在網卡、雙絞線或HUb等網絡設備上。