为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Ping,Ping,Ping......

2011-04-28 5页 pdf 76KB 31阅读

用户头像

is_943076

暂无简介

举报
Ping,Ping,Ping...... Ping Ping Ping...... 交换接入网产品技术支持部 李劲松 Ping 这个词源于声纳定位操作 本意是指来自声纳设备的脉冲信号 在网络设备中 Ping 几乎是使用频率最高的网络测试命令 本文将详细介绍 Ping 命令的基本原理 相关参 数 使用技巧即使用中需要注意的事项 1 Ping的原理 提到Ping命令 不能不介绍一下ICMP Internet Control Messages Protocol 因特网控制信息协 议 ICMP通常被认为是I...
Ping,Ping,Ping......
Ping Ping Ping...... 交换接入网产品技术支持部 李劲松 Ping 这个词源于声纳定位操作 本意是指来自声纳设备的脉冲信号 在网络设备中 Ping 几乎是使用频率最高的网络测试命令 本文将详细介绍 Ping 命令的基本原理 相关参 数 使用技巧即使用中需要注意的事项 1 Ping的原理 提到Ping命令 不能不介绍一下ICMP Internet Control Messages Protocol 因特网控制信息协 议 ICMP通常被认为是IP层的一个组成部分 它传递差错报文以及其它需要注意的信息 ICMP报文是在IP数据包内部被传输的 如图所示 IP首部 ICMP报文 IP报文 ICMP报文的格式如下图所示 类型字段可以有15个不同的值 以描述特定类型的ICMP报 文 而Ping报文实际上是类型为0的 回显应答 和类型为8的 请求回显 报文 8位类型 8位代码 16位校验和 (不同类型和代码有不同的内容) 0 15 167 8 31 2 Ping命令的格式和主要参数 在华为公司Quidway系列路由器上 Ping命令的格式如下 粗体为关键字 斜体为参数 Ping [-c number][-t number][-s number] ip-address -c Ping报文的个数 缺省值是5个 -t 设置Ping报文的超时时间 以毫秒为单位 缺省值为2000 -s 设置Ping报文的大小 缺省值是56 byte 实际上Ping命令的参数还很多 本文只介绍最常用的三个 例如 对目的地址 202.101.6.21执行Ping操作 命令格式如下 Quidway# Ping 202.101.6.21 Ping 202.101.6.21: 56 data bytes, press CTRL_C to break Reply from 202.101.6.21: bytes=56 Sequence=1 ttl=255 time = 10 ms Reply from 202.101.6.21: bytes=56 Sequence=2 ttl=255 time = 10 ms Reply from 202.101.6.21: bytes=56 Sequence=3 ttl=255 time = 10 ms Reply from 202.101.6.21: bytes=56 Sequence=4 ttl=255 time = 10 ms Reply from 202.101.6.21: bytes=56 Sequence=5 ttl=255 time = 10 ms --- 202.101.6.21 Ping statistics --- 5 packets transmitted 5 packets received 0% packet loss round-trip min/avg/max = 10/10/10 ms 3 Ping命令使用中的误区 在上一节中的命令中Ping 202.101.6.21虽然没有附加其他的参数 但实际上使用的是缺省 值 路由器将发送5个大小为56个字节的ICMP报文 并认为正常的相应时间为2000毫秒 而这些缺 省参数通常为我们所忽视 3.1 真的PING不通 3.1.1 案例一 师小L在配置完一台路由器之后 执行Ping命令检测链路是否通畅 但发现5个报 文都没有Ping通 于是检查双方的配置命令 查看路由 却一直没有找到错误所在 最 后无奈之下又重复执行了一遍相同的Ping命令 发现这一次5个报文中有2个Ping通了 原 来是线路质量不好 存在比较严重的丢包现象 点评 小L被Ping命令的缺省参数 -c 给迷惑了 Ping不通的背后可能隐藏着的是丢包现象 毕竟配置错误和线路质量不好的解决方法是大相径庭的 有了此次教训之后 小L再遇到 Ping不通的情况 都要把命令再敲一遍 并加上参数 -c 10 这意味着连续Ping10个报文 来检验是否存在丢包现象 命令如下 Ping -c 10 ip-address 3.1.2 案例二 工程师小L在配置完一台路由器之后 执行Ping命令访问internet上某站点的IP地 址 但没有Ping通 有了上次的教训 小L再一次Ping了10个报文 仍旧没有响应 于是小 L断定网络故障 但是在费劲周折检查了配置 链路之后仍没有发现任何可疑之处 最后 小L采取逐段检测的方法 对链路中的网关进行逐级测试 发现都可以Ping通 但是响应的 时间越来越长 最后一个网关的响应时间在1800ms左右 会不会是由于超时而导致显示为 Ping不同呢 受此启发 小L将Ping命令回显的时间改为4000ms 这次成功Ping通了 但所 有的报文响应时间都在2100ms左右 点评 这一次 小L被是被Ping命令的另一个缺省参数 -t 给迷惑了 Ping不通的背后可能隐 藏着的是超时 系统缺省的认为Ping报文应该在2000ms内有回应 如果超过这个时间 即 使有回应报文送达 也认为Ping不通 有了此次教训之后 小L再遇到Ping不通的情况 都 要把命令再敲一遍 并加上参数 -c 10 -t 4000 这意味着连续Ping10个报文 每个报文 的超时设置为4000ms 以此来检验是否存在丢包及响应时间过长等现象 命令如下 Ping -c 10 -t 4000 ip-address 3.2 真的能PING通 3.2.1 案例一 工程师小L在一次工程中 需要在ATM接口上运行OSPF 由于该ATM接口只有 一个对端 便将OSPF接口类型改为point-to-point 在ATM顺利调通之后 可以正常Ping通 对端地址 但是OSPF却无法正常运行 配置如下 interface Atm2/0/0.100 ip address 202.111.128.214 255.255.255.252 map-group atmzz atm pvc 1 163 199 aal5snap ipoa ubr 155000 155000 32 ip ospf cost 100 ip ospf network point-to-point map-list atmzz ip 202.111.128.213 atm-vc 1 查看调试信息 发现双方都没有收到对端发来的HELLO报文 打开DEBUG开关 发现本 端发送的HELLO报文由OSPF交给IP层 但IP层交给ATM层时 却被ATM层丢弃了 细查 原因 原来OSPF的HELLO报文是多播报文 类似于广播报文 而ATM缺省是不支持发 送广播报文的 需要特殊的配置 将配置改为 ip 202.111.128.213 atm-vc 1 broadcast 即 增加broadcast参数 以支持广播报文的发送 问题解决 点评 Ping命令实际上只能测试单播报文 而不能测试广播和多播报文 3.2.2 案例二 小L在一次工程中 需要在NE路由器和JUNIPER路由器之间通过POS口相连 并运行 OSPF路由协议 小L在配置完成后 一切正常 割接之后设备运行稳定 没有出现任何故 障 但在两个月之后 用户突然反馈说 网络中断 小L登录到路由器之后 发现POS口连接正常 可以Ping通对端地址 但是OSPF协议 中断了 小L按照如下步骤进行查询 Ÿ 查看邻居状态 邻居状态机STATE处于exstart状态 打开NE路由器的debug 开关查看 相应的报文信息 发现相互都可以收到HELLO报文 但NE发送DD报文之后 却一直 没有收到对方回应的DD报文 Ÿ 打开JUNIPER路由器的debug开关 发现对方收到NE的DD报文后 已发送了相应的 DD报文予以回应 但是NE却没有收到 可以初步断定 NE并没有接收到这个报文 但是对方确实发出来了 既然可以接收到HELLO报文 说明链路是通畅的 而且多播报文的收发也没有问题 有可 能是对方发送的DD报文有错误 导致NE拒收 但查看相应的信息 NE并没有报告接收到 过错误的DD报文 仔细查看某厂商路由器的调试信息 发现这个DD报文很大 有2000多 字节 会不会是由于报文太大导致的问题呢 小L试着Ping了一个2000字节的报文 竟然不通 仔 细察看 发现因为双方的MTU不一致 导致大包不通所致 JUNIPER路由器的MTU是 4000多 而NE为1500 将JUNIPER的MTU改为1500 问题解决 至于为什么在工程初期没 有问题 是因为后来网络扩容 导致路由信息过多 使DD报文的长度超过了1500字节 点评 这一次 小L被是被Ping命令的另一个缺省参数 -s 给迷惑了 由于Ping缺省报文是 56个字节 所以显示的Ping通信息只表示56字节的报文可以通 而并不一定表示其他大小 的报文仍旧可以通 但这并不一定意味着我们要从56个字节逐级向上Ping 通常如果大包 可以Ping通 则小包一定会通 有了此次教训之后 小L在Ping通的情况 都要把命令再敲 一遍 并加上参数 -s 8000 这意味着测试一下大包是否能通 命令如下 Ping -s 8000 ip-address 3.3 A能Ping通B 则B一定能Ping通A 小L学习了Ping实现的原理之后 一直这样认为 如果A能够Ping通B 则B一定能够 Ping通A(不考虑防火墙的因素) 但是在一次工程实践中却发现并不是这样 A B1.1.1.11.1.1.2 2.2.2.2 /8 3.3.3.3 /8 e0e0 s0 s0 小L在完成了如图所示的连接之后 在路由器A上Ping路由器B的以太网地址 2.2.2.2 显示可以正常Ping通 但是在路由器B上Ping路由器A的以太网地址3.3.3.3却返回 无法Ping通 仔细察看配置 发现在路由器A上配置了一条指向2.0.0.0/8网段的静态路由 但是在路由器B上却没有相应的配置到3.0.0.0/8路由 所以从路由器B上Ping不通3.3.3.3 但是为何在A上可以Ping通2.2.2.2呢 同样是没有回程路由呀 小L百思不得其解 最后通 过打开路由器上的IP报文调试开关 终于真相大白 原来从路由器A上发出的ICMP报文 的源地址填写的是1.1.1.1 而不是3.3.3.3 由于两台路由器的s0口处于同一网段 所以响应 的报文可以顺利送达路由器A 点评 A能够Ping通B 则B一定能够Ping通A(不考虑防火墙的因素) 这句话本身并没有错 关键是这里的A B究竟是指什么 如果是指两台主机 或者是两个IP地址 那么这句话 就是正确的 如果是指两台路由器 那就不一定了 因为路由器通常会有多个IP地址 现 在就有如下问题 当从一台路由器上执行Ping命令 它发出的ICMP报文的源地址究竟选择 哪一个呢 实际情况是这样的 路由器选择的是发出报文的接口的IP地址
/
本文档为【Ping,Ping,Ping......】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索