认识Ping与Telnet通过Fwsm的区别

来源:互联网 责任编辑:栏目编辑 发表时间:2013-07-01 17:30 点击:
 大家都知道Ping是无状态的三层报文,而Telnet是有状态的四层以上的报文。下面从一个现象来说明问题。

  环境

  CISCO7609上面配置了多个VLan包括vlan100和vlan109,并且7609上面配置了3个VRF,vlan100属于vlan31,vlan109属于vlan32。不同vrf之间通过Fwsm互联。有2台
服务器,其一(命令为SerA)的IP分别为123.37.109.15。另外一台(命令为SerB)比较特别,其网口配置成了trunk模式,不同子接口IP包括123.37.100.246,123.37.108.246以及123.37.109.246等,其路由表如下:

  
Ping


  测试结果

  从123.37.109.15 ping 123.37.100.246,结果通讯正常;但是从123.37.109.15 telnet 123.37.100.246 22(此端口本地测试通讯正常)却不通。

  分析

  1、从123.37.109.15 ping 123.37.100.246

  经过Fwsm转发后,SerB从接口bond0.100上面接收到123.37.109.15的echo request的数据包,然后查找路由表发现返回到123.37.109.15的数据包需要通过bond0.109接口转发,所以从bond0.109转发

  数据包,经过Fwsm转发到源服务器SerA,通讯正常。如下SerB上bond0.100和bond0.109的抓包:

  
Ping


  
Ping


  2、从123.37.109.15 telnet 123.37.100.246 的 22端口

  经过Fwsm转发后,SerB从接口bond0.100上面接收到123.37.109.15的syn的数据包,然后查找路由表发现返回到123.37.109.15的数据包需要通过bond0.109接口转发,所以从bond0.109转发ack数据包,经

  过Fwsm转发到源服务器SerA,但是通讯却失败。于是抓包如下:

  在SerA上抓到dst port 22的数据包:

  
Ping


  在SerB上抓从123.37.109.15过来的ssh数据包:

  
Ping


  在SerB上抓到123.37.109.15的返回数据包:

  
请添加描述


  在SerA上抓到从123.37.100.246返回的数据包:

  
请添加描述


  分析结论

  所以根据上面截图可以分析出源服务器SerA收到了发往123.37.100.246的22端口的返回数据包,而且源和目的端口都正确,但是为什么就是不通呢?而Ping包为什么又是通的呢?这就需要从Ping和Telnet上面来分析了。首先大家都知道Ping是无状态的三层数据包,而Telnet是有状态的四层以上的数据包,所以在针对这些数据包的处理方式上肯定存在区别。当Ping包经过了Fwsm后,由于其为无状态报文,所以Fwsm制作简单处理后转发数据包;然后当Telnet的报文经过Fwsm后,由于其为有状态报文,所以Fwsm需要做序列号的重新编号和状态检测处理,然后转发数据包。虽然源服务器貌似接收到了Telnet的返回数据包,但是与自己发送的syn报文的序列号不匹配,所以此Telnet进程就失败了。
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • ESC键实用方法介绍
  • 索尼 SONY OEM Windows XP PRO SP3 CD-KEY 序列号
  • 10招最有效防电脑辐射方法
  • 一个问题阻止windows正确检查此机器的许可证 错误代码为:0x8007
  • 强行删除文件夹及工具
  • 笔记本屏幕倒了过来如何恢复正常
  • EPSON EPL-6200L激光打印机打印时“通讯错误”
  • 电脑开机弹出SCSIAdapter硬件驱动安装向导的原因及解决方案
  • 845主板鼠标口,USB都异常
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1