Ubuntu Utilities

Ubuntu 18.04 Ping Tutorial

Most often when we work with servers and start to SSH them and access them via command-line, we face issues with resolving the domain names to corresponding hostnames. Luckily, manually checking this is not very difficult on Ubuntu via a very easy command-line utility known as Ping. In this lesson, we will explore the capabilities of Ping command on Ubuntu 18.04 LTS machine and see what are the commands we can use with Ping utility for various tasks. Let’s get started.

Getting Started with Ping

Ping is one of the easiest commands to use on Ubuntu. Its syntax is incredibly simple and is described as:

ping domain_name_to_resolve.com

If this utility is able to resolve the domain name passed to it, it will show output as:

PING domain_name_to_resolve.com (192.102.144.29) 56(84) bytes of data.
64 bytes from 192.102.144.29: icmp_req=1 ttl=64 time=0.016 ms
64 bytes from 192.102.144.29: icmp_req=2 ttl=64 time=0.028 ms
64 bytes from 192.102.144.29: icmp_req=3 ttl=64 time=0.021 ms
. . .

This will be regularly output on the terminal window until you break the loop with Ctrl + C combination key. If you want the command to ping only certain number of times, you can tell the utility with an added parameter:

ping -c 3 domain_name_to_resolve.com

This time, we will see the output as:

Ping domain n times

Ping domain n times

This way, we can use the command to check if the domain name resolves to the IP address that we assigned to it or not.

Ping version

We can check the version which is currently installed on our Ubuntu machine for the Ping command-line utility with the following command:

ping -V

We will see the following output with the above command:

Checking Ping version

Checking Ping version

Controlling the size of Packet with Ping

When we ping a domain, a default sized packets are sent to the hosting server. If we want to control the size of packets which are sent to the host when we perform a ping operation, we can use the following command:

ping -s 40 -c 5 www.linuxhint.com

This way, we are sending 40-byte packet data 5 times to the specified hostname, the output we will get is:

Data Packet size for Ping

Data Packet size for Ping

Time Interval for Ping

With Ping utility, the data packets are sent at an interval of one second to the host server. We can update the time gap between the pings with the following command:

ping -i 2 -c 5 www.linuxhint.com

The -i option can accept the second count. We will see a similar output:

Changing time interval for Ping

Changing time interval for Ping

Making a noise with Ping

Ping can even be modified to make a bell sound whenever a response packet is received back from the host server with the following command:

ping -a www.linuxhint.com

Of course, showing its output is not possible.

Suppressing Output for Ping

Usually, we do not care about what happened when each packet is sent and data is received back as a response with each Ping. In these cases, we can suppress the output by showing information related to first Ping and the final data. This can be done as follows:

ping -q -c 3 linuxhint.com

With this command, ping command will be executed in quiet mode and following output will appear on screen:

Ping Quiet mode

Ping Quiet mode

Total Time to Ping

We can even tell Ping command to reach a server and ping it for an only specified amount of time. So, with the following command, we ping the server for only 5 seconds in total:

ping -w 5 linuxhint.com

The following output will appear on screen:

Total interval for Ping

Total interval for Ping

Conclusion

In this lesson, we saw how we can reach out to a server and ping for its availability using one of the most simple command-line utility available on an Ubuntu machine. Read more Ubuntu lessons here.

About the author

Shubham Aggarwal

Shubham Aggarwal

I’m a Java EE Engineer with about 4 years of experience in building quality products. I have excellent problem-solving skills in Spring Boot, Hibernate ORM, AWS, Git, Python and I am an emerging Data Scientist.