Hi!欢迎光临陕西省的权威思科、华为、Oracle、红帽、深信服、微软认证培训中心!
| 029-88235527
您现在所在位置:首页 > 新闻资讯 > 最新资讯 >

【干货】STP导致链路中断问题

发布日期:2019-10-16 17:00:14点击次数:

分享到:
  使用STP协议,为的是解决环路问题,然而在特殊情况下,反而会导致链路被阻断,业务中断。
【干货】STP导致链路中断问题

  某日,一用户反应,两台核心之间出现异常现象,直连时不通,但是通过一台交换机中转就通了。wKiom1kk4hOArM2aAABEI7dkaCg153.jpg-wh_50

  上图中,二层交换机本来是作为核心A的下级交换机,接了大量服务器,网关都在核心A上,核心A与核心B之间为三层连接,互指路由通讯。改造前的结构明显不合理,客户决定将核心直接互联,但是互联后,直连接口无法PING通。线缆,接口配置都已检查过均没有问题。

  到达现场,首先依旧从线缆及接口配置检查开始,将笔记本配置为核心A地址与核心B互联,通;反之也通。排除线缆及接口配置问题。

  第二步,在核心A上检查ARP表,空白,没有对端的ARP表项。

  第三步,接口下无任何针对对端MAC的限制策略,没有IP+MAC绑定

  第四步,检查STP状态,发现STP将核心A与核心B的互联口阻断。

  直接原因找到,但是从眼前的拓扑结构来说,不应该阻断接口,换一种情况,如果核心A与核心B之间确实还有一条没有找到的线路,那么线路中间串一个二层交换机,为什么就不会阻断接口了,而且业务是正常的,没有出现被环路影响的情况。核心A与核心B之间是三层互联,使用路由通信,本身也就不会有二层环路。

  下面再举个例子说明一下

  wKiom1kk6JzjPXkdAAAVQTEvgbA100.jpg-wh_50

  两台交换机两个线互联,两边的G0/0/1口属于vlan10,两边的G0/0/2口属于vlan20,这种情况下是否是环路,如果开启STP会出现什么情况。

  从实际效果来说,这不是环路,vlan10和vlan20内的广播报文是不会传到对方vlan内的,这也是划分vlan的主要目的之一。但是开启了STP后,是会阻断一个口的。

  这里最关键的一点就是,STP报文与vlan无关,它是协议报文,不论接口下划分什么类型,放行或阻断什么vlan都不会阻碍它的传递。这也就解释了上图的现象。

  那么返回最初的问题,接口被阻断的原因知道了,为什么中间串了二层交换机就正常了,其实也狠简单,那台二层交换机没有开启STP协议,收到STP报文后就直接丢弃了,所以核心A与核心B在STP这个层面里感知只有一条线路是互联的。

  最后,那条不知道隐藏在哪里的线路依旧没有找到,也许那中间又串了几台交换机。这个故障其实是可以避免的,在进行网络设计及改造的时候,交换机之间在逻辑上应该要保证只有一条线路,可以多口进行捆绑。合理、规范的设计可以为后期的网络运维避免很多的疑难杂症,切记切记。