S7703与cisco3560通过trunk模式的端口互连,链路无法起来

发布时间:  2016-10-17 浏览次数:  398 下载次数:  0
问题描述

版本信息:

S7703 Version:V2R3C00SPC500

cisco 3560 Version:12.2

组网概述:

S7703做为分公司核心交换机,上挂分公司互联网及去集团广域网,下挂分公司各业务系统;cisco 3560为分公司一区及三区核心交换机,下挂一区及三区各业务子系统,三区及一区指的是分公司下辖机构。S7703通过光口与cisco 3560对接,两设备的端口模式均为trunk模式,透传vlan 104,105,使得分公司核心能够访问一区及三区相关业务。

组网拓扑图:

相关配置脚本:

S7703:

vlan batch 100 to 105

#

interface Vlanif105
 ip address 172.19.19.8 255.255.255.0

#

interface GigabitEthernet1/0/0
 description TO-SanQuHeXin
 port link-type trunk
 port trunk allow-pass vlan 104 105

#

cisco 3560:

interface GigabitEthernet1/0/4
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan 104,105
 switchport mode trunk
!
interface Vlan105
 ip address 172.19.19.14 255.255.255.0

故障现象:

S7703侧光口亮,但协议层down;cisco 3560侧光口指示灯为橘黄色,表明协商速率为100M,但协议层down,链路两端设备端口协商失败。

处理过程

从故障现象可以看出,cisco 3560将速率协商成了100M,但接口为千兆光口,首先可以确定设备两端接口速率协商出现问题。此时我们可以关闭两端设备速率自协商,使得设备两端接口强制千兆速率。配置命令如下:

S7703:interface GigabitEthernet1/0/0
     undo negotiation auto

CISCO 3560:interface GigabitEthernet1/0/4
         speed nonegotiate

配置完成后两端接口速率指示灯显示正常,说明两接口速率协商正常,但协议层均处于down状态。由于是不同厂商间交换机对接,所以在封装vlan时需使用公有协议dot1q,而华为设备默认使用dot1q,所以需更改思科设备的封装方式,但之前已将cisco设备g1/0/4口的封装模式更改为dotlq,所以此项可以排除。

经查询思科有关trunk协商的知识发现,在思科设备中配置为trunk模式的接口会运行思科的私有协议DTP(动态中继协议),用于自动协商指定交换机之间的链路是否形成Trunk,但华为设备不支持该协议,会导致trunk中继协商失败。所以此时应该在cisco 3560上关闭DTP自动协商,手动将g1/0/4配置成为trunk模式。配置命令如下:

CISCO 3560:

interface GigabitEthernet1/1/4
 switchport nonegotiate

配置完成后,观察两接口状态,发现两者协议层均up,ping两端互联地址均可ping通。

根因

根因:

由于思科设备在开启端口的trunk模式时会运行其私有协议DTP自动协商链路模式,导致S7703在与其对接时无法协商成功。

解决方案

当华为交换机需与思科交换机对接并需要将各自端口模式配置为trunk模式时,建议关闭两端端口自协商,且思科设备关闭DTP协商。配置命令如下:

华为设备:

interface GigabitEthernet x/x/x
 undo negotiation auto
 port link-type trunk
 port trunk allow-pass vlan xx

思科设备:

interface GigabitEthernetx/x/x
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan xx
 switchport mode trunk
 switchport nonegotiate
 speed nonegotiate

END