802.1s
ios
用來解決802.1d鏈路防環致使一條鏈路浪費,可是用每vlan生成樹(思科默認),當vlan數量巨大時很差維護
api
繼承全部802.1w的全部功能
網絡
特色:每一個生成樹一個實例,把數個vlan加到一個實例
session
配置ide
新增vlan 工具
vlan 10-30 oop
1,SW1-SW4:
學習
spanning-tree mode mst
spa
2,SW1-SW4:3d
spanning-tree mst configuration
name test
revision 1(能夠不配,默認0)
instance 1 vlan 10-20
instance 2 vlan 21-30
3,sho spanning-tree
sho spanning-tree mst config
bound(RSTP)邊緣端口,還沒進入交互狀態
MST Regions 域
根據3項
name
revision number
vlan association table
802.1w和802.1d之間交互
w去適應d,失去w快速收斂的特性,以匹配d
802.1d和802.1s
802.1s用域內bridgeID最優的和外部交互,使用instance0 和域外交換機交互
802.1S和802.1w
使用instance0和外部pvst每一個數交互
邊緣端口 bound(RSTP)邊緣端口,就是802.1s和其餘生成樹交互的端口
需求 :
SW1-4 vlan 10-30 全部交換機啓用20個vlan
SW1 做爲實例 1 的根
spanning-tree mst 1 root primary
SW2 做爲實例 2 的根
spanning-tree mst 2 root primary
sho spanning-tree
SW3 SW4 配置爲RSTP
spanning-tree mode rapid-pvst
SW3和SW4就會維護 20個樹 sho spanning-tree
SW1-2 的f0/5只有3個bpdu (默認實例0和定義的兩個實例)
sho spann int f0/5 detail
SW3 SW4有 21個BPDU 默認vlan1 和定義的20個vlan
sho spann int f0/1 detail 這些BPDU都是SW1 的實例0的BPDU
能夠在SW1修改實例0 的優先級 驗證
SW1 spanning-tree mst 0 priority 4096
SW3 sho spann int f0/1 detial
注意:思科交換機,在有多種生成樹時,必須讓MSTP中的根成爲網絡的根,即上圖必須SW1爲根
當把SW3優先級設置爲0時,就會報錯
sho spann mst configur 查看MSTP配置
########################################################################################### 生成樹 feature
1,針對portfast口(portfast口up後立刻進入forward;portfast口up/down不會發送TCN影響MAC表;必須接終端的access口)
BPDU Guard
BPDU Filter
當portfast口配置在了非access口或是交換機之間配置了。在收到BPDU後portfast功能就會消失。
爲了防止portfast口收到BPDU ,致使功能消失
把portfast口配置BPDU guard,配置後收到BPDU就將接口disabled
接口配置BPDU Guard:
int f0/5
spanning-tree bpduguard enable
sho int f0/5 當接口收到BPDU後就會down
全局配置 errdisable recovery cause bpduguard 重啓up 接口緣由
errdisable recovery interval 30 down30s後up
建議配置了 BPDU guard後配置 重啓接口
全局配置BPDU Guard 只對portfast口生效
spanning-tree portfast bpduguard default
————————————————————————————————————————————
BPDU Filter
當配置portfast口之後,就麼必要往下發生BPDU了,全部能夠在portfast口過濾BPDU
接口下配置 (不收也不發BPDU)
接口下配置沒限制
全局下配置 (只收不發BPDU【不發是指:先發10個後,纔不發】) 只對portfast口生效
spanning-tree portfast bpdufilter default
當同時在接口配置了 BPDU guard和BPDU filter 。filter會生效覆蓋guard。因此同時配置時在全局配置
由於若是配置在接口上,當filter接口錯誤的連到了交換機上,不收BPDU就會一直up就會致使環路
+++++++++++++++++++++++++++++++++++++++++++++
rootguard
保證網絡根不被搶佔。
上圖,爲防止D搶佔A成爲根,在C的接口配置rootguard,就保證C與D的接口不會成爲根端口,即D不會成爲根,若是D有成爲根,就會guard C的接口
SW1-SW3
1, sho spann vlan 1 默認SW1 爲根
2,更改SW4 成爲根
spann vlan 1 priority 0
3,SW1-SW4 sho spann vlan 1 sw4 爲根
4, SW2配置root guard
int f0/1
spanning-tree guard root
當SW4不搶佔根時,接口會本身從新UP
rootguard 是基於vlan的
#########################################################################
loopguard
上圖,B C之間單向故障(如光纖斷一根)C能夠去往B。B不能去往C。C不在收到更優的來自B的bpdu時,就會一直等到BPDU超時(20s),以後就會UP本來block的接口。就造成環路。
LOOPgard 做用就是當由於收不到BPDU而致使接口UP時,阻塞該端口,防止UP
實驗演示:
使用BPDUfilter 模擬單向故障
1,SW1 爲根。SW2 爲備份根
SW1:
spanning-tree vlan 1 root primary
SW2:
spanning-tree vlan 1 root secondary
sho span vlan 1
2, SW2:
int f0/2
span bpdufilter enable
sho spn int f0/2 detial
sho process cpu 此時CPU佔用0%
3,SW1:
int vlan 1
ip add 12.1.1.1 255.255.255.0
no shu
sho process cpu 佔用率偏高
環路緣由:無端ARP
4,配置loopguard
SW3:
int f0/2
panning-tree guard loop
sho spann int f0/2 detail 老化時間到時也不會UP
sho process cpu
LOOPGUARD全局配置 只對 點對點 接口生效
spanning-tree global-default loopguard default
備註:致使loopguard生效的緣由是,沒有收到BPDU,達到BPDU最大存活時間而UP端口,全部當A B鏈路故障須要C端口UP時,C會收到來自B的次優BPDU。此時是不影響端口UP的
loop guard 與其餘STP 特性協同工做
- root guard
rootguard與loopguard 是相互對立,排斥的
不能同時寫在同一個端口上。後配置的會覆蓋以前配置的
rootguard 在指定端口上使用,他是不容許這個端口成爲非指定端口
loopguard在非指定端口上使用,他不容許端口在 max_age 超時後成爲指定端口
- uplink fast & backbone fast
二者對loopguard是透明的。當 backbone fast 跳過max_age 從新收斂時,不會觸發 loopguard特性
- share-link
loop guard 不能再共享鏈路上啓用。若在共享鏈路上使用loop guard,從鏈接到共享鏈路的主機那裏的流量可能會被阻塞。
- multiple spanning tree(MST)
loopguard 在MST環境中能正確工做
以上 生成樹 完結!!!!
#########################################################################################
UDLD (也是用於解決單向故障的)
- 與生成樹無關,不是用BPDU報文。使用UDLD協議本身的報文
- UDLD協議的報文主要包含 1,設備ID;2,端口ID。當設備收到的UDLD報文包含本身的設備 ID和 端口ID就是正常。
- 報文發送間隔 15s(在沒收到正確UDLD報文以前,是 7s間隔)。若丟失3個echo報文,即認 爲鏈路 故障。
- 在fiber接口默認啓用。電口默認禁用狀態。
UDLD 兩種工做模式:
- normal mode 發現問題後不處理
- aggressive mode 發現問題後 每一秒發一個報文。連續發8個,若8個全掉了,就 disable端口
配置 (光口默認開啓)
電口:
全局下 udld { enable | aggressive }
接口下 udld port [ aggressive ]
關閉:
no udld enable
no udld port
查看 show udld f0/2
建議在全局配置
compareing loopguard & UDLD
###############################################################################
Span
span技術主要是用來監控交換機上的數據流
分爲兩種:
本地span --local switched port analyzer (SPAN)
遠程span --remote span (RSPAN)
SPAN 技術 把交換機上想要被監控的端口 (受控端口) 的數據流copy一份,發送給鏈接在監控端口的流量分析儀,好比cisco的IDS 或 裝sniffer工具的PC.
受控端口和監控端口能夠在同一臺交換機上 (本地span),
也能夠在不一樣交換機上(遠程span)
SPAN 術語
span session -- span會話
span會話是指一組受控端口與一個監控端口之間的數據流。監控端口最好是>= 受控端口的帶 寬,不然肯能會出現丟包的狀況。
source port -- span會話的源端口:monitored port- 即受控端口
destination port -- span會話的目的端口:monitoring port-- 即監控端口
span traffic -- span的流量
本地span能夠監控全部的流量,包括multicast、bride protocol data unit(BPDU),CDP, vtp,DTP,stp,pagp,lacp packets
traffic types-- 流量類型
receive (Rx) span 受控端口的接收偶流量,transmit(Tx) span 受控端口的發送流量,
both一個受控端口的接收和發送流量。
reflector port -- 反射端口
反射端口只在RSPAN 中使用,與RSPAN 的中的受控端口在同一臺交換機上,是用來將本地的受控端口流量 轉發到RSPAN 中的另外一臺交換機上的遠程監控端口的方法,反射端口也只能是一個實際的物理端口,他不屬於任何vlan。
PPAN 配置
配置span會話的源端口
全局:monitor session {session_num} {source {interface type/num} | {vlan num}} [ , | - | rx | tx | both ]
配置span會話的目的端口
全局 monitor session {session_num} {destination {interface type/num} [ , | - | {vlan num}]}
配置實例:
switch(config)#mointor session 1 source int f0/10
//設定span的受控端口
switch(config)#monitor session 1 destination int f0/20
//設定span的監控端口
switch(config)#monitor session 1 source int f0/11 - 13
//添加span的受控端口
switch(config)#monitor session 1 destination int f0/20 ingress vlan 5
//設定span的監控端口並啓用二層轉發
switch# sho monitor
session 1
type : local session
source ports :
both : f0/10 - 13
destination ports :f0/20
encapsulation : native
ingress : enable,defualt vlan = 5 //運行正常流量進入
ingress encapsulation : nitive
本地span 注意的問題:
1,源端口不能同時配爲目的端口
2,源端口能夠屬於不一樣vlan
3,端口通道接口(etherchannel)可配爲源端口,但不能配爲目的端口
4,一個目標端口只能作一個span會話的目標端口
5,ios交換機中二層,三層接口均可做爲源和目的端口
6,目標端口不參與生成樹實例
valn-base span
基於vlan的span 只能監控vlan中全部活動端口 接收 的流量(only receivee RX);
3550交換機是隻能監控RX。3750交換機出入方向RX.TX均可以
若是監控端口在此vlan內,則此端口不在監控範圍內
switch(config)#monitor session 2 source vlan 101 - 102 rx
switch(config)#monitor session 2 destination int f0/30
switch# sho monitor session 2
session 2
tyep:local session
source vlans:
rx only:101-102
destination ports:f0/30
###########################################################################################
########### remote span ##############
普通RSPAN和加強的RSPAN區別:
普通RSPAN是基於二層
增城RSPAN是基於3層tunnel的
配置思路:
上圖 SWD 要監控 SWA 的RX。SWB的RX TX
配置專門的vlan用來承載監控流量,假設是vlan100.
SWA 的source是A1 A2
destination是vlan100
SWB 的source是B1 B2 B3
destination是vlan100
SWD 的source是vlan100
destination是D2
SW D:
switch(config)#vlan 100
switch(config-vlan)# remote-span
switch(config)#monitor session 1 source remote vlan 100
switch(config)#monitor session 1 destination int d2
SW C:
switch(config)#vlan 100
switch(config-vlan)#remote-span
SW A:
switch(config)#vlan 100
switch(config-vlan)#remote-span
switch(config)#monitor session 1 source int a1-a2 rx
switch(config)#monitor session 1 des remot vlan 100
SW B:
switch(config)#vlan 100
switch(config-vlan)#remote-span
switch(config)#monitor session 1 source int b1-b3 both
switch(config)#monitor session 1 des remot vlan 100
RSPAN介紹
1,rspan支持不一樣交換機上的源端口,源vlan,目標端口。可跨網絡遠程監控多臺交換機
2,每一個SPAN會話都由一個RSPAN vlan來承載流量。即每一個RSPAN都有一個RSPAN vlan
3,每一個RSPAN遠程交換機的源端口,源vlan所在交換機都有一個相同的RSPAN vlan
遠程交換機先把源端口和源vlan的數據包, 即流量複製到本地配置的RPSAN vlan上。RSPAN vlan 再經過幹線把流量數據包傳到目的交換機上。
目的交換機再把RAPNA VLAN 的數據包流量複製到目的端口
4,一個vlan爲RSPAN vlan時,本地span就不能監控RSPAN VLAN 的流量了
遠程SPAN注意的問題:
1,從源到目的沿路全部設備都要配置 RPAN vlan。vlan編號沒有限制
2,中間設備也須要指出RSPAN vlan
3,rspan vlan 只能承載 rspan流量
4,除了承載rspan vlan的端口外,不要把任何端口配置到rspan vlan中。
5,rspan 源端口和目的端口必須配置在不一樣的設備
6,不要將rspan vlan做爲vspan的源
7,不要將接入端口分配給rspan vlan
8,rspan vlan不學習mac地址
9,rspan 不支持BPDU監控
ERSPAN介紹 (加強)
erspan概念
1, 加強的rspan,與rspan相似。支持監控位於不一樣交換機上的端口,源vlan,目標端口可誇三層邊界。每一個erspan會話經過GRE隧道承載span流量。源和目標交換機必須硬件上支持GRE。
2,erspan特徵和規則
每一個erspan源會話只能選擇端口或vlan做爲源,而不能同時選擇二者
erspan源會話複製源端口或源vlan的流量,並經過可路由的GRE封裝分組將其轉發到ERSPAN 目標會話。
源端口和源vlan與目標IP地址,erspan ID編號向關聯;目標端口和源IP,erspan ID編號相關聯。
配置::::
源交換機
6506(config)#monitor session 1 type erspan-source
6506(config-mon-erspan-src)#source vlan 10
6506(config-mon-erspan-src)#destination
6506(config-mon-erspan-src-dst)#ip add 10.100.100.1
6506(config-mon-erspan-src-dst)#erspan-id 1
6506(config-mon-erspan-src-dst)#origin ip add 10.10.10.1
6506(config-mon-erspan-src-dst)#exit
6506(config-mon-erspan-src)#no shut
目標交換機
6506(config)#monitor session 1 type erspan-destination
6506(config-mon-erspan-dst)#destination int gig 7/25
6506(config-mon-erspan-dst)#source
6506(config-mon-erspan-dst-src)#ip add 10.100.100.1
6506(config-mon-erspan-dst-src)#erspan-id 1
6506(config-mon-erspan-dst-src)#exit
6506(config-mon-erspan-dst)#no shut