[107187] in North American Network Operators' Group
Re: interger to I P address
daemon@ATHENA.MIT.EDU (Aaron Gifford)
Wed Aug 27 18:05:45 2008
Date: Wed, 27 Aug 2008 16:05:32 -0600
From: "Aaron Gifford" <astounding@gmail.com>
To: nanog@nanog.org
In-Reply-To: <a7d0162f0808270411m66a3e1b7v9a7ae997ab547bee@mail.gmail.com>
Errors-To: nanog-bounces@nanog.org
Ruby's IPAddr class is quite handy for IPv4 and IPv6 integer
representation conversions.
For IP to integer, whether IPv4 or IPv6, ruby code:
require 'ipaddr'
print "#{IPAddr.new('10.0.0.55').to_i}\n"
print "#{IPAddr.new('2001:0db8:85a3:08d3:1319:8a2e:0370:7334').to_i}\n"
Results in:
167772215
42540766452641195744311209248773141300
And for integer to IPv4, ruby code:
require "ipaddr"
print "#{IPAddr.new(167772215,Socket::AF_INET)}\n"
Results in:
10.0.0.55
And for integer to IPv6, ruby code:
require 'ipaddr'
print "#{IPAddr.new(42540766452641195744311209248773141300,
Socket::AF_INET6)}\n"
Results in:
2001:0db8:85a3:08d3:1319:8a2e:0370:7334
Aaron out.