學(xué)習(xí)網(wǎng)絡(luò)最重要的步驟之一,就是敲實(shí)驗(yàn)。通過(guò)動(dòng)手做實(shí)驗(yàn),可以把抽象的知識(shí)變得具體化,也能快速掌握其中的原理和使用場(chǎng)景,還能學(xué)會(huì)網(wǎng)絡(luò)設(shè)備的實(shí)操命令。 之前寫(xiě)過(guò)一篇《圖解 RSTP 和 MSTP 》的文章,但是篇幅有限,只描述了技術(shù)原理,現(xiàn)在專(zhuān)門(mén)寫(xiě)一篇網(wǎng)絡(luò)實(shí)驗(yàn),便于更好的理解 RSTP 和 MSTP 相關(guān)內(nèi)容。 RSTP 功能替代接口我們用 3 臺(tái)交換機(jī)搭建一個(gè)網(wǎng)絡(luò)環(huán)境,部署 RSTP 對(duì)網(wǎng)絡(luò)進(jìn)行破環(huán),驗(yàn)證 RSTP 新增的替代接口角色。替代接口是根接口的備份。 實(shí)驗(yàn)拓?fù)?/h2>實(shí)驗(yàn)要求三臺(tái)交換機(jī)( SW )配置 RSTP 功能,在 SWC 上使用命令查看替代接口。 操作步驟- 三臺(tái) SW 按照網(wǎng)絡(luò)拓?fù)鋱D,對(duì)相應(yīng)的接口進(jìn)行連接。SW 默認(rèn)的生成樹(shù)工作模式是 MSTP 。
- 在三臺(tái)交換機(jī)上分別配置工作模式從默認(rèn)的 MSTP 改成 RSTP ,并且啟動(dòng) STP 功能。stp mode 命令用來(lái)修改交換機(jī)的工作模式。
功能驗(yàn)證- 在設(shè)備上使用 display stp 命令查看 RSTP 狀態(tài) ,發(fā)現(xiàn) SWB 的 MAC 地址最小,選舉為根橋。SWB 的橋 ID 是 32768.4c1f-cc61-1681,其中 32768 是 SWB 的優(yōu)先級(jí)值,4c1f-cc61-1681 是 SWB 的 MAC 地址。根橋的 MAC 地址是 SWB 的 MAC 地址,說(shuō)明 SWB 就是根橋。
- SWC 有兩個(gè)接口接入網(wǎng)絡(luò),由于從 GE0/0/2 到達(dá)根橋的 RPC 更小,因此 GE0/0/2 成為 SWC 的根接口,GE0/0/1 成為替代接口。使用 display stp brief 命令查看 RSTP 接口的狀態(tài) 。Role 為 ROOT 時(shí)表示根接口,Role 為 DESI(即 Designated )時(shí)表示指定接口,SWB 的 GigabitEthernet0/0/1 為 ALTE(即 Alternate )表示替代接口。接口狀態(tài)符合預(yù)期,實(shí)驗(yàn)成功!
- 還可以抓包查看替代接口的 BPDU 報(bào)文,詳細(xì)分析字段代表的含義,深入理解 RSTP 。
備份接口RSTP 新增了備份接口角色,是指定接口的備份,搭建網(wǎng)絡(luò)實(shí)驗(yàn)進(jìn)行驗(yàn)證。 實(shí)驗(yàn)拓?fù)?/h2>實(shí)驗(yàn)要求在替代接口的實(shí)驗(yàn)拓?fù)浠A(chǔ)上,新增一臺(tái) HUB ,連接 SWC 的兩個(gè)接口,使用命令查看備份接口。 操作步驟- 按照網(wǎng)絡(luò)拓?fù)鋱D,新增一臺(tái) HUB ,并連接相應(yīng)的接口。對(duì)應(yīng) SWC 來(lái)說(shuō),它的 Ethernet0/0/1 和 Ethernet0/0/2 接口形成環(huán)路,RSTP 能夠檢測(cè)到,并在兩個(gè)接口中選擇一個(gè)阻塞。
功能驗(yàn)證- 在 SWC 中,Ethernet0/0/1 接口的接口 ID 更小,成為指定接口,而 Ethernet0/0/2 接口成為備份接口,備份接口被阻塞。在 SWC 上使用 display stp brief 命令查看接口狀態(tài),接口狀態(tài)符合預(yù)期,實(shí)驗(yàn)成功!
邊緣接口RSTP 新增的邊緣接口角色不參與生成樹(shù)的計(jì)算,當(dāng)邊緣接口開(kāi)啟后,立即切換到轉(zhuǎn)發(fā)狀態(tài)并開(kāi)始收發(fā)流量,而不用 實(shí)驗(yàn)拓?fù)?/h2>實(shí)驗(yàn)要求- 在替代接口的實(shí)驗(yàn)拓?fù)浠A(chǔ)上,新增兩臺(tái) PC ,分別連接 SWC 的兩個(gè)接口,其中一個(gè)接口使用默認(rèn)配置,觀察接口狀態(tài)。
- 另一個(gè)接口配置邊緣接口,查看接口狀態(tài)變化。
操作步驟- 新增 PC1 ,連接 SWC 的 Ethernet0/0/1 接口。
- 在 SWC 的 Ethernet0/0/2 接口使用命令 stp edged-port enable 配置成邊緣接口。新增 PC2 連接 Ethernet0/0/2 接口。
功能驗(yàn)證- 新增 PC1 時(shí),使用display stp brief 命令查看 SWC 的 Ethernet0/0/1 接口狀態(tài)。未配置邊緣接口時(shí),接口狀態(tài)從 Discarding 到 Learning 15秒時(shí)間,Learning 再到 Forwarding 15秒時(shí)間。
- 新增 PC2 時(shí),使用display stp brief 命令查看 SWC 的 Ethernet0/0/2 接口狀態(tài)。配置邊緣接口時(shí),接口直接切換到 Forwarding 狀態(tài)并開(kāi)始收發(fā)數(shù)據(jù),而不用經(jīng)歷 Forward Delay 時(shí)間。
RSTP 保護(hù)功能BPDU 保護(hù)( BPDU Protection )邊緣接口收到 BPDU 后,會(huì)變成一個(gè)普通 RSTP 接口,可能會(huì)引發(fā)網(wǎng)絡(luò)中的 RSTP 重新計(jì)算,對(duì)網(wǎng)絡(luò)造成影響。 為了防止誤接交換機(jī)或 BPDU 攻擊對(duì)網(wǎng)絡(luò)造成影響,可開(kāi)啟 BPDU 保護(hù)功能解決問(wèn)題。如果邊緣接口收到 BPDU ,那么交換機(jī)立馬把接口關(guān)閉,同時(shí)觸發(fā)告警。 實(shí)驗(yàn)拓?fù)?/h2>實(shí)驗(yàn)說(shuō)明對(duì)比未開(kāi)啟 BPDU 保護(hù)功能和開(kāi)啟 BPDU 保護(hù)功能的區(qū)別。 操作步驟- 未開(kāi)啟 BPDU 保護(hù)時(shí):在替代接口的實(shí)驗(yàn)拓?fù)浠A(chǔ)上,SWC 的 Ethernet0/0/1 接口開(kāi)啟了邊緣接口功能,未開(kāi)啟 BPDU 保護(hù)功能。新增一臺(tái) SWD 連接 SWC 的 Ethernet0/0/1 接口。SWD 的 MAC最優(yōu),在 SWC 上使用 display stp brief 和 display stp 命令查看,根橋從 SWB 變成了 SWD ,所有接口狀態(tài)也發(fā)生相應(yīng)變化。
- 開(kāi)啟 BPDU 保護(hù)時(shí):在 SWC 執(zhí)行 stp bpdu-protection 命令,即所有邊緣接口開(kāi)啟 BPDU 保護(hù)功能,立馬產(chǎn)生告警信息。在 SWC 上使用 display stp brief 和 display stp 命令查看,根橋又從 SWD 變成了 SWB ,Ethernet0/0/1 接口關(guān)閉。
功能分析- 邊緣接口收到 BPDU 后,變成一個(gè)普通 RSTP 接口,由于 SWD 的 MAC 最小,RSTP 重新計(jì)算,SWD 成為根橋,所有交換機(jī)的接口狀態(tài)進(jìn)行相應(yīng)改變,產(chǎn)生網(wǎng)絡(luò)震蕩。
- 邊緣接口開(kāi)啟 BPDU 保護(hù)功能后,收到 BPDU 就會(huì)把接口關(guān)閉,同時(shí)產(chǎn)生告警。
- 邊緣接口關(guān)閉后不會(huì)自動(dòng)恢復(fù),需要在接口上執(zhí)行 undo shutdown 命令,或者使用 restart 命令恢復(fù)接口。
根保護(hù)( Root Protection )完成收斂的 RSTP 網(wǎng)絡(luò)中,如果根橋發(fā)生變化,那么勢(shì)必導(dǎo)致 RSTP 重新計(jì)算,網(wǎng)絡(luò)轉(zhuǎn)發(fā)受到影響。通常會(huì)在根橋的指定接口開(kāi)啟根保護(hù)功能,如果收到更優(yōu)的 BPDU ,就會(huì)丟棄這些 BPDU ,并把接口切換到丟棄狀態(tài)。 在替代接口實(shí)驗(yàn)的基礎(chǔ)上,新增一臺(tái) SWD ,接入到根橋 SWB 的 Ethernet0/0/1 接口,SWD 的 MAC 最優(yōu)。 實(shí)驗(yàn)拓?fù)?/h2>實(shí)驗(yàn)說(shuō)明對(duì)比未開(kāi)啟根保護(hù)功能和開(kāi)啟根保護(hù)功能的區(qū)別。 操作步驟- 未開(kāi)啟根保護(hù)時(shí):在替代接口的實(shí)驗(yàn)拓?fù)浠A(chǔ)上,新增一臺(tái) SWD 連接 SWB 的 Ethernet0/0/1 接口。SWD 的 MAC 地址最優(yōu),在 SWB 上使用 display stp brief 和 display stp 命令查看,根橋從 SWB 變成了 SWD ,SWB 上的所有接口狀態(tài)也發(fā)生相應(yīng)變化。
- 開(kāi)啟根保護(hù)時(shí):在 SWB 的 Ethernet0/0/1 接口上使用 shutdown 命令關(guān)閉接口,然后使用 stp root-protection 命令配置接口的根保護(hù)功能,再使用 undo shutdown 命令開(kāi)啟接口。使用 display stp brief 和 display stp 命令查看,根橋是 SWB ,SWB 的 Ethernet0/0/1 接口變成丟棄狀態(tài),并且 Protection 字段顯示為 ROOT 。
功能分析- 未開(kāi)啟根保護(hù)時(shí),mac 地址更優(yōu)的 SWD 接入 SWB 的 Ethernet0/0/1 接口后,RSTP 重新計(jì)算,SWD 成為根橋,接口狀態(tài)進(jìn)行相應(yīng)改變,并產(chǎn)生網(wǎng)絡(luò)震蕩。
- SWB 的 Ethernet0/0/1 接口開(kāi)啟根保護(hù)后,會(huì)忽略收到的 SWD 的更優(yōu) BPDU ,并把接口切換到丟棄狀態(tài)。
環(huán)路保護(hù)( Loop Protection )當(dāng)鏈路出現(xiàn)單向故障或網(wǎng)絡(luò)擁塞時(shí),非根橋的根接口或替代接口收不到 BPDU ,導(dǎo)致交換機(jī)重新計(jì)算 RSTP ,接口會(huì)成為指定接口并切換成轉(zhuǎn)發(fā)狀態(tài),發(fā)送流量,導(dǎo)致網(wǎng)絡(luò)中出現(xiàn)環(huán)路。 我們可以使用環(huán)路保護(hù)功能來(lái)規(guī)避這個(gè)問(wèn)題。在接口下使用 stp loop-protection 命令開(kāi)啟環(huán)路保護(hù)功能,這個(gè)接口可以是根接口,也可以是替代接口。配置完成后,使用 display stp brief 命令可以看到 Protection 字段顯示為 LOOP 。接口沒(méi)有收到 BPDU 后,會(huì)將接口調(diào)整為指定接口,并保持在丟棄狀態(tài),從而避免出現(xiàn)環(huán)路。 模擬器無(wú)法搭建網(wǎng)絡(luò)環(huán)境,無(wú)實(shí)驗(yàn)內(nèi)容。 拓?fù)渥兏Wo(hù)( TC Protection )網(wǎng)絡(luò)拓?fù)涑霈F(xiàn)變化,TC BPDU 會(huì)泛洪全網(wǎng),TC BPDU 又會(huì)使交換機(jī)執(zhí)行 MAC 地址刪除操作,消耗交換機(jī)大量性能。 交換機(jī)使用 stp tc-protection 命令開(kāi)啟拓?fù)渥兏Wo(hù)功能,交換機(jī)默認(rèn)會(huì)在 2 秒內(nèi)只處理 1 次 TC BPDU ,如果這段時(shí)間內(nèi),收到更多的 TC BPDU ,那么只能在 2 秒后才進(jìn)行處理。 MSTP 功能MSTP 多實(shí)例三臺(tái)交換機(jī)構(gòu)成一個(gè)三角的二層環(huán)路,部署 MSTP 可實(shí)現(xiàn)網(wǎng)絡(luò)的無(wú)環(huán)化。 實(shí)驗(yàn)拓?fù)?/h2>實(shí)驗(yàn)要求VLAN 2 - 10 在 SWA 和 SWC 之間的鏈路傳輸,VLAN 11 - 20 在 SWB 和 SWC 之間的鏈路傳輸。創(chuàng)建兩個(gè)實(shí)例:Instance1 和 Instance2 ,將 VLAN2 至 10 映射到 Instance1 ,將 VLAN11 至 20 映射到 Instance2 ,其余 VLAN 保留在默認(rèn)的 Instance0 里。 把 SWA 規(guī)劃成 MSTI1 的主根橋,SWB 規(guī)劃為次根橋,確保 VLAN2 至 10 的流量在 SWA 和 SWC 之間的鏈路傳輸。將 SWB 規(guī)劃成 MSTI2 主根橋,SWA 規(guī)劃為次根橋,確保 VLAN11 至 20 的流量在 SWB 和 SWC 之間的鏈路傳輸。 操作步驟- 對(duì) SWA 進(jìn)行配置。
使用 stp region-configuration 命令進(jìn)入設(shè)備的 MST 域視圖,在這個(gè)視圖下進(jìn)行 MST 域的相關(guān)配置。region-name 命令用于修改 MST 域名,默認(rèn) MST 域名是設(shè)備的 MAC 地址。默認(rèn)這些命令未生效,需要使用 active region-configuration 命令進(jìn)行激活。stp instance 1 root primary 命令是將 SWA 設(shè)置為 MSTI1 的主根橋,stp instance 2 root secondary 命令是將 SWA 設(shè)置為 MSTI2 的次根橋。 - 對(duì) SWB 進(jìn)行配置。
- 對(duì) SWC 進(jìn)行配置。
功能驗(yàn)證完成所有交換機(jī)配置后,查看 SWC 的接口狀態(tài)。 在 MSTI1 中,SWC 的 G0/0/2 接口處于丟棄狀態(tài),那么 MSTI1 的流量是在 SWA 和 SWC 的鏈路進(jìn)行傳輸。在 MSTI2 中,SWC 的 G0/0/1 接口處于丟棄狀態(tài),那么 MSTI2 的流量是在 SWB 和 SWC 的鏈路進(jìn)行傳輸。結(jié)果符合預(yù)期,實(shí)驗(yàn)成功! 結(jié)尾交換機(jī)開(kāi)啟后,生成樹(shù)協(xié)議有一些參數(shù)會(huì)有默認(rèn)值,不用手動(dòng)、自動(dòng)生成的配置。具體參數(shù)默認(rèn)值如下: 維護(hù) RSTP/MSTP 命令日常網(wǎng)絡(luò)設(shè)備調(diào)試時(shí),不僅要知道配置命令,還需要了解維護(hù)命令,才能完全正確使用 RSTP/MSTP 。 - reset stp [ interface interface-type interface-number ] statistics ,這條命令用于清除生成樹(shù)的統(tǒng)計(jì)信息。
- reset stp error packet statistics ,這條命令用于清除生成樹(shù)協(xié)議的錯(cuò)誤報(bào)文計(jì)數(shù)。
- display stp topology-change ,這條命令用于查看 RSTP/MSTP 拓?fù)渥兓嚓P(guān)的統(tǒng)計(jì)信息。
- display stp [ interface interface-type interface-number | slot slot-id ] tc-bpdu statistics ,這條命令用于查看端口TC/TCN報(bào)文收發(fā)計(jì)數(shù)。
- display stp interface interface-type interface-number | slot slot-id ,這條命令用于查看生成樹(shù)的狀態(tài)信息與統(tǒng)計(jì)信息。
|