2009年1月4日星期日

运行Cisco IOS Software的交换机的VLAN配置排错

这部分主要是我们在运行Cisco IOS Software的Catalyst交换机上创建VLAN的时候,常见的一些错误以及相应的解决方法。
在运行Cisco IOS Software的交换机上,我们可以用交换机本身进行VLAN间路由,而不用额外使用路由器。当创建了一个SVI的时候,并不会自动在层二数据库中创建VLAN。必须在VLAN database模式或者全局配置模式中创建VLAN,才可以使SVI处于UP状态。为了使SVI完全激活(即管理性UP并且链路协议也是UP状态),必须保证VLAN中至少有一个端口作为成员,而且有一个活动状态的设备连接到这个端口上。
当我们从别的交换机中拷贝VLAN配置或者恢复在VLAN数据库模式中创建的VLAN配置的时候,也可能发生类似的事情。我们需要同时也将VLAN database文件(即vlan.dat)拷贝过去。或者我们不从另一个交换机上拷贝VLAN数据库,而是自己创建VLAN。
如果在交换机上没有创建层二VLAN,当将配置输入到交换机中时,在show ip interface brief命令的输出中,SVI端口状态是up/down。我们必须确认:在将配置拷贝到交换机中后,所有先前在VLAN database模式或全局配置模式中先前创建的VLAN仍然存在。
一、在交换机IOS中,TLB值不一致错误(inconsistent TLB Value Error on IOS Switches)
当我们在一个使用Cisco IOS的交换机上创建VLAN的时候(这个交换机刚从一个运行CatOS的交换机上收到一个VTP更新或者这个交换机的OS是从CatOS换到Cisco IOS的),TLB值不一致错误可能会出现。这是因为CatOS和CiscoIOS在转换桥接VLAN(Translation Bridge VLAN)的时候有不同的默认值。转换VLAN能够将FDDI或者Token Ring转换成Ethernet。在CiscoIOS的交换机中VLAN1、1002和1003的翻译桥接(TB)VLAN默认与CatOS交换机是不同的,在CatOS中默认为0。下面是Cisco IOS交换机的默认翻译VLAN:
Vlan ID TB1 TB2
1 1002 1003
1002 1 1003
1003 1 1002
注:1002为FDDI-default,1003为TokenRing-Default
当一个CiscoIOS交换机刚刚收到一个从CatOS发送的VTP更新或者该交换机是从重写了默认TB值的CatOS转换来的。此时我们在创建VLAN的时候,就会出现下面这个错误信息:
VLAN 1002 TBL 1 VLAN 1 has inconsistent TLB values (0/0)
这个问题的解决方法是:将CiscoIOS交换机,Vlan1、1002和1003的默认TB值修改为0,以匹配CatOS的值。
switch#vlan database
switch(vlan)#no vlan 1002 tb-vlan1 tb-vlan2
switch(vlan)#no vlan 1003 tb-vlan1 tb-vlan2
switch(vlan)#apply
二、恢复IOS交换机上的vlan.dat文件
对于运行CiscoIOS的交换机而言,VLAN信息存储在一个叫vlan.dat的单独的文件中。如果这个文件被意外的删除,并且交换机被重新引导,这个时候,交换机上所有可用的VLAN都会丢失。但是只要交换机没有重启,交换机上所有的VLAN信息还是存在的。
使用以下步骤可以回复vlan.dat文件:
1、首先使用show vlan 命令来确认可用的VLAN信息
2、如果交换机是VTP服务器模式或者是透明模式,对VLAN数据库进行任何一个改动。例如:创建一个VLAN;删除一个VLAN;修改一个已经存在的VLAN的属性(比如给某个VLAN添加名字)。
如果交换机是VTP客户端模式,在同一域内的VTP服务器上进行任意的对VLAN数据库的改动。
注:一旦VLAN数据库发生任意改动,交换机会自动产生vlan.dat文件
3、使用show flash:命令来确认是否产生vlan.dat文件

三、从启动配置中配置VLAN失败
错误信息:SW-VLAN-4-BAD-STARTUP-VLAN-CONFIG-FILE:Failed to configure VLAN from startup-config. Fallback to use VLAN cofiguration file from non-volatile memory
这个信息标明:VLAN软件从启动配置文件中使用VLAN配置失败。VLAN配置存储在vlan.dat文件中。vlan.dat文件存储在非易失存储器中。当超级模块被替换后,vlan.dat是空的。在启动的时候,交换机比较启动配置文件中的VTP域名和VTP模式以及vlan.dat文件。如果三者的值不匹配,交换机就会使用在vlan.dat文件中的配置。
为了得到一个完整的配置备份,我们必须也将vlan.dat文件一起备份。网络管理员必须将vlan.dat文件和配置文件一起上传到交换机中,以恢复完整的配置。
三、备份和恢复CiscoIOS交换机上的vlan.dat文件
为了备份vlan.dat文件,可以使用以下步骤:
1、将vlan.dat文件从设备的nvram拷贝到TFTP服务器或这一个外扩的PCMCIA卡中:copy const_nvram:vlan.dat tftp:
注:vlan.dat文件的存储位置根据设备的不同而不同:Cisco Catalyst 6500/6000系列的交换机存储在const_nvram:中;对Catalyst 6500/4000而言,存储在cat4000_flash:中;在使用copy命令时,注意参考具体的设备文档。
恢复vlan.dat:
1、将vlan.dat文件从TFTP服务器或者外设的PCMCIA卡拷贝到设备的NVRAM中:copy tftp: const.nvram:
2、重新引导交换机,因为vlan.dat只有在启动的时候,才会读取vlan.dat

四、创建VLAN失败,提示:vlan 1003 parent vlan missing
交换机的误配置会导致VTP的配置更新失败。在大多数情况下,这个问题是VTP服务器交换机上新创建的VLAN还没有传播到VTP客户端交换机上。这导致了主机连接性问题。
导致这个问题的一般原因是:VTP域内VTP版本的不匹配,在同一VTP域内,VTP版本1和VTP版本2是不能协同工作的。如果一个支持VTP版本2的网络设备能够与运行VTP版本1的网络设备进行协同工作,那说明在这个支持VTP版本2的网络设备上VTP版本2没有被启用。默认情况下,VTP版本2是不可用的。在VTP域中的所有网络设备必须使用相同的VTP版本。确认交换机上运行的VTP的版本,如果是版本2,那就禁用版本2,以解决这个问题。
确认交换机上其他VTP参数是否被正确配置:
1、确认交换机之间使用Trunk相互连接,因为VTP更新只能通过Trunk进行交换
2、确认VTP域名在域内的交换机上被正确的配置,域名是大小写敏感的,VTP更新只能在相同的VTP域内的交换机之间进行交换
3、确认域中所有交换机的VTP密码是相同的,密码也是大小写敏感的,如果配置了密码,必须在域内所有的交换机上进行配置而且密码也必须相同
万一出现VTP收敛问题:某个VTP客户端没有更新VLAN信息,我们应该做的是:通过创建然后删除一个VTP服务器上的虚假的VLAN来强制VTP进行收敛。通过这样做,可以增加修订号,以强制所有的VTP客户端更新它们的VLAN数据库。

没有评论:

发表评论