ping
ping
åç§°æ¦è¦
æè¿°
é项
ICMPåç»ç»è
éå¤ååæçåç»
å°è¯ä¸åçæ°æ®ç»æ
æææ¶é´ç»è
缺é·
å¦è§
åå²
å®å¨æ§
è·å
è·
åç§°
ping - åç½ç»ä¸»æºåé ICMP åæ¾è¯·æ±ï¼ECHO_REQUESTï¼åç»
æ¦è¦
ping [-aAbBdDfhLnOqrRUvV46] [-c count] [-F flowlabel] [-i interval] [-I interface] [-l preload] [-m mark] [-M pmtudisc_option] [-N nodeinfo_option] [-w deadline] [-W timeout] [-p pattern] [-Q tos] [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp option] [hop ...] destination
æè¿°
ping ä½¿ç¨ ICMP åè®®è§å®ç ECHO_REQUEST æ°æ®æ¥å¼åä¸ä¸ªæ¥èªä¸»æºæç½ç®¡ç ICMP ECHO_RESPONSE ååºã ECHO_REQUEST æ°æ®æ¥ï¼âpingâä¿¡æ¯ï¼æä¸ä¸ª IP å ICMP 头é¨ï¼ å¶åè·éäºä¸ä¸ªç»æï¼åå«ä¸ä¸ªæ¶é´ç¸å³çå¼ä»¥åä¸ä¸ªä»»æçâpadâ åèçéæºæ°ç¨ä»¥å¡«åæ°æ®åã
pingå¯ä»¥åæ¶å¨ IPv4 å IPv6 ä¸å·¥ä½ã å¦éæç¡®å¼ºå¶æå®ä½¿ç¨å¶ä¸- æä¸ªï¼å¯ä»¥ä½¿ç¨ -4 æè -6ã
ping è¿å¯ä»¥åé IPv6 èç¹ä¿¡æ¯æ¥è¯¢ï¼Node Information Quries, RFC4620ï¼ã ä¸é´èç¹ï¼hopï¼å¯è½ä¸è¢«å许ï¼å 为 IPv6 æºè·¯ç±å·²ä¸èµæä½¿ç¨ï¼RFC5095ï¼ã
é项
|
-4 |
ä»ä½¿ç¨ IPv4ã |
|||
|
-6 |
ä»ä½¿ç¨ IPv6ã |
|||
|
-a |
Audible ping. |
|||
|
-A |
èªéåº pingã |
|||
|
-b |
å许对ä¸ä¸ªå¹¿æå°åè¿è¡ pingã |
|||
|
-t ttl |
ä»è¿è¡pingã 设置 IP ç TTLï¼Time to Liveï¼ã |
-T timestamp option
è®¾ç½®ç¹æ®ç IP æ¶é´æ³é项ã timestamp option å¯ä»¥æ¯ tsonlyï¼ä»æ¶é´æ³ï¼ã tsandaddrï¼æ¶é´æ³åå°åï¼æè tsprespec host1 [host2 [host3 [host4]]]ï¼é¢åæå®è·³æ°çæ¶é´æ³ï¼ã
|
-U |
æå°å®æ´çç¨æ·å°ç¨æ·çå»¶è¿ï¼æ§è¡ä¸ºï¼ãé常æåµä¸ ping æå°ç½ç»å¾è¿å»¶æ¶ï¼å®ä»¬å¯è½ä¸åï¼ä¾å¦å¨ DNS è§£æåºç°å¤±è´¥æ¶ã | ||
|
-v |
è¾åºè¯¦ç»ä¿¡æ¯ã | ||
|
-V |
æ¾ç¤ºçæ¬å¹¶éåºã | ||
|
-c |
count å¨åé(忥æ¶)äºæ£å¥½æ°é为 count çåæ¾åºçåç»å忢æä½ãå¨åéäº count 个åç»åæ²¡ææ¶å°ä»»ä½åç»çç¹å«æåµæ¯åé导è´äºç»æ- ¢(éç¨ä¸»æºæç½å³ä¸å¯è¾¾)ã | ||
|
-d |
卿ç¨ç奿¥åä¸ä½¿ç¨ SO_DEBUG é项ã å®éä¸ï¼è¿ä¸ªå¥æ¥åé项没æè¢« Linux åæ ¸æä½¿ç¨ã | ||
|
-D |
卿¯è¡ä¹åæå°æ¶é´æ³ï¼UNIX æ¶é´ + gettimeofday ä¸ç毫ç§ï¼ã | ||
|
-f |
以é«éï¼æ´ªæ°´ï¼æ¹å¼è¿è¡ pingã 以åç»è¿åçé度æ¥è¾åºå¶å®åç»ææ¯ç§è¾åºç¾æ¬¡ã彿¶å°æ¯ä¸ªåæ¾åºç- å¹¶æå°ä¸ä¸ªéæ¼ç¬¦æ¶ï¼å¯¹æ¯ä¸ªåæ¾è¯·æ±é½æå°ä¸ä¸ªå¥ç¹‘‘.’’ãè¿å¯ä»¥å¿«éæ¾ç¤ºåºä¸¢å¼äºå¤å°ä¸ªåç»ï¼åªæè¶çº§ç¨æ·å¯ä»¥ç¨è¿ä¸ªé项ãè¿ï¼æä½ï¼å¯¹ç½ç»è¦æ±é常èå»ï¼åºè¯¥æé使ç¨ã | ||
|
-i |
wait å¨åéæ¯ä¸ªåç»æ¶çå¾ wait ä¸ªç§æ°ã缺çå¼ä¸ºæ¯ä¸ªåç»çå¾ä¸ç§ãæ- ¤é项ä¸-fé项ä¸è½åæ¶ä½¿ç¨ã | ||
|
-l |
preload 妿æå® preload ï¼é£ä¹ ping ç¨åºå¨å¼å§æ- £å¸¸è¿è¡æ¨¡å¼åå°½å¯è½å¿«å°åéåç»ãåæ·åªæè¶çº§ç¨æ·å¯ä»¥ç¨è¿ä¸ªé项ã | ||
|
-n |
åªä»¥æ°åå½¢å¼è¾åºä¿¡æ¯ãè¿æ ·å°±ä¸å°è¯å»æ¥æ¾ä¸»æºåäºã | ||
|
-p |
pattern å¯ä»¥æå®æå¤16个填åå- èç¨äºä¿æåç»é¿åº¦ä¸º16çæ´æ°åãå¨ç½ç»ä¸è¯æä¸æ°æ®ç¸å³é®é¢æ¶æ- ¤é项徿ç¨ãä¾å¦‘‘-p ff’’å°ä½¿ååºçåç»é½ç¨å¨1å¡«åæ°æ®åºã | ||
|
-q |
éæè¾åºãå¨ç¨åºå¯å¨åç»ææ¶åªæ¾ç¤ºæè¦è¡ã | ||
|
-R |
è®°å½è·¯ç±ãå¨åæ¾è¯·æ±åç»ä¸- åå«è®°å½è·¯ç±é项并å¨ç¸åºçåç»è¿åæ¶æ¾ç¤ºè·¯ç±ç¼å²åºã注æIPé¦é¨ç容éåªè½å- æ¾9æ¡è¿æ ·çè·¯ç±ãå¾å¤ä¸»æº å¿½ç¥æç¦ç¨æ¤é项ã | ||
|
-r |
å¨æè¿æ¥çç½ç»ä¸æè·¯æ- £å¸¸çé路表ï¼ç´æ¥å主æºåéåç»ãå¦æä¸»æºæªå¤äºç´æ¥ç¸è¿çç½ç»ä¸ï¼é£ä¹è¿åä¸ä¸ªé误ãæ- ¤é项å¯ç¨æ¥éè¿æ è·¯ç±æ¥å£å¯¹ä¸å°ä¸»æºè¿è¡æ£æµ(ä¾å¦å½æ¥å£å·²è¢« routed ç¨åºä¸¢å¼å)ã | ||
|
-s |
packetsize æå®è¦åéæ°æ®çåèéã缺çå¼ä¸º 56 ï¼è¿æ£å¥½å¨æ·»å äº 8 åèç ICMP é¦é¨åç»è£æ 64 åèç ICMP æ°æ®æ¥ã | ||
|
-w |
waitsecs å¨ waitsecs ç§å忢 ping ç¨åºçæ§è¡ãå½è¯å¾æ£æµä¸å¯è¾¾ä¸»æºæ¶æ¤é项徿ç¨ã |
å½ç¨pingæ¥é离æéæ¶ï¼åºé¦å卿¬å°ä¸»æºä¸è¿è¡ï¼ä»¥æ£æ¥æ¬å°ç½ç»æ¥å£ææ è¿è¡ãç¶åï¼åºè¯¥è¿ä¸æ¥æ£æ¥ä¸»æºåç½å³ã计ç®åºå¾è¿æ¶é´ååç»ä¸¢å¤±çãå¦ ææ¶å°éå¤çåç»ï¼è½ç¶è¿äºåç»çå¾è¿æ¶é´è¦ç¨äºè®¡ç®å¾è¿æ¶é´çæå°/å¹³å /æå¤§å¼ï¼ä½æ¯å®ä»¬ä¸åºè¯¥ç®å¨åæè®¡ç®ç丢失çåç»ä¸ã彿宿°éçåç»å·² ç»åé(忥æ¶)æ¶æå¦æç¨åºè¢«SIGINTä¿¡å·ç»æ¢ï¼ä¼æ¾ç¤ºä¸ä»½ç®ççæè¦ã
妿pingç¨åºæ ¹æ¬æ²¡ææ¶å°ä»»ä½è¿ååç»ï¼é£å®å°ä»¥è¿åç 1éåºãåºéæ¶è¿å 2ãå¦åè¿å0ãè¿äºå¼å¯è½ç¨äºæ¥ç主æºåå¨ä¸å¦ã
æ¤ç¨åºä¸ç¨äºç½ç»æµè¯ï¼åº¦éå管çãå 为å®ä¼ä½¿ç¨ç½ç»çæµéï¼å¨æ£å¸¸æä½æ èªå¨çèæ¬ä¸ä½¿ç¨å®å¹¶ä¸ææºã
ICMPåç»ç»è
ä¸ä¸ªæ é项çIPé¦é¨é¿ä¸º20åèãä¸ä¸ªICMPåæ¾è¯·æ±åç»åå«äºé¢å¤ç8个åè ç¨äºä»»ææ°éçæ°æ®ãå½ç»åºåç»é¿åº¦æ¶ï¼å°±åæ¶æåºäºé¢å¤æ°æ®çé¿åº¦(缺ç为 56)ãå æ¤æ¥æ¶å°çICMPåæ¾åºçè¿æ ·çä¸ä¸ªIPåç»å鍿å«çæ°æ®éæ»æ¯8个å èä»èè¶è¿äºè¯·æ±æ°æ®ç©ºé´(ICMPé¦é¨)ã
å¦ææ°æ®ç©ºé´è³å°æ8个åè大å°ï¼pingç¨åºä½¿ç¨æ¤ç©ºé´ç头8个åèæ¥åå«ä¸ä¸ª ç¨äºè®¡ç®å¾è¿æ¶é´çæ¶é´æ³ã妿æå®äºå¡«ååèå°äº8个åèï¼å°±ä¸ç»å®å¾è¿ æ¶é´äºã
éå¤ååæçåç»
pingç¨åºä¼æ¥åéå¤ååæçåç»ãåç»éå¤ä¸åºè¯¥åçï¼ä¸éå½çé¾è·¯å±ä¼ è¾ å¯è½ä¼å¯¼è´è¿æ ·é®é¢ãåç»éå¤å¨å¾å¤æåµä¸å¯è½ä¼åçï¼è½ç¶åå¨å°ééå¤å¹¶ 䏿»ä¼å¯¼è´è¦åï¼ä½å¹¶ä¸æ¯ä¸ªå¥½ä¿¡å·ã
åç»åæå¾æ¾ç¶ä¼å¼èµ·ä¸¥éè¦åï¼å¹¶é常ä¼å¨æ£æµåç»çè·¯å¾ä¸æå¤æåºåæç 硬件(å¨ç½ç»ä¸æä¸»æºä¸)ã
å°è¯ä¸åçæ°æ®ç»æ
äºèç½ç»å¹¶ä¸ä¼å为åç»æ°æ®é¨åçå容ä¸åèåºå«çå¾åç»ãä¸å¹¸çæ¯ï¼ä¸æ°æ®ç¸å³çé®é¢é½å·²ç¥æ½å- äºç½ç»ä¸- ï¼å¹¶å¨ä¸ä¸ªè¾é¿æ¶æåææ³æ£æµå°ãå¨å¾å¤æåµä¸ï¼å¼èµ·é®é¢çç¹æ®ç»ææ¯äºæªå®å¨è½¬æ¢çå容å¦å¨1æå¨0ï¼æ¥è¿ä¸´ççç»æå¦åä¹å¨0ãå¨å½ä»¤è¡ä¸æ²¡æè¶³å¤çå¿è¦å»æå®å¦å¨0è¿æ·çä¸ä¸ªæ°æ®ç»æï¼å为æå½±åçç»æä½äºæ°æ®é¾è·¯å±ï¼å¹¶ä¸ä¸æå®çåæ§å¶å¨ä¼è¾ç夿ç¨åº¦æå³ã
è¿è¯´æå¦æä½æä¸ä¸ªä¸æ°æ®ç¸å³çé®é¢ï¼å¯è½å¿é¡»ç¨å¾å¤æµè¯æ¥æ¾åºå®ã妿幏è¿çè¯ï¼å¯ä»¥è®¾æ³æ¥æ¾ä¸ä¸ªä¸è½å¨ç½ä¸åéæåéæ¶è¦è±æ¯åé¿åº¦çæä»¶æ´å¤æ¶é´çæä»¶ãç¶åæ£æ¥æ- ¤æä»¶ä¸ç¨pingç¨åºç-péé¡¹æ¥æå®çéå¤ç»æã
æææ¶é´ç»è
ä¸ä¸ªIPåç»çTTLå¼è¡¨ç¤ºåç»å¨è¢«ä¸¢å¼åç©¿è¶IPè·¯ç±å¨çæå¤§æ°æ®ãå¨ç°æçå®éä¸- ï¼ ä½ å¯ä»¥è®¤ä¸ºäºèç½ä¸æ¯ä¸ªè·¯ç±å¨é½å¯¹TTLåæ®µå1ã
TCP/IPè§å®TCPåç»çTTLåæ®µåºè¯¥è®¾ä¸º60ï¼ä½å¾å¤ç³»ç»ç¨è¾å°çå¼(4.3 BSD ç¨30, 4.2ç¨15)ã
æ¤å段å¯è½çæå¤§å¼ä¸º255ï¼å¤æ°UNIXç³»ç»æICMPåæ¾è¯·æ±åç»çTTLåæ®µè®¾ 为255ãè¿å°±æ¯ä¸ºä»ä¹ä½å¯ä»¥‘‘ping’’ä¸äºä¸»æºèä¸è½ç¨telnet(1)åftp(1)å°è¾¾ã
卿£å¸¸æä½æ¶pingæå°å®æ¶å°åç»çTTLå¼ãå½éç¨ç³»ç»æ¶å°ä¸ä»½pingçåç»æ¶ï¼ å¨ä½åºååºæ¶å¯ä»¥ç¨TTLåæ®µå®æä¸ä»¶äºï¼
|
ä¸åï¼ |
4.3BSD-Tahoe releaseä¹åçBerkeley Unixç³»ç»æ¯è¿æ ·åçã 卿- ¤æåµä¸ï¼æ¶å°çåç»çTTLå¼ä¸º255åå¾è¿è·¯å¾ä¸çè·¯ç±å¨æ°ã | ||
|
æå®è®¾ä¸º255ï¼ |
å½åçBerkeley Unixç³»ç»æ¯è¿æ ·åçã卿¤æåµä¸ï¼æ¶å°ç åç»çTTLå¼ä¸ºä¸º255åéç¨ç³»ç»ä¸æ§è¡ping主æºä¹é´çè·¯ç±å¨æ°ã | ||
|
æå®è®¾ä¸ºå¶å®å¼ã |
æäºä¸»æºå¯¹ICMPåç»ä½¿ç¨ä¸TCPåç»ç¸åçå¼ï¼ä¾å¦30æ 60ãå¶å®ç³»ç»ä½¿ç¨åå§å¼ã(æ ¡å¯¹èè¯·æææ- ¤å¥ä¹ç¡®åå«ä¹ï¼meaculpa@21cn.com) |
缺é·
|
• |
å¾å¤ä¸»æºåç½å³å¿½ç¥è®°å½è·¯ç±ï¼RECORD_ROUTEï¼é项ã | ||
|
• |
æå¤§ IP 头é¨é¿åº¦å¯¹å¦è®°å½è·¯ç±ï¼RECORD_ROUTE)è¿æ·é常æç¨çé项æ¥è¯´é¿åº¦å¤ªå°ã ä½å¯¹è¿ä¸ªé®é¢ä¹æ²¡ä»ä¹å¯åçäºã | ||
|
• |
é常æåµå¹¶ä¸æ¨è以é«éæ¹å¼ä½ pingï¼ èä¸åªåºå½å¨é常åéçæ¡ä»¶ä¸æå¯å¯¹å¹¿æå°åè¿æ ·åã |
å¦è§
netstat(1), ifconfig(8).
åå²
ping å½ä»¤åºç°äº 4.3BSDã
å½åææ¡£æè¿°ççæ¬æ¯å®å¨ Linux å¹³å°ä¸çåç»çæ¬ã
ä»çæ¬ s20160815 å¼å§ï¼ping6 äºè¿å¶ç¨åºä¸ååå¨ã å®å·²ç»è¢«åå¹¶è¿äº ping ç¨åºä¸ã å建ä¸ä¸ªå为 ping6 æå ping ç符å·é¾æ¥å¯ä»¥æä¾åæçåè½ã
å®å¨æ§
ping å¨ä¸è¿°æ¡ä»¶ä¸è¿è¡æ¶éè¦ CAP_NET_RAW è½åï¼ 1) 妿ç¨åºè¢«ç¨äºè¿è¡ non-echo æ¥è¯¢ï¼è¯·è§ -N é项ï¼ï¼æ 2) å¦æåæ ¸ä¸æ¯æ non-raw ICMP 奿¥å- ï¼æ 3) å¦æç¨æ·ä¸è¢«å许å建 ICMP echo 奿¥åã æ¬ç¨åºè®¾è®¡å¯ä»¥ç¨äºå¨è®¾ç½®ç¨æ·ID为 root çæåµä¸è¿è¡ã
è·å
ping æ¯ iputils 软件åçä¸é¨åã å¶ææ°çæ¬æºä»£ç å¯ä»¥ä»ä¸è¿°å°åè·åå°ï¼ http://www.skbuff.net/iputils/iputils-current.tar.bz2.
è·
æ¬é¡µé¢ä¸æçç±ä¸æ
man
æå页计åæä¾ã
䏿 man
æå页计åï¼https://github.com/man-pages-zh/manpages-zh