一、Ping
Ping目的是为了测试另一台主机是否可达。该程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显应答
可以用ping程序来确定问题出在哪里,测出到这台主机的往返时间
一台主机的可达性可能不止取决与IP层是否可达,还取决于使用何种协议以及端口号。Ping程序的运行结果可能显示某台主机不可达,但telnet却可以。
对于某些ICMP查询报文,服务器必须响应标识符和序列号,发的是多少,回显就填充多少。
Unix系统在实现ping程序时是把ICMP报文中的标识符字段置成发送进程的ID号,这样即使有多个ping程序在运行,也能识别他们。
序列号会增加(随着PING包的增加而增加)。
PAT上的ICMP,因为ICMP没有端口号,不能像TCP/UDP那样直接进行端口转发,因此,在cisco中ISO版本12.3以前,路由器将ICMP的序号当成端口来转发,会出现大量端口使用(因为序号会随着包的增加而增加),到12.3以后,cisco就将ICMP的标识符来当成端口号来转发,节约了端口使用。
二、Ping程序计算往返时间(选项位)
原理:主机在