公司財務部使用的是公司的內(nèi)網(wǎng),16臺主機通過一臺交換機互聯(lián),一直運行穩(wěn)定。最近新增加了8臺主機后,單位財務辦公室反映其辦公軟件出現(xiàn)中斷、卡頓等現(xiàn)象,嚴重影響了財務部門同事的工作。知悉這一簡單故障現(xiàn)象后,我們在主機上通過使用Ping命令發(fā)現(xiàn)到網(wǎng)關(guān)有丟包,尤其是財務部門所有主機都在使用的情況下丟包更加嚴重,重啟交換機也不能解決。
根據(jù)以往的經(jīng)驗,網(wǎng)絡的丟包一般是由于ARP攻擊、環(huán)路、線路質(zhì)量等原因造成的,接下來就按照上述思路開始逐一排查。
首先分析的是局域網(wǎng)中是否有ARP攻擊。ARP攻擊的原理就是通過偽造IP地址和MAC地址實現(xiàn)ARP欺騙,能夠在網(wǎng)絡中產(chǎn)生大量的ARP廣播包使網(wǎng)絡阻塞,攻擊者只要持續(xù)不斷地發(fā)出偽造的ARP響應包,就能更改目標主機ARP緩存中的條目,造成網(wǎng)絡中斷或丟包嚴重。
檢測ARP攻擊最簡單的一個方法,就是在Windows命令行界面通過輸入輸入“arp -a”查看arp列表,其中如果存在多條與網(wǎng)關(guān)IP相對應的MAC地址時,表明局域網(wǎng)存在ARP攻擊。經(jīng)過查看ARP列表,沒有發(fā)現(xiàn)網(wǎng)關(guān)IP地址對應多個MAC地址的情況,因此排除了ARP攻擊的可能。
接下來排查線路質(zhì)量和環(huán)路原因。通過使用測線器測量機房到交換機的線路,發(fā)現(xiàn)線路質(zhì)量沒有問題,但在交換機下使用筆記本進行Ping測試,發(fā)現(xiàn)到網(wǎng)關(guān)依舊丟包嚴重,于是通過抓包軟件分析網(wǎng)絡中是否存在環(huán)路和其他故障。使用Wireshark對抓包文件進行分析后,發(fā)現(xiàn)了網(wǎng)絡中充斥著大量的NBNS廣播包(如圖1)。

圖1 使用軟件抓包示意圖
NBNS是獲取網(wǎng)絡上的主機名和地址映射的協(xié)議,實現(xiàn)類似于DNS域名解析的功能。一般情況下,如果主機需要訪問一個域名,但緩存中沒有對應的域名地址信息,又不能連接互聯(lián)網(wǎng)進行DNS話,就會不斷地向局域網(wǎng)中發(fā)送大量的NBNS廣播包。由于財務部所有主機都是內(nèi)網(wǎng),一些主機的操作系統(tǒng)中也發(fā)現(xiàn)了很多需要連接互聯(lián)網(wǎng)的插件、助手等,因此,判斷出本次網(wǎng)絡故障是由于NBNS廣播包擁塞造成的。
解決故障計劃分兩步進行。一方面在財務內(nèi)網(wǎng)交換機配置ACL來限制NBNS廣播包的轉(zhuǎn)發(fā), 另一方面要求財務部同事把自己電腦中的插件、助手等軟件卸載掉。通過查詢相應資料得知,NBNS是使用端口號為137的UDP協(xié)議傳輸,那么只需在交換機中建立一個ACL,然后把該ACL應用到所有端口就可以了。本次操作涉及到的設備是一臺三層交換機,具體的命令如下。

上面通過在交換機上創(chuàng)建并應用ACL,完成了NBNS廣播包傳播的途徑。再次使用Ping命令進行了測試,發(fā)現(xiàn)到網(wǎng)關(guān)已經(jīng)看不到丟包了,這樣就實現(xiàn)了網(wǎng)絡故障的排除。
上面我們得知故障現(xiàn)象后,通過Ping命令得知網(wǎng)絡存在丟包現(xiàn)象,然后對引起丟包現(xiàn)象的原因進行了逐一分析,并使用抓包軟件找到了故障原因即網(wǎng)絡中廣播包異常。通過在交換機上應用ACL并卸載內(nèi)網(wǎng)主機的不必要插件、助手后,故障得到了解決。
通過此次故障,我們意識到,作為網(wǎng)絡運維人員,一定要注意內(nèi)網(wǎng)安全防護。首先要向使用內(nèi)網(wǎng)的員工普及一些計算機安全知識,讓大家了解到維護內(nèi)網(wǎng)的網(wǎng)絡環(huán)境安全穩(wěn)定的重要性,從而避免員工自行安裝一些惡意軟件,并指導大家自行對內(nèi)網(wǎng)主機已安裝的不必要插件、助手進行卸載和清理,從而杜絕問題的根源。
其次,要不定期使用抓包軟件對內(nèi)部局域網(wǎng)進行檢測,如發(fā)現(xiàn)網(wǎng)絡中有異常的廣播數(shù)據(jù)包,一定要找出其來源。
最后,可以在交換機上使用ACL對局域網(wǎng)進行限制只開放業(yè)務端口,也能有效地預防故障的產(chǎn)生,進而維護好網(wǎng)絡的和諧穩(wěn)定。