cisco的VSS的确是一项目非常好的技术,但是配置VSS的时候一定要注意引擎、板卡、IOS是否都支持,另外,不同版本的IOS,最好参考一下其相应的配置指南。当然了我感觉最重要是一定要把VSS的工作原理搞明白,技术不是对着书本来敲命令行,而是对技术真正的把握。
回归正题:
客户主厂区原有两台cisco6506,并且做的VSS,分厂区为了保证网络的冗余,决定采用两台cisco4507做VSS与6506相连,在做VSS之前,我在网上下载了cat4500e-universal.SPA.03.04.05.SG.151-2.SG5.bin,并在官网上找到了配置手册。
晚上5点半左右我和同事在现场,先对两台4507的系统做了备份和升级,以保证系统的一致性,然后参照配置手册对两台4507做了VSS,做完之后使用switch convert mode virtual将系统切换至VSS模式,通过show命令查检发现两台交换机一台处于active状态,一台处于standby状态,两台4507的VSS配置完成了。但是同时问题也在此时出现了!在做ping测试时发现,分厂区和主厂区的直连链路不通了!!!
检查接口状态,正常!检测链路状态,正常!但是为什么不通呢?
由于我们使用VSS功能时,使用的是ipbase版,所以我们也怀疑是不是功能没有完全打开,有些限制。所以决定再找一个IOS测试一下,于是找到cat4500e-universal.SPA.03.07.00.E.152-3.E.bin,再次升级,发现,不同的IOS,部分命令也确实不同,就连VSS的命令也有些许的不同。再次配置VSS,配置完成之后检查VSS运行正常,可是相同的问题再次出现了!为什么?
使用show arp查看,发现交换机不能学到对端的MAC地址,我们将交换机切换到standalone模式,ping对端,发现通了!!使用show arp发现这次学到了对端的MAC,为什么?此时我和同事已经有些迷糊了,想想网络上盛传的那张脆拜设备的照片,不禁哈哈大笑!我们再次将4507切换到VSS模式下,然后通过电话让我们老大远程到总厂区的6506上,检查发现6506运行正常也没有什么问题。
学不到MAC!!!老大提议:既然学不到,那你们在那边使用arpa绑定一下试试。或许老天实在不想在大半夜折腾我们,于是在绑MAC的时候发现,老大告诉我们的主厂区MAC竟然与我们的MAC相同!!!MY GOD!!!问题找到了!
由于在配置VSS的时候,我们主要配置的是:
1、virtual domain
2、switch number
3、switch priority
4、virtual link
5、dual-active check
唯独MAC address采用的是默认的,也就是mac-address use-virtual,查看文档可以发现,如果使用use-virtual,那么:
Assigns the router MAC address from a reserved pool of domain-based addresses。
也就是说系统从保留的MAC address中选择了一个做为VSS时使用的MAC,在此时不难发现,做VSS时,系统总会从保留的地址中选择第一个做为VSS时使用的MAC,以致于我们两端的MAC相同,分厂区学不到总厂区的MAC,最终导致了问题的发生。
重新通过mac-address命令配置一个MAC地址,再次PING测试,终于发现了久违的“!!!!!”,至此,问题解决了!
*********************************************************************************************************
事后想想,我们发现,在调试的过程中我们也曾登录到总厂区的设备上,但由于是链路是通的,我们也就没有在意MAC是什么,但是切换成VSS模式之后两端就不通了,我们也就没有办法登录到远端上,想看MAC的时候也看不了MAC,似乎是进入了一个死循环了!但是最让我们感到意外就是那个MAC地址,竟然每次都从第一个开始选取使用!配置时还真不能每次都使用默认的配置!
*********************************************************************************************************
最后再次重复一句:技术不是照本宣科,技术是需要一种全面的把握!