superbeck的博客 a programmer's records

IP地址的转换和判断

2015-01-19

本文介绍了IP地址的字符串形式和数字形式的两种表示法以及相应的转换规则。

IP地址的的表示法

IP地址的已知的表示方法有两种,一是我们常见的点分表示法(100.100.100.100),另外一种是十进制表示法(1684300900是100.100.100.100的十进制表示法).

两种表示法的转换规则

假设点分表示法的IP地址是a.b.c.d,十进制的表示法的值为:16777216 * a + 65536 * b + 256 * c + d.

也等于2^24 * a + 2^16 * b + 2^8 * c + d.

反过来的转换规则

a = int ( IP Number / 16777216 ) % 256

b = int ( IP Number / 65536 ) % 256

c = int ( IP Number / 256 ) % 256

d = int ( IP Number ) % 256

reference

  1. IP地址点分表示法与十进制表示法的转换

Comments

Content