Difference between revisions of "Ping (command)"

From wikieduonline
Jump to navigation Jump to search
Tags: Mobile web edit, Mobile edit
Tags: Mobile web edit, Mobile edit
Line 2: Line 2:
 
* Count of tests: (<code>-c</code>)<ref>https://linux.die.net/man/8/ping</ref> (Linux and macOS), (<code>-n</code> Windows)
 
* Count of tests: (<code>-c</code>)<ref>https://linux.die.net/man/8/ping</ref> (Linux and macOS), (<code>-n</code> Windows)
 
* Size of the payload
 
* Size of the payload
* Limits for the number of network hops (TTL) that probes traverse
+
* Limits for the number of network hops (<code>[[TTL]]</code>) that probes traverse
 
Timing options:
 
Timing options:
 
* Timeout for exiting: <code>-t</code> (macOS), Linux not implemented.
 
* Timeout for exiting: <code>-t</code> (macOS), Linux not implemented.

Revision as of 17:03, 27 May 2020

ping command is available in almost all operating systems. The command-line options of the ping utility and its output vary between the numerous implementations. Options may include among others:

  • Count of tests: (-c)[1] (Linux and macOS), (-n Windows)
  • Size of the payload
  • Limits for the number of network hops (TTL) that probes traverse

Timing options:

  • Timeout for exiting: -t (macOS), Linux not implemented.
  • Interval between the requests
  • Time to wait for a response (-W) miliseconds for macOS and seconds for Linux

Output format:

  • Include timestamp on each line: Linux (-D)

Linux

$ ping -c 5 www.example.com
PING www.example.com (93.184.216.34): 56 data bytes
64 bytes from 93.184.216.34: icmp_seq=0 ttl=56 time=11.632 ms
64 bytes from 93.184.216.34: icmp_seq=1 ttl=56 time=11.726 ms
64 bytes from 93.184.216.34: icmp_seq=2 ttl=56 time=10.683 ms
64 bytes from 93.184.216.34: icmp_seq=3 ttl=56 time=9.674 ms
64 bytes from 93.184.216.34: icmp_seq=4 ttl=56 time=11.127 ms

--- www.example.com ping statistics ---
5 packets transmitted, 5 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 9.674/10.968/11.726/0.748 ms


macOS

ping -c1 -t1  www.example.com

Activities

Advanced

  1. Review source code of different ping implementation:
Linux: https://github.com/iputils/iputils/blob/master/ping.c
BSD: https://sourceforge.net/p/iputils/code/ci/HEAD/tree/ping.c
macOS: https://opensource.apple.com/source/network_cmds/network_cmds-511/ping.tproj/ping.c.auto.html
  • Use nmap for ping a full subnet: nmap -sn 192.168.0.*
  • Windows: netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow

See also

  • https://linux.die.net/man/8/ping
  • Advertising: