in reply to Does inet_aton() return a numeric value?

Indeed, it doesn't. Assumong NetAddr::IP::Util::inet_aton works the same as Socket::inet_aton, and the inet_aton of the C library, it returns a packed (C) struct. Which typically consists of an integer. So, you should be able to easily unpack it:
$ perl -MSocket -wE 'say unpack "N", inet_aton ("127.0.0.1");' 2130706433 $ echo '127 * 256^3 + 1' | bc 2130706433 $