【转】上网认证页面无法打开案例

作者:易隐者 发布于:2012-11-25 10:40 Sunday 分类:案例讨论

【说在之前】:

1,该案例的确属于疑难故障范畴,若不是通过抓包方式,站在数据包交互的角度进行分析是无法定位、解决该故障的,因此,该案例具有学习参考价值;

2,案例的分析用到了关联分析法和对比分析法,思路非常清晰,但整个文档在图文编辑和措词这块还可以做进一步的加强,考虑到原文的完整性,我不对该文档做任何修改;

3,难能可贵的是作者在找到故障原因并解决故障之后,没有像大部分人那样将这个故障束之高阁, 而是将自己的分析思路、过程整理成文档,分享给大家,另外,发现其中难以解释的、存在疑问的地方,供大家一起讨论,这正是我一直倡导的“自我总结、无私分享、共同探讨、共同进步”的学习方式;

4,针对该案例后面的疑问,我就我的理解作出相关解答,供大家参考。

     针对第一个疑问:AC在此处工作在透明模式下,正常情况下其对报文的干预和处理根本不需要经过路由,也就是说,AC在做HTTP重定向的时候,根本不需要根据路由表,将这个HTTP重定向报文转发给PIX防火墙,而应该直接构造相应HTTP重定向报文发往核心交换机,因此,此处出现这样的问题,我个人认为如果AC是按照路由方式处理的话,其应该有相应的转发表转发表中会有下一跳、转发接口等相关信息,而出现此案例中的问题,说明AC转发表出现了异常,可能是其上联口和下联口是属于同一网段,而AC转发表未对其进行区分导致的;

     针对第二个疑问:这里需要明确,AC的管理口和业务口是否是完全独立的,如果是,那么所谓的两条默认路由是完全分开的,没有任何问题,如果不是,那么根据不同的系统处理方式,负载均衡(根据报文或其他)或者选择其中一条都是有可能的,多年前我曾写过一篇《供电局调度所前置机故障解决说明》的文档,就是两条默认路由导致异常的案例,过段时间我把这个案例共享到我的博客供大家参考。

5,该案例作者肖鉴为我以前推出《合肥网络分析技术团队招募学徒》的第一个学员。他不远千里从福建专程请假几十天跟随我学习相关知识,当我第一眼看到他时,我就被他的这种对技术执着追求的行为所感动,他基础不错,学习踏实认真,我个人认为我真正给他的帮助不在于具体技术的成长和进步,而在于影响他对技术的自信、清晰的职业发展方向规划以及行事的风格,在他身上我能看到我以前的影子,他现在深信服的总代,刚获得深信服深信服华南区技术大比武冠军,看到他的成长,我的内心是无比的欣慰。

【原文全文】

1. 网络环境

        故障网络环境如下图所示: 

点击查看原图

说明:
1. 出口防火墙工作在路由模式做NAT代理内网上网,E1口IP地址192.168.247.1/24。
2. 上网行为管理工作的网桥模式下,为其网桥IP地址配置192.168.247.3/24、网关IP地址为192.168.247.1用于设备管理,下联三层交换机IP地址为192.168.247.2/24。由于,前置PIX防火墙为阻止192.168.247.0/24网段上网,所以为了上网行为管理能够更新内置规则库,上网行为管理口下联三层核心交换机为其配置IP地址192.168.20.250网关IP地址192.168.20.1。
3.上网行为管理对内网部分网段实行认证上网。

2. 故障现象

       内网无须进行认证PC机访问互联网正常,需进行认证网段PC机上网在正常情况必须得先进行认证输入用户名和密码后方可访问互联网,故障表现为认证网段PC机无法正常跳转至认证界面输入用户名和密码。如下图所示: 

点击查看原图

3. 故障分析

3.1 常规分析

       在PC上访问网络时无法跳出登陆界页时,我们手动输入http://192.168.247.3认证登陆页面是正常,如下图所示,并且,输入完认证用户名和密码后可以正常访问互联网。说明网络中并不存在路由问题。那么是否可能是设备本身处理机制出现问题呢?还是,PC机与上网行为管理设备通信出现了其它的异常导致PC机无法正常弹出认证页面?。 

点击查看原图

3.2 数据包分析

       带着以上的疑问,我们在三层交换机的F0/47上联上网行为网口上抓取PC机(192.168.12.112)的所有数据包,通过”statices”->”conversations”随便打开其中一个TCP会话,如下图所示。 

点击查看原图

       通过上图,我们可以清楚看见,对192.168.12.110与56.30.236.11数据交互的第49序号数据包进行解码发现该报文为上网行为伪造得一个HTTP302重定向认证页面。说明,上网么为管理是有正常的发送了认证页面给PC机(192.168.12.110)的。

       在上网行为上抓取数据包的同时,我们在客户端抓取了该PC机的数据通信,通过数据包五元组,我们定位过滤出在上网行为查看的TCP会话,如下图: 

点击查看原图

       从以上数据包交互视图中并未看见,上网行为管理构造的http重定向认证报文。至此,我们可以判断,上网行为发送给PC机的的重定向报文被丢失了,导致PC机上无法正常打开认证登陆页面。上网行为连接到PC机的中间设备只有三层核心交换机,难道该HTTP重定向报文被三层交换机丢弃了?很显然这种情况不可能会出现,因三层交换只负责数据的路由与转发,涉及到的访问控制列表也只能是基于三层到四层的过滤,不可能会识别应该用层的内容并将其过滤。

       既然上网行为有发该重定向报文,又不可能被中间的三层核心交换机丢弃。是否有可能该重定向报文并不是发给真正的“PC”机,而是发给了其它设备呢?带着这个疑问我们又一次查看了上网行为抓获数据包重定向报文。进行解码发现,该数据报文封装的目标MAC地址并不是下联的三层换的MAC地址,而是前置CISCO PIX防火的MAC地址。如下图所示: 

点击查看原图

       各交换机MAC表如下图所示:
三层交换机MAC:00:09:7C:2C:15:00
前置PIX防火墙MAC:00:0b:5f:37:b8:4e
上网行为管理MAC:8c:89:a5:ce:b1:0b 

点击查看原图

       由于,上网行为的发送重定向报文的目标IP地址是PC机(192.168.12.110),并不和自己在同一网段中,所以将该数据报文走默认路由。且是走网桥的默认路由,所以所封装的MAC地址是前置PIX防火墙的MAC地址。 

点击查看原图

点击查看原图

3.3 故障解决

       至此,问题已经定位,通过在路由表中添加到达内网地址的下一跳指向下联的三层换机,故障解决。

点击查看原图

点击查看原图

 4.疑问

1.为什么在三层交换机的f0/47口上能会接收到AC(上网行为)发送给封装了前置防火墙MAC地址的Http重定向报文?百思不得其解!!!
访问互联网时的数据交互过程如下图: 

点击查看原图

点击查看原图

2.在在上网行为没有添加到达内网的回包路由时,存在两条两条默认路由。当存在两条默认路由时,是如何进行选择默认路由的?是进行负载吗?在此案例中好像不会。如果会进行负载,那么HTTP重定向报文走管理口就直接转发到三层就会回到PC机。

标签: 交换机 团队 疑难故障 TCP 网络分析 负载均衡 抓包 深信服 上网行为管理 HTTP重定向 AC 路由表 转发表


您对本文的评分:
当前平均分: 10.0(5 次打分)

版权所有:《蚂蚁网-多维人生,三实而立!》 => 《【转】上网认证页面无法打开案例
本文地址:http://www.vants.org/?post=197
除非注明,文章均为 《蚂蚁网-多维人生,三实而立!》 原创,欢迎转载!转载请注明本文地址,谢谢。

发表评论:

Powered by 易隐者 基于emlog 皖ICP备12002343号-1