MSTP多實例的配置


MSTP多實例的配置

這次實驗主要是為了加強對stp生成樹協議中,RP(根端口),DP(指定端口),AP(阻塞端口)的判斷方法;雖然很多時候不需要我們人工判斷,因為當我們吧所有的配置好之后,然后開啟生成樹協議,電腦會自動進行判斷:而我們現在需要對其原理進行詳細的了解:

一、我們先對各種端口進行簡介

根端口(RP):非根交換機去往根橋路徑最優的端口,根端口不可能存在在跟橋上;非根橋上只能存在一個根端口;

 

根端口選舉:按照下面的條件進行比較:

 

設置的優先級(默認優先級都是32768)越小越好——>根路徑開銷RPC:——>路徑上所有出端口開銷的總和 ;越小越好;——>對端BID對端PID(選擇小的) ;——>本端PID;

 

根端口都是接收最優BPDU

 

指定端口(DP):交換機向所連網段轉發BPDU的端口 每個網絡有且只有一個指定端口;但每個交換機上可以有幾個指定端口;

 

指定端口選舉:設置的優先級——>根路徑開銷RPC——> 本端的BID ——>本端的PID;

 

指定端口是發送最優BPDU;

 

預備端口(AP):預備端口將被阻塞,雖然不能轉發用戶數據幀,但是可以接收並處理STP協議幀;

 

 

根橋選舉:ID=橋優先級+MAC地址(BID)越小越優

    PID=端口優先級+端口號  端口開銷  

 

BPDU:網橋協議數據單元:

  BPDU類型:

  a.配置BPDU包含了橋ID 路徑開銷 端口ID等參數

  b.TCN BPDU 是指下游交換機感知到拓撲發生變化時向上游發送的拓撲的變化通知

 

  配置BPDU信息:

  a.根橋ID:由根橋的優先級和MAC地址組成

  b.根路徑開銷:到根橋的最短路徑開銷

  c.指定橋ID:指定橋的優先級和MAC地址組成

  d.指定端口ID:由指定端口的優先級和端口號組成

 

STP定時器:

  message age:配置BPDU在網絡中傳播的生存期

  max age:配置BPDU在設備中能夠保存的最大生存期(20s)

  hello time:配置BPDU發送的周期

  forward delay 端口狀態遷移的延時   

 

 

 

 

實驗過程:其實這一章並沒有那么多問題來探究;所以我也沒有發現有什么坑可以去跳。所以就簡單的對一些常用的命令進行驗證;但是又太無聊了。所以想到哪兒寫到哪兒吧;

 

 

第一步:先按照圖中的配置將所有的ip配置好;(所有的主機IP都是10.0.0.x)、因為都是在二層網絡中,所以他們都存在於同一個網段;因為在模擬器中,將整個系統啟動之后,都會自動啟動stp(默認的mstp);

 

接下來我做的實驗是一個比較陌生的實驗:mstp應用;

 

什么是mstp呢?

多生成樹(MST)使用修正的快速生成樹RSTP)協議,叫做多生成樹協議(MSTP)

 

通過MSTP把一個交換網絡划分成多個域,每個域內形成多顆生成樹,生成樹之間彼此獨立。每個域叫做一個MST域,每個生成樹叫做一個多生成樹實例:MSTI;

mstp由一個或多個mst域組成,每個mst域中可以包含一個或者多個msti。(mst實例)mst域中含有一個vlan映射表。描述了vlan和msti之間的映射關系,默認

情況下所有的vlan都映射到msti0中,msti之間彼此獨。每個Vlan只能對應一個msti,即同一個vlan的數據只能在一個msti中傳輸;而一個msti可能對應多個vlan;

 

Mstp又有什么優勢呢?

rstp和stp有一個共同的缺陷:局域網所有的VLAN共享一顆生成樹,鏈路被阻塞后將不能承載任何流量,造成寬帶浪費,因此無法再vlan間實現數據流量的均衡負載,

 

這個是通過我個人理解畫出來的神作,里面的細節在我腦海中。估計也只有我自己能看懂;

 

 

實驗正式開始:

先獻上我的圖:

 

第一步:將所有的主機進行配置;先不對vlan進行划分,路由器不做任何的配置;看看交換機的狀態:

使用命令:

[LSW1]display stp brief

[LSW1]display stp

 

 

這張圖是通過命令查詢:發現的所有的有關信息並且把重要的信息記錄在圖上了;在這里我們可以看到LSW3是根橋(因為LSW3mac地址最小);然后將所有的端口的類型已經標示在圖上;

 

然后我們選擇測試連通性:使用PC1pingPC4,因為目前沒有對進行vlan設置,所以根據生成樹協議,按照一條固定的路徑傳輸;(圖上黃色路徑表示);並且除了pc1pingPC2,無論是哪個源主機ping哪個目標主機,都會按照同一個路徑傳輸,不會產生環路;

 

這個就像是線性拓撲結構一樣,一根線上串上很多個主機,但是不同的是,這個是一捆電纜,並不會導致端口信號沖突(全雙工模式),所以也不需要“帶有沖突檢測的載波偵聽多路訪問方式”;CSMA/CD;

順便補充下什么是CSMA/CD;

 

 

 

但是我們現在可以很明顯的發現這個網絡的問題所在:

局域網中共享一顆生成樹;一旦鏈路被阻塞后將不能承擔任何的流量;在本圖中LSW1LSW2之間的鏈路,除了能夠轉發配置BPDU,但是不承擔任何流量,所有造成了資源的浪費;

 

第二步:在交換機上進行配置;設置accesstrunk端口;(在這里只做一個示范;)

[LSW1-Ethernet0/0/1]port link-type access

[LSW1-Ethernet0/0/1]port default vlan 10

 

[LSW1-Ethernet0/0/3]port link-type trunk

[LSW1-Ethernet0/0/3]port trunk allow-pass vlan all

LSW1上配置成功之后:

 

LSW2上配置成功之后:

 

LSW3上配置成功之后:

 

 

當所有配置ok后,這下所有不同區域的主機是不能互相訪問的;當然,這個不是我們今天討論的重點:因為今天的主要問題是mstp

如果不對交換機做其他的設置的話:所有的數據都只會按照上圖的生成樹(黃線標注)的方向進行轉發;

 

第三步:對交換機進行配置,實現mstp多實例;

Pc1pc3相互訪問按照圖中紅色的路徑傳輸;

Pc2pc6相互訪問按照圖中藍色的路徑傳輸;

Pc4pc5相互訪問按照圖中黃色的路徑傳輸;

這樣就不會出現鏈路資源浪費的情況,並且能實現負載均衡;

 

 

[LSW1]stp region-configuration   使用這個命令行進入mst域視圖;

[LSW1-mst-region]region-name tea   修改mst域名為huawei

[LSW1-mst-region]revision-level 1   配置修訂級別為1

[LSW1-mst-region]instance 1 vlan 10   將vlan10映射到msti1

[LSW1-mst-region]active region-configuration 使用這個命令激活mst域配置;

 

 

當我們三個交換機都做同樣的配置:開啟mstp 的多實例;

vlan10映射到msti1

Vlan20映射到msti2

Vlan30映射到msti3

 

 

 

但是我們可以通過上述三個圖片中,可以了解到:每個msti實例中,根交換機根本就沒有變化。三個根交換機的根橋都是LSW3

通過抓包:LSW1LSW3之間的鏈路:然后選擇用pc1pingpc3

 

 

發現,本來不應該出現在這條鏈路上的數據也出現在這條鏈路上了。

所以說到底還是沒有實現負載均衡;

因為我還沒有做完實驗啊,哈哈哈哈

 

第四步:設置每個msti實例的根橋;

[LSW1]stp instance 1 priority 0

[LSW2]stp instance 2 priority 0

[LSW3]stp instance 3 priority 0

 

這才是最關鍵的:將不同的msti實例下設置不同的根橋;這樣也不會產生環路同樣也能實現負載均衡;

 

結果我發現:我吧LSW1設置為了根橋。結果它的role竟然沒有變化?!Excuse?!

 

 

然后通過我的分析,原來是我自己只是在LSW1上設置了vlan10msti1的映射,並沒有設置從vlan20msti2的映射和從vlan30msti3 的映射;所以對於msti1來說,只有LSW1一個交換機;這就很尷尬了。所以我們要解決問題:

 

第五步:在每個交換機中設置好所有的實例:

我在每個交換機上都設置了三種映射關系;結果為什么LSW2並沒有MSTID3

 

[LSW2]vlan 30 當我添加上這個命令就成功出線了。

原因:應該是我之前沒有在LSW2上創建需要的vlan30;所以在設置映射的時候,由於msti3並不能映射到沒有設置的vlan30上。所以沒有建立映射;

 

 

因為畫布問題。所以我就截取關鍵地方:

 

  

 

 

 

如上圖所示,三個不同的交換機上面的不同的mtsi實例上面都有着不同的根橋;

 

相當於:vlan10的數據幀會在msti1的生成樹上傳遞

        Vlan20的數據幀會在msti2的生成樹上傳遞

        Vlan30的數據幀會在msti3的生成樹上傳遞

 

現在再次使用PC1pingPC3;抓包LSW1LSW2之間的鏈路:

 

發現從PC1pc3的數據從之前是阻塞的鏈路上傳遞過來的;因此成功的實現;

 

最后一步:對網絡進行優化設置

在這里我想配置端口的root的保護功能:

作用:在制定端口使能根保護功能后,收到的優先級更高的BPDU時(RP根端口)該端口狀態將進入Discarding狀態,不在轉發報文;在經過一段時間(通常為兩倍delay),如果一直沒有收到優先級高的BPDU,該制定端口將會自動回復到正常的Forwarding狀態;但是配置了根保護的端口將不能再配置環路保護功能;

默認情況是關閉的。

 

 

在這里提一下什么是環路保護功能:

     配置交換機設備的根端口或者阻塞端口的環路保護功能:不能配置在制定端口;

     再啟動了環路保護功能后,如果根端口或者阻塞端口長時間收不到來自上游設備的BPDU報文時,則會向網管發出通知信息;此時RP會進入discarding狀態,而阻塞端口保持阻塞狀態,不轉發報文,從而不會形成環路;直到收到了bpdu,才能恢復正常;

   默認情況下也是關閉的;

 

於是乎,我對LSW3上的指定端口進行了根保護:於是不好的事情發生了:

 

這個圖是LSW3配置了端口保護功能的圖:突然發現:本來端口的root保護功能只能配置在指定端口下,但是對於mstid=2的實例來說:e0/0/3是根端口結果也被配置了root保護功能;

     這個是為什么呢?

 

待我問清楚了在寫:

 

 

 2017/3/7                        by tea;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM