#!/usr/bin/perl -w use strict; use Socket; for my $host (@ARGV) { my $addr = inet_ntoa( scalar gethostbyname($host) ); my $bin; $bin .= dec2bin($_) for (split /[.]/, $addr); print bin2dec($bin), "\n"; } sub bin2dec { unpack("N", pack("B32", substr("0" x 32 . shift, -32))); } sub dec2bin { my $str = unpack("B32", pack("N", shift)); # we only need the lowest 8 bits (ipv4 range 0-255) return substr $str, length($str) - 8; } #### [ar0n@zendo perl]% perl ip2dec.pl perlmonks.org 3467251275