经过一周的等待,终于等到了修复后的交换机回到学校,迫不及待地配置好交换机数据,在客户端打开网页测试了一下,一切正常,网速还挺快。可是没过多久网络又不正常了,一会能上去,一会又不能上,时断时续。
首先查看一下交换机,发现没有什么问题,数据配置正常。又看了一下出口NAT服务器,在检查路由时突然想到,肯定是路由重复的问题。为了说明问题,先看一下如图1所示的网络中心连接示意图。
有一台做出口NAT服务的服务器,一台划分VLAN的中心交换机,中心交换机直接连接外网,交换机连接外网的接口与NAT服务器的外接网卡在一个VLAN内(如图1中所示的2、3)。
(1)交机配置如下:
vlan 10 name link INTERNET by port
##上因特网的VLAN(如图1中所示的2、3)
untagged ethe 8/1 to 8/2
router-interface ve 10
!
vlan 20 name neiwang by port
##内网连接NAT设备的VLAN
untagged ethe 6/1 to 6/2
router-interface ve 20
!
vlan 30 name user1 by port ##用户使用的VLAN
untagged ethe 6/3 to 6/24
router-interface ve 30
!
system-max vlan 4095
system-max virtual-interface 4095
!
enable telnet password
enable super-user-password .....
ip route 0.0.0.0 0.0.0.0 192. 168.0.254
##指向NAT设备的默认静态路由
!
no web-management
!
interface ve 10
ip address 218.200.200.193 255.255.255.224
##公网IP段(与NAT服务器上的静态路由重复)
!
interface ve 20
ip address 192.168.0.253 255.255.255.252
##内网与NAT设备互联IP
!
(2)NAT服务器设置的静态路由如下:
在连接内网的网卡上设置:ip route 192.168.0.0 255.255.254.0 192.168.0.253。
在连接外网的网卡上设置:ip route 0.0.0.0 0.0.0.0 218.200.200.193 (与交换机interface ve 10路由重复)
确定是路由重复后,把ve 10去掉,一切正常。
由于路由重复,当客户端对外请求的数据包返回时,除正常到达请求客户端外还会在interface ve 10里保存一份数据包的“副本”。这个“副本”的目的地址就是interface ve 10里的IP段,所以交换机不会再进行转发。随着时间的积累,交换机内不能转发的数据包越来越多,最终导致交换机内存全部占用,所有数据包停止转发,当数据包过了生存时间后,又自动丢弃,交换机内存释放出来,交换机又重新开始转发数据包,如此不断循环重复,就出现了用户上网时断时续的现象。