近日,某同事在用寬帶撥號上網的過程中出現691撥號錯誤代碼,登錄Radius服務器查看該用戶的賬號,發現并沒有到期。筆者用了自己的賬號和密碼測試了一下,發現也是寬帶撥號691錯誤。網絡拓撲結構如圖1所示。

圖1 網絡拓撲結構
常見的691故障原因是用戶的賬戶或者密碼輸入錯誤,或用戶的賬戶到期,用戶在使用時未正常退出而造成用戶賬號駐留。筆者前期排查排除了用戶賬號密碼錯誤及賬戶到期的原因。那是不是Radius認證系統出現問題了呢?
Radius即遠程用戶撥號認證系統,是目前應用最廣泛的AAA協議。由于Radius協議認證機制靈活,在現代通信得到了廣泛應用,筆者單位寬帶上網業務中,也是使用了Radius服務器進行寬帶上網的認證。
Radius協議的交互原理是,當用戶輸入用戶名和口令時,Radius客戶端也就是我們網絡中的BRAS就會根據獲取的用戶名和口令,向Radius服務器發送認證請求包。Radius服務器將該用戶信息與Users數據庫信息進行對比分析,如果認證成功,則將用戶的權限信息以認證響應包的方式發送給BRAS。如果認證失敗,則返回拒絕認證的響應包。BRAS根據接收到的認證結果接入或拒絕用戶。如果可以接入用戶,則BRAS向Radius服務器發送計費開始請求包。Radius服務器返回計費開始響應包。當BRAS向Radius服務器發送計費停止請求包時,Radius服務器就返回計費結束響應包。
分析了Radius協議的交互原理,那是否是Radius服務器在交互過程中,出現問題引發了故障呢?登錄Radius服務器進行抓包測試,報文中Radius服務器與BRAS交互正常,排除了Radius認證系統發生故障的可能性。
接下來排查BRAS是否產生相關故障。BRAS是寬帶遠程接入服務器,它是面向寬帶網絡應用的新型接入網關,主要完成兩方面功能,一是網絡承載功能:負責終結用戶的PPPoE連接、匯聚用戶的流量;二是控制實現功能:與認證系統、計費系統和客戶管理系統及服務策略控制系統相配合實現用戶接入的認證、計費和管理。BRAS是通過Radius協議與Radius服務器相互通信。筆者單位根據網絡需求,辦公用戶統一在gd域名下,以便實現更好的網絡管理。以往遇到過地址池滿導致的691撥號錯誤。是不是地址池滿了?筆者登錄所帶用戶的BRAS查看gd域名的用戶地址池使用情況。要執行的命令如下:
show submanage ippool used-rate domain gd
//查看gd域名的地址池使用率
由圖2可知,該地址池總數量為2045,使用率為33.69%,用戶地址充足。由于以往處理的故障中也有License限制導致寬帶撥號691錯誤,于是登錄BRAS查看 License信 息,BRAS的License是通常被廠商作為網絡設備某些功能的限制和擴展,show license是查看設備的軟件使用范圍授權。
show license
//查看BRAS License信息
由圖3可知,License為48000,當前用戶數是20176,整機支持的最大用戶上線數量是256000,說明不是License限制的問題。

圖2 gd域名下地址池利用率

圖3 BRAS上的License信息
Show online-failedrecord user-name jnfgs123
//根據用戶名,查看用戶上線失敗的記錄
從中沒有發現用戶jnfgs123上線失敗的記錄信息,說明不是BRAS上的故障,根據網絡拓撲,我們往下排查,定位到辦公網交換機。
筆者采用Wireshark進行抓包分析,Wireshark是一個網絡封包分析軟件。仔細分析Wireshark擷取的封包能夠幫助筆者對于網絡行為有更清楚的了解。筆者在撥號的同時抓包,然后再進行過濾,目的是擷取PPPoE協議的相關報文,從而對故障進行定位。從報文中發現本機MAC地址發送認證請求給另一個MAC地址,該地址返回jnfgs123的用戶名為not user的響應包給本機地址,拒絕認證本機用戶。我們發現該地址與BRAS無關,根據網絡拓撲分析,定位故障原因來自辦公網交換機。
定位故障原因在辦公網交換機后,登錄交換機,查找MAC地址的來源。使用以下命令來實現:
Show mac-addresstable | include 8081.00ff.be81
//查找MAC地址來源
查找到該MAC地址來自0/0/2端口,然后去排查了辦公網交換機的這個端口,追根溯源,找到了是一臺設置了上網控制認證功能的路由器,該臺路由器冒充Radius服務器,對用戶進行上網認證。關閉該路由器的上網控制認證功能后,故障得到解決。
此次的691故障排查,從Radius服務器、BRAS以及辦公網交換機三個方面著手,最后確定為設置上網認證功能的路由器冒充Radius服務器引發的故障。排查中學習和應用了Radius協議、PPPoE原 理、Radius與BRAS之間的交互過程、路由器的上網認證功能等相關知識,受益匪淺。筆者在以往的網絡維護過程中,只注重問題是否解決,忽略了對于網絡知識的深入研究。通過不斷地學習,并針對此次網絡的處理思路進行及時總結,逐步提高分析故障原因的能力,相信以后解決網絡故障會事半功倍,為提高用戶良好的上網體驗打下堅實的基礎。