局域网出现异常怎么办? 路由故障分析
路由器是实现内网与外网互联的重要设备,根据网络复杂程度可设置静态路由和动态路由。对于简单的网络设置静态路由可方便于管理,但路由列表设置不当会引发一些网络互联故障。
近日,我部门(下称部门a)中有人反映不能访问上级部门(部门b)的网络。我从该人所用的计算机a1(ip地址为 10.20.12.11/24)上用ping命令向部门b网络中的计算机b1(ip地址为10.20.30.110/24)和b2(ip地址为 10.20.30.111/24)发送测试数据包,丢包率达100%,ping本部门的其它计算机则显示连接正常。检查其计算机ip设置,发现网关设置正确(正确网关为10.20.12.1),于是怀疑路由器不能正常工作。回来我自己办公室,用本办公室计算机a2、a3测试,发现以下奇怪现象:
(1) 在计算机a2(ip为10.20.12.12/24)上用ping命令分别ping部门b网络中计算机b1和b2,发现b1有正常回应,b2的回应率在 20%~50%之间;在计算机a3(ip为10.20.12.13/24)中用ping命令分别ping计算机b1和b2,回应显示连接正常,丢包率为 0。
(2) 将计算机a3的ip地址改为10.20.12.12/24后测试,ping得的结果同(1)中的计算机a2测试情况。
(3) 将计算机a2的ip地址改为尚未使用过的ip地址:10.20.12.22/24,测试与b1和b2的连接,结果显示正常,丢包率为0。
(4) 将计算机a1的ip地址改为尚未使用过的ip地址:10.20.12.23/24,测试与b1和b2的连接,结果显示正常,丢包率为0。
故障分析
考虑到网络连通情况与本机ip地址有关,参考本单位网络拓扑结构图(如图1),于是怀疑可能是由于部门b网络的防火墙设置引发该故障。由于部门b与本部门分别位于城市中两个不同地方,不方便查看其防火墙设置,于是打电话询问。但该部门网络管理员告之其防火墙是针对网络ip段设置的,也就是说,该防火墙对于部门a的整个网络ip段都是允许访问的。
分析以上原因,可能是本部门中某些计算机向部门b网络发送过非法访问信息,部门b的防火墙自动将该ip列入侵计算机名单,屏蔽了其发送的ip数据包,从而引发网络连接不正常的现象。调查本部门中所有计算机,将不能正常访问外部网络(部门b网络)的计算机的ip更换为新的ip地址,问题暂时解决。
但一个星期后,网络又出现故障,有几个原来能正常访问部门b计算机出现丢包现象,而有几个原来不能正常访问外部网络的ip地址却可以正常访问外部网络,看来问题可能不在防火墙上。
在计算机上a2(ip地址为10.20.12.12/24)用tracert 命令跟踪测试,现象如下:
c:\>tracert 10.20.30.110
tracing route to 10.20.30.110 over a maximum of 30 hops
1 <1 ms <1 ms <1 ms 10.20.12.1
2 1 ms <1 ms 1 ms 192.168.10.2
3 1 ms 1 ms 1 ms 10.20.30.1
4 2 ms 1 ms 2 ms 10.20.30.110
trace complete
将计算机上a2的ip地址改为10.20.12.22/24,用tracert 命令跟踪测试,现象如下:
tracing route to 10.20.30.110 over a maximum of 30 hops
1 <1 ms <1 ms <1 ms 10.20.12.1
2 1 ms * * 192.168.10.2
3 * 2 ms * 10.20.30.1
4 * * * request timed out
5 * * * request timed out
6 * * 2 ms 10.20.30.110
trace complete
trace complete
→
图1
有时用tracert跟踪测试得到4、5行及以后显示的都是request timed out。
回顾近期网络结构变动情况,原来本部门中网关的位置用的是一个三层交换机(只使用其路由功能),当时内网能正常访问外部网络,在一星期前换为cisco 3640路由器,将按三层交换机中的配置重新配置3640路由器,换后不久就出现以上网络故障。检查cisco 3640的端口配置和路由配置,发现端口ip地址配置正常,而在路由列表中有两条路由:
ip route 0.0.0.0 0.0.0.0 192.168.10.2
ip route 0.0.0.0 0.0.0.0 10.20.12.254
因本部门网络是单位广域网中最下层子网,根据业务需要访问本单位整个广域网,而本部门网络只通过一台cisco 3640路由器router a接入部门b网络中,再通过部门b的路由器router b接入单位广域网(见前面网络拓朴图)。为方便设置,我们只需要在cisco 3640加入一条缺省路由“ip route 0.0.0.0 0.0.0.0 192.168.10.2”就可以将本部门对外部网络的的访问都转发到部门b的路由器router b,从而实现网络的互联。可能由于设置人员的失误,在路由表中多加了一条并不存在的下一跳节点“ip route 0.0.0.0 0.0.0.0 10.20.12.254”。以致当内网中的计算机访问外部网络时,路由器有时不能将ip数据包正确地发送到192.168.10.2中,由于路由器加电工作后,内存中保存了内网对外网的访问路由列表,使得一些计算机一直能正常访问外网,而另一些计算机不能正常访问,当路由器重新启动(如第二个星期一早上重启路由器)后,访问路由列表重新建立,使得内部计算机访问外网的现象发现变化。
故障排除
在路由器特权模式下删除无用的路由列表:
# no ip route 0.0.0.0 0.0.0.0 10.20.12.254
#wr
重启路由器后,本部门所有计算机都能正常访问部门b的网络及单位广域网,故障得到彻底解决。
指的是路由器或者其他互联网网络设备上存储的表,该表中存有到达特定网络终端的路径,在某些情况下,还有一些与这些路径相关的度量。
路由表的一般形式为:
destination gateway flag refs use inerface
其中,destination目标网络或主机的ip地址;gateway到达指定目地的使用网关;flag标志字段,描述这一路由的一些特性;refcnt 表示为了建一次连接,该路由使用的次数;use表示通过该路由传输的分组报文数;interface 表示该路由使用的网络接口名。
一个典型的路由表的例子
destination gateway flags refs use interface
default 26.112.191.98 ugs 0 0 net0
default 26.112.191.98 ugs 0 18 net0
26.112.191 26.112.191.2 uc 1 0 net0
26.112.191.2 127.0.0.1 ughs 3 92 lo0
127.0.0.1 127.0.0.1 uh 3 9786480 lo0
224 26.112.191.2 ucs 0 0 net0
上一篇: 使用json字符串插入节点或者覆盖节点