利用TCP标记分析故障-科来.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用TCP标记分析故障-科来

网络故障诊断 - 利用TCP标记分析故障 TCP标记简介 TCP,全称Transfer Control Protocol,中文名为传输控制协议;它工作在OSI的传输层,提供面向连接的可靠传输服务。 在TCP的报头中,有一个TCP标记字段,这个字段用来指出当前这个数据包的用途。TCP连接标记字段长6比特,共有6种不同的标记,在一个TCP连接中可能会使用其中的多个标记。这6种标记是: 紧急(Urgent,简称URG):通知对方主机该TCP数据包中包含有紧急数据; 确认(Acknowledgement,简称ACK):用来确认接收到对方主机的TCP数据包; 急迫(Push,简称PSH):通知对方主机立即将该数据包送往上层协议; 重置(Reset,简称RST):表示此TCP连接已被对方主机重新启动; 同步(Synchronization,简称SYN):用来建立和对方主机的TCP连接; 终止(Finish,简称FIN):用来关闭TCP连接。 不同数据包中的TCP 标记可能相同,也可能不同,通过数据包的解码,可以知道当前数据包正在进行的操作及其作用。如TCP三次握手的第一步会将同步位置为1;第二步会同时将确认位和同步位置为1;第三步会将确认位置为1。根据TCP标记的特性,我们可以利用它分析网络中常见的网络应用故障。 利用TCP标记分析网络故障 当遇到目标主机的某TCP服务不能访问时,我们可以通过对其访问的过程进行抓包分析,从而找出不能访问的原因,下面我们用科来网络分析系统5.0,以分析Telnet为例说明分析的方法。 图1是在Windows客户端(客户端主机名为wangym)上使用Telnet命令访问其他主机的情况。从图1的返回结果可知,两台主机的Telnet服务都不能正常访问,但我们无法确定不能访问的原因,是因为网络不通,还是这台主机没有提供Telnet服务。 (图1 WINDOWS客户端使用Telnet命令图示) 注意: 这里使用的Telnet命令是在假定目标服务器使用默认的端口配置,即Telnet服务器端口是TCP 23; 可能有些用户想到使用Ping命令测试网络的连通性,但由于承载Ping命令的ICMP协议可以导致一些非法攻击,对网络的安全会造成一定的威胁,使得某些ISP厂商或者网络管理员都在他们的三层设备处禁用了ICMP协议的转发。在这种情况下,使用Ping命令便无法准确测试主机的连通性。 图2是在WINDOWS客户端使用Telnet命令访问0主机时,科来网络分析系统5.0捕获到的数据包信息。 (图2 Telnet访问0的原始数据包) 从图2可知,使用Telnet命令访问0主机时,两主机间共有三个数据包通信,仔细查看数据包及其解码,发现三个数据包都是从客户端发往0主机的,三个数据包的确认号都是0,且都将TCP标记中的同步位置1,表明三个数据包都是TCP三次握手的第一步,即TCP同步数据包。没有从0发往客户端的数据包,说明此时客户端与0主机在物理链路上不通,可能是网络中没有IP地址为0这台机器,或者这台机器没有开机。 图3是在WINDOWS客户端使用Telnet命令访问00主机时,科来网络分析系统5.0捕获到的数据包信息。 (图3 Telnet访问00的原始数据包) 从图3可知,使用Telnet命令访问00主机时,两主机间共有6个数据包通信,仔细查看数据包及其解码,发现1,3,5这三个数据包是从客户端发往00主机的,这三个数据包的确认号是0,TCP标记是同步位置1,表明三个数据包都是TCP三次握手的第一步,即TCP同步数据包。2,4,6这三个数据包是从00主机发往客户端的,这三个数据包的确认号是确认号1589766797,TCP标记是确认位和重置位同时置1,表示这三个数据包都是00对客户端的确认数据包,同时它拒绝了客户端的建立连接的TCP同步请求,告诉客户端当前主机(这里是00)没有打开客户端请求的服务,并中断这个连接。 注意:我们发现在图2和图3中,客户端都向服务器(这里是0和00)发送了三次相同的TCP SYN请求,这是为什么呢?其实这是TCP的协议规定造成的,当客户端使用TCP SYN向服务器发起三方握手的第一步后,如果没有收到服务器的SYN/ACK响应,就会在等待一段时间后再次尝试对服务器进行连接,如果连接三次后仍然失败,则不会再重复此操作,所以我们在图中看到了三次完全一样的TCP SYN数据包。 通过对上面两种情况的抓包分析,我们可知道,0主机不能访问的原因是两台主机之间的物理链路不通,可能是不存在0这台机器,或者0处于关机状态等。而00不能访问的原因是00这台机器没有提供客户端请求的Telnet服务,即没有打开TCP 23端口。 这种方法适用于中所有的TCP服务,用户在遇到不能访问某服务器(各种TCP应用的服务器)时,便

文档评论(0)

busuanzi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档