任何人都可以帮助我手动将整数转换为IP地址吗?如何手动将整数转换为Ruby中的IP地址
我理解这个概念,但我正在努力弄清楚这个过程;号码631271850,IP地址为'37 .160.113.170'。
我知道,一个IP地址由四个八位和解决方案,我必须手动设置IP地址转换成一个数字是:
def ip_to_num(ip_address)
array = ip_address.split('.').map(&:to_i)
((array[0] * 2**24) + (array[1] * 2**16) + (array[2] * 2**8) + (array[3]))
end
要反过来做我百思不得其解。我如何将其转换回来?
什么是反斜线做在那里? '2 ** 2'是正确的符号。 – tadman
为什么你不使用现有的类呢? Ruby带有https://ruby-doc.org/stdlib-2.4.1/libdoc/ipaddr/rdoc/index.html,并有https://github.com/dspinhirne/netaddr-rb。 –
Newby在这里,所以请原谅我的错误。 – AshNaz87