路由是指分組從源到目的地時(shí),決定端到端路徑網(wǎng)絡(luò)范圍的進(jìn)程。路由器通過(guò)轉(zhuǎn)發(fā)數(shù)據(jù)包來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)的互連。而靜態(tài)路由是指由用戶或網(wǎng)絡(luò)管理員手工配置的路由信息,當(dāng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)或鏈路狀態(tài)發(fā)生變化時(shí),網(wǎng)絡(luò)管理員需要手工修改路由表中相關(guān)的靜態(tài)路由信息。它通過(guò)對(duì)數(shù)據(jù)包的轉(zhuǎn)發(fā),起到了不同地址段IP地址通訊的需求。
靜態(tài)路由在網(wǎng)絡(luò)開(kāi)通和維護(hù)過(guò)程中十分常見(jiàn),最近,筆者單位某個(gè)網(wǎng)站出現(xiàn)訪問(wèn)故障,經(jīng)過(guò)排查發(fā)現(xiàn),是靜態(tài)路由目的地址設(shè)置的范圍過(guò)大,導(dǎo)致路由匹配錯(cuò)誤。經(jīng)過(guò)對(duì)靜態(tài)路由重新定義,故障排除。
近日,有同事反映訪問(wèn)某網(wǎng)站vps.lpngi.org故障,得知故障信息后,我們立即著手進(jìn)行排查。
圖1 路由跟蹤示意圖
圖2 網(wǎng)路拓?fù)浣Y(jié)構(gòu)
故障的基本現(xiàn)象就是某個(gè)網(wǎng)站打不開(kāi)。一般網(wǎng)站打不開(kāi)的故障我們的處理思路是首先核對(duì)登錄的網(wǎng)址是否正確,然后再使用trace命令跟蹤路由,最后根據(jù)路由跟蹤的結(jié)果進(jìn)行鏈路節(jié)點(diǎn)分析,從而達(dá)到解決故障的目的。按照這個(gè)思路我們首先核對(duì)了瀏覽器地址欄中輸入的域名是否正確,經(jīng)過(guò)核對(duì)無(wú)誤。對(duì)該網(wǎng)站進(jìn)行路由跟蹤,通過(guò)Ping命令能解析出該網(wǎng)站的IP地址是172.246.233.217,雖然是Ping不通的,但是可以對(duì)該IP地址進(jìn)行路由跟蹤,具體的路由跟蹤結(jié)果如圖1所示。
通過(guò)圖1可以清晰地看到對(duì)IP地址172.246.233.217的 路由跟蹤結(jié)果,當(dāng)路由到達(dá)第四跳就出現(xiàn)請(qǐng)求超時(shí),第三跳可以到達(dá)的地址是10.254.138.74。根據(jù)這一結(jié)論可以基本斷定,問(wèn)題出在 10.254.138.74,該 IP地址經(jīng)過(guò)核實(shí)是用于網(wǎng)管的交換機(jī)。得知這一信息后,我們需要梳理一下網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),具體的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖2所示。
通過(guò)圖2我們可以看到,寬帶用戶位于BRAS-1下面,訪問(wèn)互聯(lián)網(wǎng)的數(shù)據(jù)通過(guò)BRAS和核心路由器進(jìn)行轉(zhuǎn)發(fā)。但是剛才根據(jù)我們對(duì)目的IP地址172.246.233.217路由跟蹤的結(jié)果,顯示訪問(wèn)網(wǎng)站vps.lpnig.org的數(shù)據(jù)被轉(zhuǎn)發(fā)至了10.254.138.74上,這樣就找到了訪問(wèn)網(wǎng)站的故障原因。
這里需要先分析一下網(wǎng)絡(luò)交換機(jī)10.254.138.74的工作原理。先前部署網(wǎng)管交換機(jī)的初衷是為了方便管理網(wǎng)絡(luò)設(shè)備,同時(shí)避免非法用戶登錄網(wǎng)絡(luò)設(shè)備的風(fēng)險(xiǎn)。實(shí)現(xiàn)的機(jī)制是OLT和交換機(jī)等網(wǎng)絡(luò)設(shè)備的網(wǎng)關(guān)設(shè)置在交換機(jī)上,在交換機(jī)上設(shè)置靜態(tài)路由指向BRAS接口地址,其中這里的靜態(tài)路由目的地址是我們定義好的特定IP地址,而在BRAS上設(shè)置目的訪問(wèn)OLT和交換機(jī)的管理地址指向交換機(jī)接口。也就說(shuō),網(wǎng)管交換機(jī)和BRAS互聯(lián)是通過(guò)靜態(tài)路由通信的,其中網(wǎng)管交換機(jī)上配置的靜態(tài)路由命令即:ip route-static 10.66.66.0 2 5 5.2 5 5.2 5 5.1 2 8 10.254.138.73,這條靜態(tài)路由定義了訪問(wèn)網(wǎng)絡(luò)設(shè)備的IP地址只有10.66.66.0/25這段地址。這樣在一定程度上實(shí)現(xiàn)了網(wǎng)絡(luò)的安全私密性。而B(niǎo)RAS上配置的靜態(tài)路由即:ip route 172.0.0.0 255.0.0.0 10.254.138.74,它定義了目的地址是172.0.0.0/8的數(shù)據(jù)請(qǐng)求,被轉(zhuǎn)發(fā)至網(wǎng)管交換機(jī),這樣出現(xiàn)故障的IP地址172.246.233.217正好匹配了這一條路由,從而出現(xiàn)圖1的路由跟蹤情況,即數(shù)據(jù)被轉(zhuǎn)發(fā)至網(wǎng)管交換機(jī)上。
既然得知故障的原因是因?yàn)殪o態(tài)路由造成的,那么就需要通過(guò)修改路由的方式來(lái)解決問(wèn)題。根據(jù)交換機(jī)和OLT等網(wǎng)絡(luò)設(shè)備使用的IP地址段,我們進(jìn)行了詳細(xì)的排查,并對(duì)這些設(shè)備使用的管理IP地址進(jìn)行聚合,最后對(duì)BRAS上的靜態(tài)路由進(jìn)行修改,具體的配置命令即:ip route 172.16.0.0 255.255.240.0 10.254.138.74。該路由被重新定義后,通過(guò)縮小目的網(wǎng)段子網(wǎng)掩碼的方法,來(lái)達(dá)到解決網(wǎng)絡(luò)故障的目的。在對(duì)故障網(wǎng)站進(jìn)行驗(yàn)證后結(jié)果是可以正常打開(kāi),這樣故障就得到了解決。
我們從得知故障信息后,先后對(duì)網(wǎng)站進(jìn)行Ping測(cè)試,得知該網(wǎng)站的IP地址,然后使用trace命令跟蹤到出現(xiàn)故障的環(huán)節(jié),緊接著根據(jù)出現(xiàn)故障的環(huán)節(jié)涉及到的網(wǎng)管交換機(jī)進(jìn)行拓?fù)涫崂恚?duì)關(guān)鍵區(qū)域BRAS和交換機(jī)的靜態(tài)路由進(jìn)行了著重分析,最終發(fā)現(xiàn)問(wèn)題是路由匹配錯(cuò)誤導(dǎo)致網(wǎng)頁(yè)打不開(kāi)。經(jīng)過(guò)對(duì)BRAS上靜態(tài)路由重新定義后故障解決。
在這里需要額外介紹的是私網(wǎng)地址的使用, A、B、C三類地址中各保留了3個(gè)區(qū)域作為私網(wǎng)地址,供局域網(wǎng)使用。私網(wǎng)地址不能在公網(wǎng)上出現(xiàn),只能用在內(nèi)部網(wǎng)絡(luò)中,所有公網(wǎng)路由器都不能發(fā)送目標(biāo)地址為私網(wǎng)地址的數(shù)據(jù)報(bào)文。私網(wǎng)地址具體包括A類地址:10.0.0.0~10.255.255.2 5 5;B 類地 址 :172.16.0.0~ 172.31.255.255;C類 地址 :192.168.0.0 ~ 192.168.255. 255。文章開(kāi)頭的網(wǎng)絡(luò)故障涉及的IP地址就是一個(gè)公網(wǎng)地址,隨意的擴(kuò)大私網(wǎng)地址的使用就會(huì)在一定程度上引發(fā)網(wǎng)絡(luò)故障。所以說(shuō)通過(guò)對(duì)該故障的排除,得知了私網(wǎng)地址的使用需要規(guī)范,俗話說(shuō)“無(wú)規(guī)矩不成方圓”,只有正確操作設(shè)備,規(guī)范使用網(wǎng)絡(luò)知識(shí),才能保障網(wǎng)絡(luò)正常通達(dá)。