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--mst-region]region--mst-region]revision-level -mst-region]instance  vlan    將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保護功能;

     這個是爲什麼呢?

 

待我問清楚了在寫:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章