編者按:筆者通過分享一般網(wǎng)絡(luò)故障排查流程,對通常網(wǎng)絡(luò)故障排查方法進(jìn)行了分析,并通過三個(gè)網(wǎng)絡(luò)故障案例,對網(wǎng)絡(luò)故障排查流程進(jìn)行了解析。
通常引起網(wǎng)絡(luò)故障的原因很多,且有時(shí)故障點(diǎn)可能不止一個(gè),排查方法主要有從下向上、從上向下,以及從中間層向兩端等。本文按照從中間層向兩端方法,結(jié)合實(shí)際案例,從本地網(wǎng)絡(luò)和遠(yuǎn)程網(wǎng)絡(luò)兩方面對網(wǎng)絡(luò)故障排查流程進(jìn)行分析。
當(dāng)本地節(jié)點(diǎn)某網(wǎng)絡(luò)業(yè)務(wù)不通時(shí),排查流程如圖1所示。
首先,在之前能夠訪問故障IP地址的主機(jī)上Ping故障IP地址,根據(jù)通斷進(jìn)行不同的處理。
若能Ping通故障IP地址,但承載的上層業(yè)務(wù)不通,則檢查防火墻設(shè)置,包含網(wǎng)絡(luò)路徑中通過的硬件防火墻和單機(jī)或服務(wù)器上部署的個(gè)人防火墻。若防火墻未開通則開通防火墻,若已開通,則需要檢查數(shù)據(jù)流所經(jīng)過的交換機(jī)上的ACL(訪問控制列表)配置。若未開通則開通ACL,若已開通則檢查是否有IP地址沖突,有沖突則關(guān)閉沖突IP網(wǎng)絡(luò)接入,無沖突則根據(jù)用戶單位內(nèi)部系統(tǒng)部署情況,進(jìn)行相關(guān)操作。例如,筆者單位在終端安裝部署有網(wǎng)絡(luò)終端安全監(jiān)管系統(tǒng),則需要以管理員權(quán)限運(yùn)行命令行,執(zhí) 行“arp–d”命令,清除故障IP ARP緩存列表。經(jīng)過上述操作步驟之后,可檢查網(wǎng)絡(luò)故障是否恢復(fù)。
若不能Ping通故障IP地址,首先登錄到網(wǎng)絡(luò)節(jié)點(diǎn)的中心交換機(jī),通過“dis arp”命令查看ARP列表,查看是否存在此IP地址(為防止ARP老化時(shí)間未到,可先在交換機(jī)上執(zhí)行“reset arp dynamic ip X.X.X.X”命令,清空ARP列表)。若查不到對應(yīng)的IP和MAC地址,則是接入層故障,排查接入線路,若能查到則檢查IP地址、子網(wǎng)掩碼和網(wǎng)關(guān)等參數(shù)配置是否正確。若都正確,則轉(zhuǎn)到檢查防火墻步驟。
圖1 本地網(wǎng)絡(luò)業(yè)務(wù)故障排查流程
遠(yuǎn)程網(wǎng)絡(luò)業(yè)務(wù)故障是指跨地域的兩個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)之間的網(wǎng)絡(luò)業(yè)務(wù)故障,排查流程如圖2所示。
首先,以Ping為切入點(diǎn),在之前能夠訪問故障IP地址的主機(jī)上Ping故障IP地址,根據(jù)通斷進(jìn)行不同的處理。
若不能Ping通對端IP地址,聯(lián)系對端網(wǎng)絡(luò)管理人員,登錄對端中心交換機(jī),查看ARP列表,華為交換機(jī)命令為“dis arp | inc X.X.X.X”。若查不到IP對應(yīng)的MAC地址,則排查接入層故障,若能查到則登錄兩端三層網(wǎng)絡(luò)設(shè)備查看路由表,檢查是否有兩端業(yè)務(wù)網(wǎng)段的路由。若沒有路由則開通路由,有路由則檢查網(wǎng)絡(luò)路徑中的防火墻和交換機(jī)ACL列表(包括單機(jī)版防火墻),如防火墻、交換機(jī)ACL列表已開通則檢查兩端設(shè)備掩碼、網(wǎng)關(guān)等參數(shù)是否正確。路由表沒有路由開通路由后,檢查業(yè)務(wù)是否恢復(fù),未恢復(fù)則進(jìn)入檢查防火墻、交換機(jī)ACL等安全策略路徑。
圖2 遠(yuǎn)程網(wǎng)絡(luò)業(yè)務(wù)故障排查流程
網(wǎng)絡(luò)節(jié)點(diǎn)T在割接前使用E1(2M)專線接入上級節(jié)點(diǎn)B,網(wǎng)絡(luò)拓?fù)淙鐖D3所示。升級后,T節(jié)點(diǎn)開通千兆以太信道至節(jié)點(diǎn)A,升級后網(wǎng)絡(luò)拓?fù)淙鐖D4所示。
圖3 割接前網(wǎng)絡(luò)拓?fù)鋱D
全網(wǎng)采用BGP/MPLS VPN技術(shù),PE節(jié)點(diǎn)之間通過BGP協(xié)議發(fā)布路由,RR1為一級反射器,節(jié)點(diǎn)A、B為PE節(jié)點(diǎn),升級前節(jié)點(diǎn)T為CE節(jié)點(diǎn),下掛在B節(jié)點(diǎn)。由于T節(jié)點(diǎn)開通了至A節(jié)點(diǎn)的千兆以太信道,T節(jié)點(diǎn)需要升級到PE節(jié)點(diǎn),并將網(wǎng)絡(luò)路由割接至千兆專線。通過配置T節(jié)點(diǎn)NE20路由器,將其提升為PE路由器,與一級反射器RR1建立IBGP鄰接關(guān)系,但是割接后T節(jié)點(diǎn)至B節(jié)點(diǎn)網(wǎng)絡(luò)業(yè)務(wù)不通。
排查步驟:
(1)檢查各節(jié)點(diǎn)路由表信息,華為路由器查看命令為:
檢查B節(jié)點(diǎn)NE40路由器VPN路由表,發(fā)現(xiàn)沒有T節(jié)點(diǎn)發(fā)布的BGP路由;檢查T節(jié)點(diǎn)NE20路由器VPN路由表,也不存在B節(jié)點(diǎn)發(fā)布的BGP路由;檢查RR1和A節(jié)點(diǎn)NE40路由表均存在T節(jié)點(diǎn)發(fā)布的BPG路由。
以上現(xiàn)象說明B、T節(jié)點(diǎn)發(fā)布的VPN路由都沒有被對端接收。
(2)檢查B、T節(jié)點(diǎn)BGP鄰居關(guān)系,華為路由器查看命令為:
dis bgp vpnv4 all peer
發(fā)現(xiàn)兩臺(tái)路由器分別與其BGP鄰居建立了鄰接關(guān)系,B節(jié)點(diǎn)簡要信息如下:
BGP local router ID:192.168.1.1
Local AS number:100
Total number of peers:1 Peers in establi shed state:1
T節(jié)點(diǎn)簡要信息如下:
BGP local router ID:192.168.1.1
圖4 割接后網(wǎng)絡(luò)拓?fù)鋱D
圖5 升級前網(wǎng)絡(luò)拓?fù)涫疽鈭D
Local AS number:100
Total number of peers:4 Peers in established state:4
檢查發(fā)現(xiàn)B節(jié)點(diǎn)和T節(jié)點(diǎn)路由器的BGP router ID竟然相同。進(jìn)一步檢查發(fā)現(xiàn)兩臺(tái)路由器在配置BGP路由協(xié)議時(shí)都沒有明確指定router ID,由于兩臺(tái)路由器都有一個(gè)接口默認(rèn)IP地址為192.168.1.1,都將此IP地址作為了自身的BPG router ID。由于BGP協(xié)議的防環(huán)機(jī)制,不會(huì)接收本身router ID發(fā)布的路由,因此兩臺(tái)路由器之間無法交互路由,導(dǎo)致B、T節(jié)點(diǎn)網(wǎng)絡(luò)業(yè)務(wù)不通。
解決方法:
明確指定B、T節(jié)點(diǎn)的BGP router ID,華為路由器配置命令為:
BGP 100//100 為AS號(hào),根據(jù)實(shí)際情況指定router-id X.X.X.X
配置完成后檢查兩節(jié)點(diǎn)路由表均已包含對端業(yè)務(wù)路由,兩端網(wǎng)絡(luò)業(yè)務(wù)恢復(fù)正常。
案例1結(jié)論:
必須明確指定路由器router ID,不可讓設(shè)備自動(dòng)選擇router ID,確保全網(wǎng)路由器router ID不沖突。
筆者單位局域網(wǎng)進(jìn)行升級改造,組網(wǎng)采用星型結(jié)構(gòu),升級前中心交換機(jī)為思科6509,接入層交換機(jī)全部為思科3560,如圖5所示。
升級目標(biāo):將思科6509更換為華為7706,接入交換機(jī)更換為華為5720。
由于筆者單位接入層交換機(jī)較多,升級過程中為了最大限度地減少業(yè)務(wù)中斷時(shí)間,決定采用先外圍后核心的原則,先逐臺(tái)將接入層交換機(jī)更換為華為5720,后將原思科6509降級為匯聚層交換機(jī)使用,核心交換機(jī)切換到華為7706交換機(jī),如圖6所示。
實(shí)施此步驟為夜間,當(dāng)晚測試網(wǎng)絡(luò)全部正常,但第二天一早便接到網(wǎng)絡(luò)中斷故障申告。檢查發(fā)現(xiàn),接入交換機(jī)全部不通,網(wǎng)絡(luò)整體癱瘓,遂緊急將6509交換機(jī)撤下,接入交換機(jī)直接連接中心華為7706交換機(jī),網(wǎng)絡(luò)業(yè)務(wù)恢復(fù)。最終網(wǎng)絡(luò)拓?fù)淙鐖D7所示。
案例2結(jié)論:
一時(shí)網(wǎng)絡(luò)正常,不代表網(wǎng)絡(luò)一直穩(wěn)定;
較長時(shí)間的穩(wěn)定,不代表沒有故障隱患;
盡量用同一廠商設(shè)備組網(wǎng),如無法避免,必須做兼容性測試。
圖6 升級過程中網(wǎng)絡(luò)拓?fù)涫疽鈭D
圖7 升級后網(wǎng)絡(luò)拓?fù)涫疽鈭D
圖8 二層環(huán)路故障網(wǎng)絡(luò)連接圖
新建網(wǎng)絡(luò)節(jié)點(diǎn)N通過光纖連接至節(jié)點(diǎn)P,采用二層模式互聯(lián)。某天節(jié)點(diǎn)P突然發(fā)生網(wǎng)絡(luò)癱瘓,經(jīng)檢查發(fā)現(xiàn),在與節(jié)點(diǎn)N連接的網(wǎng)絡(luò)接口上檢測到環(huán)路,如圖8所示。
經(jīng)排查,原因是節(jié)點(diǎn)N兩臺(tái)交換機(jī)使用鏈路聚合級聯(lián),實(shí)現(xiàn)鏈路保護(hù)和提高帶寬,但配置完成后未保存交換機(jī)配置,恰逢故障當(dāng)天節(jié)點(diǎn)N停電,供電恢復(fù)后聚合鏈路變成二層環(huán)路,導(dǎo)致節(jié)點(diǎn)P和N網(wǎng)絡(luò)全部中斷。
解決方法:為了確保節(jié)點(diǎn)N和P不互相影響,兩節(jié)點(diǎn)采用三層網(wǎng)絡(luò)互聯(lián),避免二層網(wǎng)絡(luò)故障影響范圍擴(kuò)大。
案例3結(jié)論:
交換機(jī)console控制口要隨時(shí)保持可管理狀態(tài)。當(dāng)網(wǎng)絡(luò)整體癱瘓時(shí),ssh、telnet等協(xié)議均無法使用,只能通過控制口進(jìn)行設(shè)備管理。
查看網(wǎng)絡(luò)設(shè)備日志。所有的網(wǎng)絡(luò)故障在設(shè)備日志中均有所體現(xiàn),通過逐層排查的方案,能夠最終確定故障原因。
網(wǎng)絡(luò)故障排查在網(wǎng)絡(luò)運(yùn)維管理工作中是不可避免的,原因有時(shí)很復(fù)雜,有時(shí)故障原因不止一個(gè),運(yùn)維人員必須對網(wǎng)絡(luò)連接關(guān)系十分清楚,對三層網(wǎng)絡(luò)所采用的路由協(xié)議十分熟悉,在出現(xiàn)故障時(shí)沉著應(yīng)對分析,按照科學(xué)的方法步驟進(jìn)行處置,才能在最短的時(shí)間內(nèi)排除故障,恢復(fù)網(wǎng)絡(luò)業(yè)務(wù)。