基本原理
信息采集
網(wǎng)絡(luò)設(shè)備在運行過程中,會產(chǎn)生一些包含拓撲結(jié)構(gòu)的信息,如下:
- 明確的鏈路類信息,此類信息原本是廠商提供出來,協(xié)助網(wǎng)管分析網(wǎng)絡(luò)拓撲結(jié)構(gòu)的,只要設(shè)備全部支持,就比較準確,否則會出現(xiàn)穿透問題。如
- CDP:Cisco Discovery Protocol,由CISCO推出的鄰居設(shè)備發(fā)現(xiàn)協(xié)議
- NDP:Neighbor Discovery Protocol,由Huawei參考CDP推出的鄰居設(shè)備發(fā)現(xiàn)協(xié)議,屬于早期設(shè)備支持,新的Huawei設(shè)備往往同時支持NDP與LLDP
- LLDP:Link Layer Discovery Protocol,由IEEE推出的,與廠商無關(guān)的鄰居設(shè)備發(fā)現(xiàn)協(xié)議,目前廣泛應(yīng)用在非CISCO設(shè)備上,尤其是Huawei與H3C
鏈路類信息,一般會很明確的指出,本設(shè)備的某個端口與目標設(shè)備的某個端口存在直接的鏈路連接。
如:
設(shè)備A 端口eth0/1 設(shè)備B 端口eth1/1
- 不明確的方向類信息
即轉(zhuǎn)發(fā)表FDB。
一般只能表明,本設(shè)備的某個端口上,存在的某個MAC地址記錄。
如:
設(shè)備A 端口eth0/1 MAC地址00:00:00:00:00:01
上述兩種信息,目前一般都是局域網(wǎng)設(shè)備支持,如果設(shè)備是路由器,往往缺少這方面的信息。
拓撲計算
實際的拓撲計算過程較為復雜,本文做一些簡化,大家可以大致理解為如下過程:
- 整理所有的可能存在的鏈路,主要來自
a. 所有明確的鏈路類信息,即CDP等
b. 部份不明確的方向類信息,即設(shè)備A包含設(shè)備B,同時設(shè)備B也包含設(shè)備A的兩條轉(zhuǎn)發(fā)表信息,我們可以復合為一條可能存在的鏈路 - 對這些可能存在的鏈路進行合理性檢查,排除不合理的鏈路
剩余的所有鏈路,就作為最終的拓撲鏈路。
常見網(wǎng)絡(luò)類型
根據(jù)基本原理可以得到,拓撲計算分為兩人過程,并且高度依賴設(shè)備所能提供的信息。以下表格說明一般設(shè)備支持的情況:
| 廠商 | 路由器支持情況 | 交換機支持情況 |
|---|---|---|
| CISCO | 不支持FDB 支持本地鏈路CDP,而非本地鏈路由于運營商租用線路無法支持 |
支持CDP、FDB |
| H3C | 不支持FDB 支持本地鏈路LLDP,而非本地鏈路由于運營商租用線路無法支持 |
支持LLDP、NDP、FDB |
| HUAWEI | 不支持FDB 支持本地鏈路LLDP,而非本地鏈路由于運營商租用線路無法支持 |
支持LLDP、NDP、FDB |
根據(jù)上述設(shè)備支持情況可以推斷出以下表格,包含了幾種典型的網(wǎng)絡(luò)拓撲計算類型:
| 網(wǎng)絡(luò) | 舉例 | 發(fā)現(xiàn)情況 |
|---|---|---|
| 所有設(shè)備支持CDP、NDP或LLDAP中的一種 | 如全CISCO設(shè)備網(wǎng)絡(luò)或全支持LLDP的設(shè)備網(wǎng)絡(luò) | 只要設(shè)備全部開啟,且不存在未配置community的設(shè)備,一般可完全發(fā)現(xiàn)鏈路 |
| 所有設(shè)備僅支持FDB | 如全部是CISCO二層交換機 | 一般可完全發(fā)現(xiàn)鏈路 |
| 所以設(shè)備均是路由器 | 如發(fā)現(xiàn)城域網(wǎng) | 一般無法完全發(fā)現(xiàn)鏈路,因為路由器間的鏈路往往存在租用運營商,一根鏈路也可能通過VPN等技術(shù)同時連接多個其它路由器。 只能通過手工鏈路或引導用戶使用網(wǎng)絡(luò)拓撲。 |
| 各種設(shè)備混雜 | 如路由器與交換機各占一半 | 一般可以計算出交換機間的鏈路,但交換機與核心路由器間、路由器間的鏈路無法計算。 只能通過手工連接解決。 |
診斷步驟
確定網(wǎng)絡(luò)類型,如果網(wǎng)絡(luò)類型是城域網(wǎng),發(fā)現(xiàn)的設(shè)備全是路由器,那么基本可以放棄診斷,使用手工鏈路或引導用戶使用網(wǎng)絡(luò)拓撲,不要觀注物理拓撲。
確定設(shè)備是否支持CDP、NDP、LLDP中的任意一種,并盡量啟用這些協(xié)議中的某一個,但不應(yīng)該同時啟用兩個或兩個以上的協(xié)議
這點最為重要,尤其是CDP或LLDP。而NDP屬于老協(xié)議,目前只有老設(shè)備支持了,所以不建議啟用。
如果還存在部份交換機與核心設(shè)備之間的鏈路無法計算,則很可能是核心設(shè)備不支持拓撲發(fā)現(xiàn)協(xié)議,此時建議使用手工鏈路。
設(shè)備配置方法
NDP相關(guān)操作
NDP由Huawei或H3C設(shè)備支持。
telnet到設(shè)備
執(zhí)行super或system進入系統(tǒng)視圖
查看所有的ndp鏈路
disp ndp
關(guān)閉ndp
undo ndp enable
啟用ndp
ndp enable
LLDP相關(guān)操作
telnet到設(shè)備
執(zhí)行super或system進入系統(tǒng)視圖
查看所有的ndp鏈路
disp lldp
關(guān)閉lldp
undo lldp enable
啟用lldp
lldp enable