天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧软件 >> 正文

网管手册利用TCP标记分析网络故障

2008-7-31IT实验室佚名

    TCP标记中,发现物理链路不通

    下图是在Telnet命令访问192.168.2.10主机时的数据包原始信息。

天下网吧-网管手册TCP标记

    从上图可知,使用Telnet命令访问192.168.2.10主机时,两主机间共有三个数据包通信,仔细查看数据包及其解码,发现三个数据包都是从客户端发往192.168.2.10主机的,三个数据包的确认号都是0,且都将TCP标记中的同步位置1,表明三个数据包都是TCP三次握手的第一步,即TCP同步数据包。没有从192.168.2.10发往客户端的数据包,说明此时客户端与192.168.2.10主机在物理链路上不通,可能是网络中没有IP地址为192.168.2.10这台机器,或者这台机器没有开机。

    下图是在Telnet命令访问192.168.2.100主机时的数据包原始信息。

天下网吧-网管手册TCP标记

    从上图可知,使用Telnet命令访问192.168.2.100主机时,两主机间共有6个数据包通信,仔细查看数据包及其解码,发现1,3,5这三个数据包是从客户端发往192.168.2.100主机的,这三个数据包的确认号是0,TCP标记是同步位置1,表明三个数据包都是TCP三次握手的第一步,即TCP同步数据包。2,4,6这三个数据包是从192.168.2.100主机发往客户端的,这三个数据包的确认号是确认号1589766797,TCP标记是确认位和重置位同时置1,表示这三个数据包都是192.168.2.100对客户端的确认数据包,同时它拒绝了客户端的建立连接的TCP同步请求,告诉客户端当前主机(这里是192.168.2.100)没有打开客户端请求的服务,并中断这个连接。

    注意:我们发现,两次Telnet请求都是客户端都向服务器(这里是192.168.2.10和192.168.2.100)发送了三次相同的TCP SYN请求,这是为什么呢?其实这是TCP的协议规定造成的,当客户端使用TCP SYN向服务器发起三方握手的第一步后,如果没有收到服务器的SYN/ACK响应,就会在等待一段时间后再次尝试对服务器进行连接,如果连接三次后仍然失败,则不会再重复此操作,所以我们在图中看到了三次完全一样的TCP SYN数据包。

    通过对上面两种情况的抓包分析,我们可知道,192.168.2.10主机不能访问的原因是两台主机之间的物理链路不通,可能是不存在192.168.2.10这台机器,或者192.168.2.10处于关机状态等。而192.168.2.100不能访问的原因是192.168.2.100这台机器没有提供客户端请求的Telnet服务,即没有打开TCP 23端口。

    这种方法适用于中所有的TCP服务,用户在遇到不能访问某服务器(各种TCP应用的服务器)时,便可使用这种方法对数据包进行跟踪分析,帮助用户对故障进行排查。

本文来源:IT实验室 作者:佚名

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。文章是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。 Email:support@txwb.com,系统开号,技术支持,服务联系微信:_WX_1_本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行