單位局域網(wǎng)內(nèi)劃分有多個(gè) VLAN,兩 臺(tái)思科核心層交換機(jī)運(yùn)行HSRP協(xié)議互為熱備,增強(qiáng)網(wǎng)絡(luò)的健壯性。每個(gè)VLAN有三個(gè)網(wǎng)關(guān),分別為虛擬網(wǎng)關(guān)、主網(wǎng)關(guān)、備網(wǎng)關(guān)。核心交換機(jī)上聯(lián)防火墻接入Internet。網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
VLAN20內(nèi)主機(jī)PC1無法上網(wǎng),同為VLAN20的主機(jī)PC2、PC3卻可以正常上網(wǎng)。
主要考慮有以下五種可能導(dǎo)致PC1訪問外網(wǎng)失敗。
1.物理線路有問題。
2.交換機(jī)端口Down掉。
3.防火墻是否擋住。
圖1 網(wǎng)絡(luò)結(jié)構(gòu)
4.DNS服務(wù)器解析是否正常。
5.主機(jī)獲得網(wǎng)關(guān)的MAC地址是否正確。
到現(xiàn)場后發(fā)現(xiàn),PC1的本地連接并沒有斷開,查看其IP及網(wǎng)關(guān)地址為X.X.X.126。進(jìn)入cmd,ping X.X.126是通的。排除了上述1、2點(diǎn)的猜測。
查看可以上網(wǎng)的PC2、PC3的DNS地址為202.102.152.3,和 PC1的相同,說明DNS解析是沒有問題的。排除了第3點(diǎn)。
查看PC2、PC3的網(wǎng)關(guān)地址,發(fā)現(xiàn)一個(gè)為X.X.X.124,另一個(gè)為X.X.X.125。將PC3的網(wǎng)關(guān)地址設(shè)置為其中任何一個(gè)均可以上網(wǎng),唯獨(dú)設(shè)置為X.X.X.126不可以上網(wǎng)。后來登錄防火墻檢查配置,并沒有禁止PC1訪問外網(wǎng)的配置。
于是就把注意力集中在第五點(diǎn)上,PC1網(wǎng)關(guān)地址X.X.X.126對應(yīng)的MAC地址是否正確。
1.查看PC1獲得網(wǎng)關(guān)的MAC地址。
打開PC1,進(jìn)入cmd,輸入arp -a,得到如下輸出:
PC1獲得X.X.X.126網(wǎng)關(guān)對應(yīng)的MAC地址為8c-dc-d4-9e-20-e7。
2.登錄核心交換機(jī)查看MAC地址表,如圖2所示,發(fā)現(xiàn)VLAN2網(wǎng)關(guān)地址X.X.X.126對應(yīng)的MAC地址為0000.0c07.ac14
至此得出初步的結(jié)論,PC1獲取了錯(cuò)誤的網(wǎng)關(guān)MAC地址導(dǎo)致無法上網(wǎng)。
通過使用Wireshark軟件對VLAN2進(jìn)行了抓包分析,很快發(fā)現(xiàn)了異常記錄(注意帶線框的記錄)如圖3所示。
在圖3中,第一條線框:X.X.X.120的主機(jī)進(jìn)行ARP廣播,它想知道X.X.X.126網(wǎng)關(guān)的MAC地址。
圖2 登錄交換機(jī)查看MAC地址表
圖3 對VLAN2抓包結(jié)果
第二條線框:MAC地址為8c:dc:d4:9e:20:e7主機(jī)立即回應(yīng)X.X.X.126網(wǎng)關(guān)的MAC地址是它自己。
第三條線框:真正的網(wǎng)關(guān)回應(yīng)了MAC地址,可惜為時(shí)已晚。
通過抓包分析,明確了PC1無法上網(wǎng)的原因是VLAN20內(nèi)某臺(tái)主機(jī)中了ARP病毒,不斷發(fā)布錯(cuò)誤的網(wǎng)關(guān)MAC地址而引起的。
最后,登錄接入交換機(jī),通過show ip arp命令查找MAC地址為8c:dc:d4:9e:20:e7所在的交換機(jī)端口,通過shutdown命令關(guān)閉端口斷開與中毒主機(jī)的連接。
1.由于中毒主機(jī)的MAC地址沒有登記使用人,只能先在接入層交換機(jī)關(guān)閉端口。查找中毒主機(jī)用了很長時(shí)間,說明平時(shí)要注意加強(qiáng)對基礎(chǔ)運(yùn)維信息的收集,遇到問題才可以很快定位。
2.核心交換機(jī)通過HSRP協(xié)議互為熱備,每個(gè)VLAN設(shè)置一虛擬網(wǎng)關(guān),每臺(tái)交換機(jī)相應(yīng)VLAN接口分別設(shè)置網(wǎng)關(guān),如果主交換機(jī)物理上斷開,備交換機(jī)就變?yōu)橹鞯?,這樣不會(huì)影響網(wǎng)絡(luò)的暢通。
對于 VLAN20,X.X.X.126就是那個(gè)虛擬網(wǎng)關(guān),X.X.X.124、X.X.X.125分 別設(shè)置在各自交換機(jī)。
PC2、PC3可以設(shè)置X.124、X.125為網(wǎng)關(guān)正常上網(wǎng),但是當(dāng)設(shè)置X.X.X.124網(wǎng)關(guān)交換機(jī)壞了,設(shè)置X.124的內(nèi)網(wǎng)機(jī)就會(huì)無法上網(wǎng),125同理。設(shè)置虛擬網(wǎng)關(guān)X.126就沒事,除非兩臺(tái)交換機(jī)物理斷開。
本次故障是病毒引起的而非硬件故障,所以還是建議VLAN20內(nèi)的內(nèi)網(wǎng)機(jī)將網(wǎng)關(guān)設(shè)置為虛擬網(wǎng)關(guān)X.126。