A地市局报告说,下面所有的县局网络无法访问省局的“省政务一体化平台”,而地市局访问此平台没有问题。地市局网络结构如图1所示。该应用系统平台部署在政务外网,IP地址59.225.200.123,在地市局的路由器AR3260上已配置了相关的静态路由,下一跳为政务外网防火墙的接口地址,但在县局PC端用命令tracert跟踪路由居然走到省局去了,所以A地市局IT负责人认为问题出在省局。
图1 网络拓扑结构
远程登录到A地市局的路由器查看路由表,到政务一体化平台的路由有2条,一条静态路由到59.0.0.0/8的下一跳为地市局政务外网防火墙的接口地址,优先级默认为60。另一条是O_ASE路由到59.225.200.0/24的下一跳为省局IDC机房路由器接口地址,优先级为150。正是后面一条路由,导致A市的县局网络访问走到了省局。当时就没弄明白,为什么优先级高的静态路由没有生效(按路由优先级的数字越低其优先级越高),反而在tracert中路由匹配了优先级低的O_ASE路由条目。而测试确认,另一条静态路由59.223.0.0/24段到政务外网防火墙是正常的。
再分析A地市局网络正常访问政务外网的原因,是因为直接走的市局核心交换机到政务外网防火墙,完全没有经过市局边界路由器。所辖县局访问线路必须经过该路由器,而路由器上莫名其妙串出一条O_ASE路由将访问政务外网引到了省局网络。
刚好前一段时间在华为网站上看到一个在线视频,介绍了OSPF路由过滤的问题,心想把这条O_ASE路由过滤掉不就解决问题了吗?有了这个解决问题的思路,但具体操作却想不起来了,网上搜索关键字“OSPF路由过滤”,在H3C的论坛里找到一个贴子,华为和H3C(华三)网络设备的配置命令基本类似,所以就拿来一用。
在AR3260上输入sys进入配置模式,ip ip-prefix test1 index 10 deny 59.225.200.0 24 ;输入ospf 1进入ospf进程,filterpolicy ip-prefix test1 import,配置命令输入后回车,悲剧了,通过secureCRT连接到A地市局路由器瞬间断开。联系对方IT人员后,得知此时市局无法访问省局的服务器。由于没有保存配置,可重启路由器解决该问题。由于此路由器并不在我的管理范围内,怕重启引出更多问题而放弃该办法。
出现紧急情况向主管报告,他让我通过在省局IDC路由器上登录A地市局路由器的直连接口IP,看能否登录。由于地市局路由器只是开启SSH服务,而在路由器上使用SSH协议登录远程路由器还不知道怎么操作,只得主管亲自紧急处理。他查阅华为电子手册,很快找到所需的配置命令,ssh client first-time enable;stelnet 172.27.254.98回车,输入用户名密码完成登录。再进入OSPF进程,undo filter-policy ip-prefix test1 import,完美解除紧急状况,此刻又能正常远程连接A市局路由器了,对方到省局的网络也恢复正常。
梳理一下通过路由器的SSH客户端登录远程路由器的配置原理,ssh client first-time enable是因为华为交换机默认情况,SSH客户端首次认证功能是关闭的。使能SSH客户端首次认证功能的目的,是当STelnet客户端第一次登录SSH服务器时不对SSH服务器的RSA公钥进行有效性检查,因为此时STelnet客户端还没有保存SSH服务器的RSA公钥。如果没有使能SSH客户端首次认证功能,则STelnet客户端第一次登录SSH服务器时,由于对SSH服务器的RSA公钥有效性检查失败,导致无法登录远程路由器。
最后,还得解决A地市局访问“政务一体化”平台的问题。主管看了远端路由器上的路由配置,给出立杆见影还不费劲的解决办法。在AR3260上加一条主机的静态路由,配置命令是ip routestatic 59.225.200.123 32 10.10.10.101,再和对方IT确认,县局都能正常访问“政务一体化”平台了。可见,实际工作中不仅要对网络知识能够透彻理解,还要在实践中不断积累经验,方能快速有效地解决问题。
B地市局的县局因类似的工作需要访问“省政务一体化平台”,故障现象和A地市局情况一样,地市局PC都能正常访问,而所有县局PC都无法访问。由于管理人员技术欠缺的个人因素,加之历史上曾经由省局直接管理过地市局路由器的原因,对方强烈要求省局解决此问题,而且对方还无法提供B市局的网络拓扑图。
有了前面A地市局路由问题的解决经验,心想摸着石头过河也能轻松搞定。虽然对方没有给出网络拓扑,猜想同一机关系统的网络架构也差不多。从secureCRT登录B地市局的路由器,和对方沟通了解到,政务外网防火墙接口地址 为10.10.10.109,添 加一条静态路由,当时想如果还是只加一个主机路由,以后若还有其他需要走政务外网防火墙的路由,还要手动添加,这次何不加一条网段 路 由,ip route-static 59.225.200.0 24 10.10.10.109。
配置好后让对方确认,仍然不能访问“政务一体化”平台,而且连市局都不能正常访问了。让对方tracert跟踪路由才发现,刚才那条配置引起了路由环路(如图2)。因为B地市局不能提供网络拓扑图,暂时无法解释环路是如何形成的。赶快撤消前面的配置undo ip routestatic 59.225.200.0 24 10.10.10.109,看来只能加上主机路由了,ip routestatic 59.225.200.123 32 10.10.10.109。再和对方确认,B地市局访问恢复正常,下面的县局也都能正常访问“政务一体化”平台。
图2 tracert跟踪路由发现路由环路
其他地市陆续报出以上类似问题,有技术能力的地市局就加主机路由自行解决了访问故障,而大部分地市局都需要我们协助处理。经过排查,发现该问题的根本原因还是因为省局网络中有路由器在OSPF引入了一条外部路由,改变了地市局网络访问“政务一体化”的路由走向。原本走地市局政务外网防火墙出去,现在就被这条O_ASE路由引到省局,又被省局政务外网防火墙阻止,最终无法正常访问“政务一体化”平台。
为了治本,得仔细看一下这条路由为什么被引入,在哪台路由器上引入,可否直接在源路由器上过滤掉此条路由对其他路由器的传播。
在A地市局边界路由器上查询OSPF链路数据库dis ospf lsdb | in 59.225.200,到59.225.200.0网络连接类型为External,宣告路由器为172.27.254.2,正是省局管理机房的1台路由器宣告的外部路由。再登录该路由器检查配置,发现如下相关条目:
图3 OSPF骨干区域area0
再检查省局管理机房的核心交换机,也开启了OSPF路由,与省局网络出口路由器同在区域area0。进一步分析,上面的配置目的是为了省局网络用户的计算机访问政务外网服务器指定了出口路由,省去了在核心交换机上配置静态路由到政务外网防火墙。估计后来省局网络在IDC新建了机房,又将IDC路由器和核心交换机划入了OSPF骨干区域area0,通过动态路由打通省局网络机房和IDC各网段的连接(如图3)。同时,这条路由又被宣告到其他OSPF区域,影响了地市局访问政务外网服务器路由走向,当大家访问“政务一体化”平台时问题就出现了。
理清了O_ASE路由的来弄去脉,对于该问题的治本办法也就简单了。首先在省局核心交换机上配置静态路由ip route-static 59.223.0.0 24 211.211.211.1,ip route-static 59.225.0.0 24 211.211.211.1,让省局网络通过静态路由访问政务外网指定网段。然后在省局出口路由器上进入OSPF视图,撤消之前引入到政务外网的静态路由undo import-route static route-policy 2011,最 后undo num 2011,保存配置。
在排查过程中搜索互联网关于OSPF路由发现一好帖子在此分享:http://support.huawei.com/huaweiconnect/enterprise/thread-251907.html,路 由过滤分为对路由表的过滤和阻止lsa生成两种方式。上述问题还有其他更好的解决办法,由于路由器软件版原因,未能测试成功。还有华为HCNP在线视频教程也值得分享:http://support.huawei.com/learning/Certi ficate!showCertificate?pb iPath=term1000025451&id=N ode1000004373。
经过这几次路由调试和排查,深刻理解了网络路由条目的匹配除了优先级、开销值外,让我掌握了最长配原则,还有静态路由是逐跳传递、双向有去也要有回的数据包才能通。