The harder way:
Decimal: 1089055123
Hex (dashes inserted at octals): 40-E9-A9-93 Decimal (ofeach octet):
64-233-169-147 IP Address: 64.233.169.147
The Python way
>>> import socket, struct
>>> socket.inet_ntoa(struct.pack('>l', 1089055123))
'64.233.169.147'The Perl way:
sub ntoa
{
my $one = shift;
my $four = $one & 0xff;
$one >>= 8;
my $three = $one & 0xff;
$one >>= 8;
my $two = $one & 0xff;
$one >>= 8;
return "$one.$two.$three.$four";
}#or in one line, like ipcalc does:
sub ntoa_in_one_line { join(".", unpack("CCCC", pack("N", $_[0]))); }print ntoa(1089055123) . "\n";
print ntoa_in_one_line(1089055123) . "\n";
The PHP way:
function convertIntegerToIpv4($integer)
{
$max_value = pow(2,32); //4,294,967,296
$bug_fix = 0;
settype($integer, float);
if($integer > 2147483647) $bug_fix = 16777216;
if(is_numeric($integer))
{
if ($integer >= $max_value || $integer < 0)
{
return ('Not a valid IPv4 integer');
}
$ip = (sprintf("%u.%u.%u.%u",
$integer / 16777216,
(($integer % 16777216) + $bug_fix) / 65536,
(($integer % 65536) + $bug_fix / 256) / 256,
($integer % 256) + $bug_fix / 256 / 256
)
);
return($ip);
}
else {
return('');
}
}