问题描述
核心交换机S5700的GE0/0/1接口下连S3700A的GE0/0/1接口,S3700A的GE0/0/2接口下连S3700B的GE0/0/1接口。
S5700配置VLAN 2,3,4,5,6,7,100,并配置了相应的三层接口,GE0/0/1为Trunk模式,并配置为允许 全部VLAN通过(port trunk allow-pass vlan all)。S3700A配置了VLAN 2,3,4,100,GE0/0/1和GE0/0/2为Trunk模式,并配置为允许全部VLAN通过。S3700B配置了VLAN 5,6,7,100,GE0/0/1为Trunk模式,并配置为允许全部VLAN通过。
VLAN 100为管理VLAN。交换机都没有启用GVRP协议。拓扑图如下:
S3700A下的PC机均可以与S5700下的PC互通; 而S3700B的VLAN5、VLAN6、VLAN7的PC不能与S5700的VLAN5、VLAN6、VLAN7的PC互通,但VLAN100的PC可以与S5700下VLAN100的PC互通。
排障过程
从现象分析,因为S3700B的VLAN100中PC能与S3700A的VLAN100中PC正常通信,说明VLAN100数据帧在Trunk链路上能够正常传递,所以首先排除物理线路故障可能性。
但VLAN5、VLAN6、VLAN7的PC不能互通,需要查看相关配置。
在S3700B上采用display port vlan active命令查看GE0/0/1与VLAN的对应信息,发现允许通过的VLAN为5 to 7,100(如图2所示)。在S3700A上也采用display port vlan active命令查看GE0/0/1和GE0/0/2与VLAN的对应信息,发现允许通过的VLAN为2 to 4,100,而没有VLAN 5,6,7(如图3所示)。
(图2)
(图3)
至此原因找到了,是因为S3700A上没有配置VLAN 5、6、7。
原因分析
S3700A的GE0/0/1和GE0/0/2端口虽然配置了port trunk allow-pass vlan all,但其实是允许本交换机中配置的VLAN通过,而不是允许本交换机没有的VLAN通过。这可以通过查看接口与VLAN的对应信息发现。
解决方案
在S3700A上手工增加VLAN5、VLAN6、VLAN7后,故障消失。配置过程及最终接口与VLAN的对应信息如图4所示。
(图4)
建议与总结
1、中间交换机一定要创建所要透传的VLAN。
2、display port vlan active是VLAN故障排除中很重要的命令,可以看出端口实际通过哪些VLAN报文。