|
|
|
Ping是潜水艇人员的专用术语,表示回应的声纳脉冲,在网络中Ping 是一个十分好用的TCP/IP工具。它主要的功能是用来检测网络的连通情况和分析网络速度。在我们的赛迪网技术社区里有这样一篇帖子《PING命令详解》对ping命令进行了详细解释:
( @% `8 f7 u' Z/ t8 q9 f Ping有好的善的一面也有恶的一面。先说一下善的一面吧。上面已经说过Ping的用途就是用来检测网络的连同情况和分析网络速度,但它是通过什么来显示连通呢?这首先要了解Ping的一些参数和返回信息。
! i; J# u1 @% I H, a& X
9 ^+ L2 R% n' d& o( ?$ c" W 以下是PING的一些参数:
. f+ K1 \. y+ |% D' v' [
- B7 M* [/ u0 N3 @" |1 ^( v ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] | [-k computer-list] [-w timeout] destination-list & s' }* F5 g* J2 m" m
- v7 m0 M. a% w1 b7 Q3 ~2 c6 j* b
........ ) z1 t, b' E3 m! ]( k
$ x& _ Q, v" r7 t% K5 Q -t * S/ P) I- |8 r s! z
# M' x# G2 `: w* ?! W3 Z Ping 指定的计算机直到中断。
3 }$ u/ M# f0 |1 q+ a2 l# E8 M: S# d
-a . H* f) g6 C, \; V. ^4 g
# k/ ~* m g9 E( ]) S1 U( h
将地址解析为计算机名。
0 O4 Z8 D3 m% x" o0 f
6 v8 B% n, o. d0 k1 ~ -n count
0 j) I. |) u* ]- s7 s/ q; Z/ m6 `1 Y4 S! t# [ g0 c" @& W
发送 count 指定的 ECHO 数据包数。默认值为 4。 ' I4 y2 q) H0 a8 B$ Q# c9 V! x. D
7 | N% N' {% s( {$ T6 a9 S$ s; h -l length
' O; Z0 }; |, j6 G4 y' E& F1 {6 K8 `* b8 Q$ }- p4 [$ N( Y
发送包含由 length 指定的数据量的 ECHO 数据包。默认为 32 字节;最大值是65,527。 v4 t n3 s+ Q3 w1 l
& K5 r3 V3 M C+ o- }' u" e/ g2 Q% M -f
3 T, |/ Z6 O* L; \* f% V1 ]) ?# o2 i3 m6 l3 o) {8 q
在数据包中发送"不要分段"标志。数据包就不会被路由上的网关分段。 0 n- t' b- I9 S; f
' |: G, V1 D0 D5 V# L) ? -i ttl 4 o. A* H: {# R! k! B' T7 O- ?
4 S i. `3 A+ A+ \% Y0 o 将"生存时间"字段设置为 ttl 指定的值。 * X2 N* ]+ x- ?' n$ H5 R" J8 X! K) j0 x
% _7 m( H% E6 d, n -v tos
$ s- T0 A0 H3 A, A4 h, D
& s# `; l7 q' V+ }; i3 e 将"服务类型"字段设置为 tos 指定的值。
! ~1 i" u2 T6 I: i) H0 a
0 I; r7 Q& L$ N+ o, c$ h3 y! x& \, L -r count $ @3 u7 `9 G% T9 Q2 o
9 O7 K) r' n$ R+ Y8 Y8 ?- ^
在"记录路由"字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机。
6 S: |, F8 N+ n( Q
/ e5 j7 r- L' [2 t& O. {* L& c -s count
* H, H3 `; _3 H; ~9 d8 T" {! y- g8 ~6 X+ K+ l' ]- Y* k
指定 count 指定的跃点数的时间戳。 ( a0 y! W# h! Q, }4 Z
5 c2 R. j A4 [9 P
-j computer-list . s! C8 Y: g* ?' w1 T3 A5 T6 t
) v9 b0 `" y: [$ L6 N, Z! `5 {
利用 computer-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为 9。 7 E. w* g% {9 O! W4 G
2 |$ Y G4 ^! X) F
-k computer-list ! h4 R3 [* ~) D2 }$ c* S
9 B, a, `2 }+ Q7 d {4 W' x3 R
利用 computer-list 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为 9。 2 P2 @6 w: W0 T; q! H) u
6 x' Z, k; D4 S i4 k1 k( v -w timeout
$ n# H7 N; Z* w* A- s; x6 m" A% [- z# n0 m& K% l1 A* {) ]0 H
指定超时间隔,单位为毫秒。
/ Q: e' _& Z" k6 l) L6 R, U: S
6 Z* ]( {' Z" ], a destination-list - x3 s4 G; l) |+ i. S7 x2 \
# W: O% ~1 a l* t/ u, H9 S. ^ 指定要 ping 的远程计算机。 - X. j/ @8 b8 E
" i1 e. [3 s% [. f. M$ L# C1 X- `+ d Ping的返回信息有"Request Timed Out"、"Destination Net Unreachable"和"Bad IP address"还有"Source quench received"。
# }& D( p; c8 G* F$ }/ r6 C( [: L' }, @, Q4 h" b+ J
"Request Timed Out"这个信息表示对方主机可以到达到TIME OUT,这种情况通常是为对方拒绝接收你发给它的数据包造成数据包丢失。大多数的原因可能是对方装有防火墙或已下线。 # ~* r0 d; J( }& ~9 o. W6 R3 D6 ]
7 G! G) i- m e4 q' b# R "Destination Net Unreachable"这个信息表示对方主机不存在或者没有跟对方建立连接。这里要说明一下"destination host unreachable"和"time out"的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其它原因不可到达,这时候会出现"time out",如果路由表中连到达目标的路由都没有,那就会出现"destination host unreachable"。 : [& I9 y( W _" q
4 R3 A) i7 ?- w/ J0 H
"Bad IP address" 这个信息表示你可能没有连接到Dns服务器所以无法解析这个IP地址,也可能是IP地址不存在。
6 I) j! {2 c3 i7 b( B2 P/ ~+ Q9 c( V/ \! Y
"Source quench received"信息比较特殊,它出现的机率很少。它表示对方或中途的服务器繁忙无法回应。
1 F/ s7 \8 a/ ], Q
8 V2 o1 z# ^: c3 }- Q E" B# M 怎样使用Ping这命令来测试网络连通呢? u1 V* {+ A! l) G7 k
7 W: p+ y* A1 i# @
连通问题是由许多原因引起的,如本地配置错误、远程主机协议失效等,当然还包括设备等造成的故障。 2 f0 \' ]5 l( n: W! ?- b6 }
, b h2 m2 X3 _6 _0 T# ~4 e, \
首先我们讲一下使用Ping命令的步骤。 |
|