Discovering the Operating System Using ICMP

December 22, 2016 | Views: 10513

Begin Learning Cyber Security for FREE Now!

FREE REGISTRATIONAlready a Member Login Here

Ping and Traceroute form a simple pair of tools for operating system recognition. The technique consists of the sum of the jumps and TTL.


Firstly, we must be aware of the TTL return value of the various Operating Systems.

– Cyclades = Usually 30

– Linux = Usually 64

– Windows = Usually 128

– Cisco = Usually 255

– Linux + iptables = Usually 255


The first command to execute is Traceroute.

shady@arch:~|⇒  traceroute

traceroute to (, 30 hops max, 60 byte packets

1 (  1.244 ms  1.558 ms  1.702 ms

2 (  5.820 ms  5.812 ms  6.414 ms

3 (  6.370 ms  6.500 ms  6.942 ms

4 (  7.154 ms  7.068 ms  6.932 ms

5 (  48.257 ms  48.242 ms  48.679 ms

6 (  47.500 ms  44.990 ms  44.519 ms

7 (  47.661 ms  45.894 ms  47.833 ms


Remember the total jumps that are equal to 7.


Now we will find the TTL return with the Ping command.

shady@arch:~|⇒  ping -c 1 

PING ( 56(84) bytes of data.

64 bytes from ( icmp_seq=1 ttl=58 time=45.1 ms

— ping statistics —

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 45.192/45.192/45.192/0.000 ms


The return of the TTL is equal to 58. Making the sum between 58 + 7 = 65. The result is very close to 64, you can deduce that there is Linux running.


Share with Friends
Use Cybytes and
Tip the Author!
Share with Friends
Ready to share your knowledge and expertise?
  1. this is not correct. You need to read more on how traceroute works. Read the man page. there is no way to deduce what the OS is from just traceroute. Those IP addresses that you have listed as jumps, are actually the routers that your packet is hitting to get to its intended destination, so traceroute is just showing you the path of the packets, in this case the path is from router jump1 to router jump2 and so on. I guess Cybrary doesn’t verify these posts.

Page 3 of 3«123
Comment on This

You must be logged in to post a comment.

Our Revolution

We believe Cyber Security training should be free, for everyone, FOREVER. Everyone, everywhere, deserves the OPPORTUNITY to learn, begin and grow a career in this fascinating field. Therefore, Cybrary is a free community where people, companies and training come together to give everyone the ability to collaborate in an open source way that is revolutionizing the cyber security educational experience.

Support Cybrary

Donate Here to Get This Month's Donor Badge



Is Linux Worth Learning in 2020?
Views: 294 / December 14, 2019
How do I Get MTA Certified?
Views: 892 / December 12, 2019
How much does your PAM software really cost?
Views: 1343 / December 10, 2019
How Do I Get into Android Development?
Views: 1722 / December 8, 2019

We recommend always using caution when following any link

Are you sure you want to continue?