IPv4 Address Conversion Tricks
Published: 01-09-2013 | Author: Remy van Elst | Text only version of this article
Did you know that
http://3515693643/ is a valid link? Why? Because this is the
decimal form of the binary IP address. Normally we represent IP addresses as
10.0.0.1, 4 blocks of numbers. Those numbers are actually binary octets
represented in decimal, therefore they can never be more than 255. If we take
the whole binary number of all blocks, and convert that to base 10, we get a
result like above, which in turn is a working network address.
This "feature" is documented in the inet_aton(3) manpage.
Take the IP address
18.104.22.168. As a binary octets that would be:
1101000.11000110.10011101.001001011. That whole number (without the dots),
converted back to decimal in turn is:
And, that is a working network address:
$ ping 3515693643 PING 3515693643 (22.214.171.124): 56 data bytes 64 bytes from 126.96.36.199: icmp_seq=0 ttl=47 time=180.208 ms 64 bytes from 188.8.131.52: icmp_seq=1 ttl=47 time=197.890 ms