miwaiwai

导航

二层环路

二层环路带来2个问题:

  1.带来广播风暴

  2.地址漂移

b12c4f45-50b9-4c5d-a903-a121e5299642

 BUM帧:Broadcast,Unknow unicast,multicast,指定广播,未知单播以及组播

关闭生成树:stp disable

开启生成树:stp enable

生成树的作用:

    1.在网络中部署生成树后,交换机之间会进行生成树协议报文的交互并进行无环拓扑计算,最终将网络中的某够(或某些)接口进行阻塞(block),从而打破环路

    2.交换机上运行生成树协议会持续监控网络的拓扑结构,当网络拓扑结构发生变化时,生成树感知到这些变化,并自动做出调整,因此生成树既能解决二层环路问题,也能为网络的冗余性提供一种方案

在实际项目中根桥一般放在汇聚层,如果放在接入层会产生次优路径

Vlan:virtual local area network:即虚拟局域网,是将一个物理的lan在逻辑上划分多个广播域的通信技术

    1.限制广播域

    2.增强局域网的安全性

    3.提供了网络的健壮性

    4.灵活构建虚拟工作组

Vlan标签:

  当一个局域网被划分为我多个vlan时,每个vlan都用一个唯一的vlan标签来标识,vlan标签也称为vlan tag或者802.1q tag,增加了4个字节

df5b4e57-2e12-4055-a5cf-2d9a021e472e

 TPID用来标识标签的类型,16个位,2个字节

PRI:表示优先级,3个bit位,0-7级,当网络拥塞时,可以放行优先级更高的数据帧

CFI:1bit位,用来表示以太网的

VID:vlan id用12个bit位表示。0-4095,0和4095被保留,能够使用的是1-4094

缺省vlan:

  缺省vlan又称为pvid(port default vlan id),交换机处理数据帧都带tag,当交换机收到untagged帧时,就需要给该帧添加tag,添加什么tag,就由接口上的缺省vlan决定

  每个接口都有一个缺省vlan。缺省情况下,所有接口的缺省vlan均为vlan1

接口类型 接收帧处理过程 发送帧处理过程
access接口

判断数据帧的vlan tag

1.无tag,则添加本地pvid tag

2.有tag,若tag与pvid tag相同,则允许该vlan帧进入,否则丢弃

先剥离帧的pvid tag,然后再发送
trunk 接口

判断数据帧帧vlan tag:

1.无tag,则添加本地接口pvid tag,当pvid在允许通过vlan id 列表里面时,

则允许该vlan帧进入,否则丢弃

2.有tag,当该数据帧的vlan id在允许通过的vlan id列表里时,

则允许该vlan帧进入,否则丢弃

判断vlan在本接口的属性:

1.如果是接口的pvid tag,且是该接口允许通过的vlan id时,先剥离帧的pvid tag,然后再发送

2.如果不是接口的pvid tag,且是该接口允许通过的vlan id时,则直接发送,否则丢弃

3.其中一个vlan不带标签出去

 其它的都带标签

hybrid 同上

判断接口是否允许该数据帧通过:

1.如果允许,则发送该数据帧,发送时可以通过命令设置发送时是否携带vlan tag

2.如果不允许,直接丢弃

3.允许多个vlan不带标签出去

 允许多个vlan 带标签出去

 

    

 

 

 

 

 

 

 

 

 

 

 

 

 

vlan划分方式:
  1.接口

  2.mac地址

  3.子网

  5.网络层协议

  5.匹配策略

  如果入方向Untagged帧同时匹配多种划分vlan的方式,则优先级顺序从高到低依次时基于匹配策略划分vlan--》基于mac地址划分或者基于子网划分valn-》基于协议划分vlan-基于接口划分vlan

基于接口划分vlan的优先级最低,也是最常用的vlan划分方式

三层通信方式:

  1.用vlanif

  2.用单臂路由(用的不多)

    通过路由器的子接口实现

  子接口1:

  interface GigabitEthernet0/0/1.10

  dot1q termination vid 10

  ip address 192.168.10.254 24

  arp broadcast enable

  子接口2:

  interface GigabitEthernet0/0/1.20

  dot1q termination vid 20

  ip address 192.168.20.254 24

  arp broadcast enable

VLAN集合:

  在一般的三层交换机中,通常是采用一个VLAN对应一个三层逻辑接口的方式实现广播域之间的互通,这样就导致ip地址的浪费

VLAN aggregation 技术(也称为super vlan ,即vlan聚合)就是在一个物理网络内,用多个vlan隔离广播域,是不同的vlan属于同一个子网

super-vlan:只建立三层接口

sub-vlan:只包含物端口

Vlan聚合配置命令:

  Vlan聚合创建:

    vlan batch 2 to 4 10

    vlan 10

    aggregate-vlan

    access-vlan 2 to 4

    quit

  创建Super-Vlan对应的VLANIF接口,并配置IP地址

    interface vlanif10

    ip address 1.1.1.1 24

  使能vlan间arp代理功能

    arp-proxy inter-sub-vlan-proxy enable

MUX Vlan :multiplex vlan提供了一种通过vlan进行网络资源控制的机制

    分为:1.principle vlan

       2.subordinate vlan

           2,.1separate vlan

           2.2group vlan

MUX VLAN配置命令:

  valn2 :主vlan

  vlan3:互通型从vlan

  vlan4:隔离型从vlan

    vlan batch 2 3 4

    vlan 2

    mux-vlan

    subordinate group 3

    subordinate separate 4

  配置接口加入VLAN,并在接口下使能MUX VLAN功能,并开启ARP代理

    interface 10ge 1/0/1  

    port link-type access

    port default vlan 2

    port mux-vlan enable vlan 2

    interface Vlanif2

    ip address 192.168.2.1 255.255.255.0

    arp-proxy inner-sub-vlan-proxy enable   //vlan内arp代理

    arp-proxy inter-sub-vlan-proxy enable   //vlan间arp代理

QinQ(802.1Q-in-802.1Q)技术是一项扩展vlan的空间技术,也叫做VLAN stacking或者Double Vlan,通过在802.1Q标签报文的基础上再加一层802.1Qtag来达到扩展vlan空间的功能。QinQ分为基本QinQ和灵活QinQ

    QinQ配置命令

      在PE1上创建vlan 100 和vlan 200

        vlan batch 3 4

      在PE1上配置接口 1GE1/0/1 、10GE1/0/2的类型为QinQ

        interface 10ge 1/0/1

        port link-type dot1q-tunnel

        port default vlan 3

        quit

        interface 10ge 1/0/2

        port link-type dot1q-tunnel

        port default vlan 4

         quit

VLAN内二层隔离:

  华为提供了一些VLAN内二层隔离技术,如果端口隔离,MUX VLAN和基于流策略的VLAN内二层隔离等

  1.端口隔离可实现同一个VLAN内端口之间的隔离。用户只需要将端口加入到隔离组中,就可以实现隔离组内端口之间的二层隔离

  2.MUX VLAN(Multiplex VLAN)提供了一种通过VLAN进行网络资源控制的机制。它即可实现VLAN间用户通信,也可以实现VLAN的用户相互隔离

  3.基于流策略(MQC)的VLAN内二层隔离指用户可以根据匹配故障对报文进行流分类,然后通过流策略将流分类和permit/deny动作相关联,使符合流分类的报文被允许或者被禁止,从而实现灵活的VLAN内单向或双向隔离

端口隔离(关键配置)

  配置vlan2中的1口和2口二层隔离

    vlan batch 2

    interface gigabiterhernet 0/0/1

    port-isolate enable

    port default vlan 2

    interface gigabitethernet 0/0/2

    port-isolate enable

    port link-type access

    port default vlan 2

   配置vlanif2接口ARP代理实现三层互通

    interface vlanif2

    ip address 192.168.2.1 255.255.255.0

    arp-proxy inner-sub-vlan-proxy enable

生成树协议简介:

  作用:解决交换网中的环路问题

名称 标准 收敛速度
STP 802.1D 传统生成树协议,收敛慢
RSTP 802.1W 快速生成树协议,收敛快
MSTP 802.1S 多生成树协议,除了快,还能vlan负载均衡

 

      

    

 

 

BPDU报文:

  BPDU报文被封装在以太网数据帧中,目的MAC时组播MAC:01-80-C2-00-00-00

  1.配置VPDU(Configuration BPDU):用来进行生成树计算和维护生成树拓扑的报文

  2.TCN BPDU(Topology Change Notification BPDU):拓扑变化通知BPDU,时在网络拓扑发生变化时,用来通知相关设备的报文

    Root Identifier:当前根桥的BID

    Root Path cost:根路径开销

    Bridge Identifier:本交换机设备的BID

    Port Identifier:发送该BPDU的端口ID

5e415ae6-64b2-441d-8460-4eb62444fe48

 Length:2个字节长度

LLC:逻辑链路层

BPDU:采用的802.3的协议进行封装

STP根桥,根端口,和指定端口选举原则:

  1.根桥选举原则(所有交换机选举一个根交换机)

    首先:比较优先级,优先级小者优先

    其次:比较mac地址,mac地址小者优先

  2.根端口(RP)的选举原则(每个非根交换机选举一个根端口)

    首先:选择根路径开销(Root Path Cost,RPC)最低的端口

    其次:若有多个端口RPC相等,选择对端桥ID最低的端口

    最后:若有多个端口的对端桥ID相等,选择对端端口ID最低的端口

  3.指定端口(DP)的选举原则(每个二层交换机选举一个指定端口)

    首先:选择根路径开销(Root Path Cost,RPC)最低的端口

    其次:若有多个端口的RPC相等,选择桥ID最低的端口

    最后:若有多个端口桥ID相等,选择端口ID最低的端口。

根桥:Root Bridge

  1.STP的主要作用之一是在整个交换网络中计算出一个棵无环的树(STP树)

  2.根桥是一个STP交换网络中的树根

  3.STP开始工作后,会在交换网络中选举一个根桥,根桥是生成树进行拓扑计算的重要参考点,是STP计算得出的无环拓扑的树根

  4.在STP网络中,桥ID最小的设备会被选举为根桥

  在BID的比较过程中,首先比较桥优先级,优先级的值越小,则越优先,拥有最小优先级值的交换机会成为根桥;如果优先级相等,那么再比较MAC地址,拥有最小MAC地址的交换机会成为根桥

开销Cost:

  每一个激活了STP的接口都维护者一个cost值,接口的cost主要用于计算根路径开销,也就是达到了根的开销

  接口的缺省cost除了与其速率,工作模式有关,还与交换机使用的STP cost计算方法有关

  接口带宽越大,则cost值越小

  用户也可以根据需要通过命令调整接口的cost

  开销值是根据dot1t来计算的,也就是802.1t

根路径开销值(Root Path Cost)

  在STP的拓扑计算过程中,一个非常重要的环境就是“丈量”交换机某个接口到根桥的成功,也就RPC

  一台设备从某个接口到达根桥的RPC等于从根桥到该设备沿途所有方向接口的cost累加

  在本列中,SW3从GE0/0/1接口到达根桥的RPC等于接口1的Cost加上接口2的Cost

接口ID(Port ID,PID)

  运行STP的交换机使用接口ID来标识每个端口,接口ID主要用于特定场景选举指定接口

  接口ID由两部分构成的,高4bit是接口优先级,低12bit是接口编号

  激活STP的接口会维护一个缺省的接口优先级,在华为交换机上,该值为128.用户可以根据实际需要,通过命令修改优先级

修改端口stp优先级:

  interface g0/0/1

  stp port priority 16    是16的倍数

BPDU(Brigdge Protocol Data Unit)网桥协议数据单元

  BPDU是STP能够正常工作的根本。BPDU时STP的协议报文。

  STP交换机会交换BPDU报文,这些BPDU报文携带着一些重要信息,正式基于这些信息,STP才能够顺利工作

  BPDU分类:

    1.配置BPDU(Configuration BPDU)

    2.TCN BPDU(Topology Change NOtification BPDU)

  配置BPDU时STP进行拓扑计算的关键,

  TCN BPDU只在网络拓扑发送变更时才会被触发

根端口:

  一个非根桥设备上会有多个端口与网络相连,为了保证从某条非根桥设备到跟前设备的工作路径最优且唯一,就必须从该非根桥设备端口中确定出一个成为根端口 的端口,由根端口作为非根桥设备和根桥设备之间进行报文交换的端口

  在选举出根桥后,根桥仍然持续发送BPDU,而非根桥持续不断的收到根桥发送的BPDU。因此,在所有非根桥上选举一个距离根桥最近的端端(根端口),在网络收敛后,根端口不端的收到来自根桥的bpdu

  即:根端口保证了交换机与根桥之间的工作路径唯一性和最优性

  注意:一个非根桥设备,最多只能有一个根端口

STP计算过程:

  1.选举根桥

    STP在交换网络中开始工作后,每个交换机都会向网络中发送配置BPDU。配置BPDU中包含交换机自己的桥ID

    网络中拥有最小桥ID的交换机成为根桥

    在一个连续的STP交换网络中只会存在一个根桥

    根桥的校色是可抢占的

    为了确保交换网络的稳定,建议提前规划STP组网,并将规划为根桥的交换机的桥优先级设置为最小值0

  2.选举根端口

    在每台非根桥网络交换机上选举一个根接口

    每一台非根桥交换机都会在自己的接口中选举出一个接口

    非根桥交换机上有且只有一个根接口

    当非根桥交换机有多个接口接入网络中时,根接口是其收到最优配置BPDU的接口

    可以形象地理解为,根接口是每台非根桥上朝向根桥的接口

    根端口是离根桥最近的端口,是接收根桥的BPDU

    选举过程:

      1.交换机有多个端口接入网络,各个端口都会收到BPDU报文,报文中会携带“RootID ,RPC,BID,PID”等关键字段,端口会针对这些字段进行PK

      2.首先比较根路径开销(RPC),STP协议把根路径开销作为确定根端口的重要依据。RPC值越小,越仙优先,因此交换机会选RPC最小的端口作为根端口

      3.当RPC相同时,比较上行交换机的BID,即比较交换机各个端口收到的BPDU中的BID,值越小,越优先,因此交换机会选上行设备的BID最小的端口作为根端口

      4.当上行交换机BID相同时,比较上行交换机的PID,既比较交换机各个端口收到的BPDU中的PID,值越小,越优先,因此交换机会选上行设备PID最小的端口作为根端口

      5.当上行交换机的PID相同时,则比较本地交换机的PID,即比较本端交换机各个端口各自的PID,值越小,越优先,因此交换机会选举PID最小的端口作为根端口

      1》rpc比较

      2》对比对端BID

      3》比较对端PID

      4》比较本端PID

  3.指定端口:用来发BPDU的端口

      1.根端口选举出来以后,非根桥会使用其在该接口收到最优BPDU进行计算,然后将计算得到的配置BPDU与除了根接口之外的其他所有接口所收到的配置BPDU比较

           如果前者更优,则该接口为我指定端口

            如果后者更优,则该接口为非指定接口

      2.一般情况下,根桥的所有接口都是指定接口

      1》用自己交换机的根端口rpc和这条链路上对端口的根端口rpc进行比较

      2》比较本端的BID

      3》比较PID

  

根端口只接收BPDU报文,它不发送,

指定端口只发BPDU,但是不接收

非指定端口被阻塞:

    一台交换机上,即不是根接口,又不是指定接口的接口称为非指定接口

    STP操作的最后一步就是阻塞网络中的非指定端口,这一步完成后,网络中的二层环路就此消除,阻塞就是不发业务报文

状态名称 状态描述
禁用(Diable) 该接口不能收发BPDU,也不能收发业务数据帧,例如接口为down
阻塞(Blocking) 该接口被STP阻塞,处于阻塞状态接口不能发送BPDU,但是会持续侦听BPDU,不能收发业务数据帧,也不会进行mac地址学习
侦听(Listening) 当接口处于该状态时,表面STP除服认定该接口为根接口或者指定接口,但接口依然处于STP计算的过程中,此时接口可以收发BPDU,但是不能收发业务数据帧,也不会进行MAC地址学习
学习(Learning) 当接口处于该状态时,会侦听业务数据帧(但是不能转发业务数据帧),并且在收到的业务数据帧后进行mac地址学习
转发(Forwarding) 处于该状态的接口与正常地法守法业务数据帧,也会进行BPDU处理,接口角色是根接口或者指定接口进入转发状态

 

 

 

 

 

 

8b54934a-955f-431b-90cb-a7b4f21f5e19

 拓扑变化-根桥故障

  根桥故障恢复过程:

    1.sw1根桥发生故障,停止发送BPDU报文

    2.sw2等待MAX age计时器 20s超时,从而导致已经收到的BPDU失效,又接收不到根桥发生的新的bpdu报文,从而得知上游出现故障

    3.非根桥会互相发生配置BPDU,重新选军新的根桥

    4.经过重新选举后,sw2的a端口经过两个forward delay(15s)时间恢复转发状态

    非根桥会在bpdu老化之后开始根桥的重新选举

    根桥故障会导致50s左右的恢复时间

 

 

 

 

 

 

  

 

posted on 2026-09-23 16:54  米歪歪  阅读(3)  评论(0)    收藏  举报