PING Command in Linux with examples

PING (Packet Internet Groper) command is used to check the network connectivity between host and server/host. This command takes as input the IP address or the URL and sends a data packet to the specified address with the message “PING” and get a response from the server/host this time is recorded which is called latency. Fast ping low latency means faster connection. Ping uses ICMP(Internet Control Message Protocol) to send an ICMP echo message to the specified host if that host is available then it sends ICMP reply message. Ping is generally measured in millisecond every modern operating system has this ping pre-installed.
Now let see the PING command :

PING Version:
To get ping version installed on your system.

 sudo ping -v

Using PING:

ping www.geeksforgeeks.org

To stop pinging we should use ctrl+c otherwise it will keep on sending packets.

  • min: minimum time to get a response
  • avg: average time to get responses
  • max: maximum time to get a response

Controlling the number of pings:
Earlier we did not define the number of packets to send to the server/host by using -c option we can do so.

ping -c 5 www.geeksforgeeks.org

Controlling the size of packets send:
Ealier a default sized packets were sent to a host but we can send light and heavy packet by using
-s option.

 ping -s 40 -c 5 www.geeksforgeeks.org

Changing the time interval:
By default ping wait for 1 sec to send next packet we can change this time by using -i option.

 ping -i 2 www.geeksforgeeks.org

Now, the ping interval will change to 2 seconds.

To get only summary:
To only get the summary about the network use -q option

 ping -c 5 -q www.geeksforgeeks.org

To Timout PING:
To stop pingig after sometime use -w option.

 ping -w 3 www.geeksforgeeks.org

This will stop pinging after 3 seconds

Flooding with PING:
To send packets as soon as possible. This is used to test network performance.

 ping -f www.geeksforgeeks.org

To Add Timestamp
It is current time of event recorded by a machine over a network. It works by using TS option of IP packet.
We have three option with it

  1. tsonly (timestamp only)
  2. tsandaddr (timestamp and address)
  3. tsprespec (timestamp pre-specified for multiple hosts)
 ping -T tsonly -c 2 127.0.0.1
 ping -T tsandaddr -c 2 127.0.0.1

Time to wait for response:
Sets time to wait for a response.

 ping -c 5 -W 3 www.geeksforgeeks.org

To fill packet with data:
We can fill data in packet using -p option. Like -p ff will fill packet with ones.

 ping -c 5 -p ff www.geeksforgeeks.org

Path MTU discovery:
It is a simple protocol to find out the maximum MTU(Maximum Transmission Unit) a TCP path can take.
We use an option with -m do (prohibit fragmentation), want (do PMTU discovery, fragment locally when packet size is large), or dont (do not set DF flag).

 ping -c 5 -M want www.geeksforgeeks.org

Specify TTL(Time To Live):
It is maximum hop a packet can travel before getting discarded.A value 0 will restricty packet to same host.

ping -c 5 -t 64 www.geeksforgeeks.org



My Personal Notes arrow_drop_up


If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.