Imported upstream version 1.5
[manpages-zh.git] / src / man8 / ping.8
bloba31c227b19da665fa609d88c8c6a2cdc67971bc8
1 .TH ping
2 .DD January 7, 1999
3 .DT PING 8
4 .OS "iputils-ss990107"
5 .SH NAME
6 ping\ - 向网络主机发送ICMP回显请求(ECHO_REQUEST)分组
7 .SH 总览
8 .Nm ping
9 .Op Fl dfnqrvR
10 .Op Fl c Ar count
11 .Op Fl i Ar wait
12 .Op Fl l Ar preload
13 .Op Fl p Ar pattern
14 .Op Fl s Ar packetsize
15 .PP
16 更改过的选项:
17 .TP 2.5i
18 -I <device name>
19 可用于设置输出接口
20 .PP
21 新增选项:
22 .TP 2.5i
23 -T [ping only]:
24 发送IP时间戳选项。
25 .TP
26 -T tsonly
27 只有时间戳
28 .TP
29 -T tsandaddr
30 时间戳和地址
31 .TP
32 -T tsprespec host1 [host2 [host3 [host 4]]]
33 预先指定跳数的时间戳
34 .PP
35 改进:
36 .TP
37 - 可理解ICMP错误信息并恢复正确。
38 .TP
39 - 可检查ICMP校验和并把损坏的分组恢复正确。
40 .TP
41 - 可正确测试linux的回环地址。
42 .SH 描述
43 .B  ping
44 程序使用
45 .I ICMP
46 协议的强制回显请求数据报以使主机或网关发送一份
47 .I ICMP
48 的回显应答。回显请求数据报("
49 .B pings
50 ")含有一个
51 .I IP
52
53 .I ICMP
54 的报头,后跟一个``时间值关键字''然后是一段任意长度的填充字节用于把保持分组长度为16的整数倍。以下是程序的选项:
55 .TP
56 .B -c 
57 .I count
58 在发送(和接收)了正好数量为
59 .I count
60 的回显应答分组后停止操作。在发送了
61 .I count
62 个分组后没有收到任何分组的特别情况是发送导致了终止(选程主机或网关不可达)。
63 .TP
64 .B -d        
65 在所用的套接字上使用
66 .B SO_DEBUG
67 选项。
68 .TP
69 .B  -f       
70 以高速方式来作
71 .I ping
72 。以分组返回的速度来输出其它分组或每秒输出百次。当收到每个回显应答并打印一个退格符时,对每个回显请求都打印一个句点``.''。这可以快速显示出丢弃了多少个分组,只有超级用户可以用这个选项。这(操作)对网络要求非常苛刻,应该慎重使用。
73 .TP
74 .B -i
75 .I  wait
76 在发送每个分组时等待
77 .I wait
78 个秒数。缺省值为每个分组等待一秒。此选项与-f选项不能同时使用。
79 .TP
80 .B-l 
81 .I preload
82 如果指定
83 .I preload
84 ,那么
85 .B ping
86 程序在开始正常运行模式前尽可能快地发送分组。同样只有超级用户可以用这个选项。
87 .TP
88 .B -n        
89 只以数字形式输出信息。这样就不尝试去查找主机名了。
90 .TP
91 .B -p
92 .I  pattern
93 可以指定最多16个填充字节用于保持分组长度为16的整数倍。在网络上诊断与数据相关问题时此选项很有用。例如``-p ff''将使发出的分组都用全1填充数据区。
94 .TP
95 .B -q        
96 静态输出。在程序启动和结束时只显示摘要行。
97 .TP
98 .B -R        
99 记录路由。在回显请求分组中包含记录路由选项并在相应的分组返回时显示路由缓冲区。注意IP首部的容量只能存放9条这样的路由。很多主机
100 忽略或禁用此选项。
101 .TP 
102 .B  -r       
103 在所连接的网络上旁路正常的选路表,直接向主机发送分组。如果主机未处于直接相连的网络上,那么返回一个错误。此选项可用来通过无路由接口对一台主机进行检测(例如当接口已被
104 .I routed
105 程序丢弃后)。
107 .B -s 
108 .I packetsize
109 指定要发送数据的字节量。缺省值为
110 .B 56
111 ,这正好在添加了
112 .B 8
113 字节的
114 .I ICMP
115 首部后组装成
116 .B 64
117 字节的
118 .I ICMP
119 数据报。
121 .B  -v       
122 详细模式输出。打印接收到的回显应答以外的
123 .I ICMP
124 分组。
126 .B  -w
127 .I  waitsecs
129 .I waitsecs
130 秒后停止
131 .I ping
132 程序的执行。当试图检测不可达主机时此选项很有用。
134 当用ping来隔离故障时,应首先在本地主机上运行,以检查本地网络接口有效
135 运行。然后,应该进一步检查主机和网关。计算出往返时间和分组丢失率。如
136 果收到重复的分组,虽然这些分组的往返时间要用于计算往返时间的最小/平均
137 /最大值,但是它们不应该算在刚才计算的丢失的分组中。当指定数量的分组已
138 经发送(和接收)时或如果程序被SIGINT信号终止,会显示一份简短的摘要。
139 .PP      
140 如果ping程序根本没有收到任何返回分组,那它将以返回码1退出。出错时返回
141 2。否则返回0。这些值可能用于查看主机存在与否。
143 此程序专用于网络测试,度量和管理。因为它会使用网络的流量,在正常操作或
144 自动的脚本中使用它并不明智。
145 .SS ICMP分组细节
146 一个无选项的IP首部长为20字节。一个ICMP回显请求分组包含了额外的8个字节
147 用于任意数量的数据。当给出分组长度时,就同时指出了额外数据的长度(缺省为
148 56)。因此接收到的ICMP回显应答这样的一个IP分组内部所含的数据量总是8个字
149 节从而超过了请求数据空间(ICMP首部)。
151 如果数据空间至少有8个字节大小,ping程序使用此空间的头8个字节来包含一个
152 用于计算往返时间的时间戳。如果指定了填充字节小于8个字节,就不给定往返
153 时间了。
154 .SS 重复和受损的分组
156 ping程序会报告重复和受损的分组。分组重复不应该发生,不适当的链路层传输
157 可能会导致这样问题。分组重复在很多情况下可能会发生,虽然存在少量重复并
158 不总会导致警告,但并不是个好信号。
160 分组受损很显然会引起严重警告,并通常会在检测分组的路径上某处指出受损的
161 硬件(在网络中或主机中)。
162 .SS 尝试不同的数据结构
164 互联网络并不会因为分组数据部分的内容不同而区别看待分组。不幸的是,与数据相关的问题都已知潜存于网络中,并在一个较长时期内无法检测到。在很多情况下,引起问题的特殊结构是些未完全转换的内容如全1或全0,接近临界的结构如几乎全0。在命令行上没有足够的必要去指定如全0这样的一个数据结构,因为有影响的结构位于数据链路层,并且与指定的和控制器传输的复杂程度有关。
166 这说明如果你有一个与数据相关的问题,可能必须用很多测试来找出它。如果幸运的话,可以设法查找一个不能在网上发送或发送时要花比同长度的文件更多时间的文件。然后检查此文件中用ping程序的-p选项来指定的重复结构。
167 .SS 有效时间细节
169 一个IP分组的TTL值表示分组在被丢弃前穿越IP路由器的最大数据。在现有的实际中,
170 你可以认为互联网上每个路由器都对TTL字段减1。
172 TCP/IP规定TCP分组的TTL字段应该设为60,但很多系统用较小的值(4.3 BSD
173 用30, 4.2用15)。
175 此字段可能的最大值为255,多数UNIX系统把ICMP回显请求分组的TTL字段设
176 为255。这就是为什么你可以``ping''一些主机而不能用telnet(1)和ftp(1)到达。
178 在正常操作时ping打印它收到分组的TTL值。当选程系统收到一份ping的分组时,
179 在作出响应时可以用TTL字段完成三件事:
180 .TP 20
181 不变;
182 4.3BSD-Tahoe release之前的Berkeley Unix系统是这样做的。
183 在此情况下,收到的分组的TTL值为255减往返路径中的路由器数。
184 .TP 
185 把它设为255;
186 当前的Berkeley Unix系统是这样做的。在此情况下,收到的
187 分组的TTL值为为255减选程系统与执行ping主机之间的路由器数。
188 .TP 
189 把它设为其它值。
190 有些主机对ICMP分组使用与TCP分组相同的值,例如30或
191 60。其它系统使用原始值。(校对者请指教此句之确切含义:meaculpa@21cn.com)
192 .SH 错误
193 很多主机和网关忽略记录路由选项。
195 最大IP首部对如记录路由这样非常有用的选项来说长度太小。但对此无法再做更多
196 事情了。
198 通常情况并不推荐以高速方式作ping,而且只在非常受限的条件下才可对广播地址
199 这样做。
200 .SH 另见
201 netstat(1),  ifconfig(8)
202 .SH 历史
203 ping程序出现于4.3BSD 。
205 .SH "[中文版维护人]"
206 .B meaculpa <meaculpa@21cn.com>
207 .SH "[中文版最新更新]"
208 .B 2000/12/08
209 .SH "[中国Linux论坛man手册页翻译计划]"
210 .BI http://cmpp.linuxforum.net