IPV4

IPV4地址共占用32二进制位。

32位分为4段,每段占8位,转化成10进制就是2^8=256 = (0-255)

eg:

100.100.100.100/32      代表本身

100.100.100.100/24 100.100.100.0——100.100.100.255

100.100.100.100/16 100.100.0.0  ——100.100.255.255

100.100.100.100/8 100.0.0.0    ——100.255.255.255

http://www.ctohome.com/linux-vps-pack/ip.php?ip_subnet=220.181.180.221%2F29


IPV6

IPV6地址共占用128位二进制。

用16进制表示,128位分为8段,每段占16位,每段4个字符。一个完整的地址要4*8=32个字符。

1、整个段4个字符全部都为0的使用双冒号::来表示

压缩前:0000:0000:0000:0000:0000:0000:0000:0000

压缩后:::


压缩前:0000:0000:0000:0000:0000:0000:0000:0001

压缩后:::0001 

2、在压缩IPv6地址时,一个地址中只能出现一个::

原因是有如下情况

压缩前: 3ffe:0000:0000:0000:1010:2a2a:0000:0001 

压缩后: 3ffe::1010:2a2a::0001 

计算机还原会有3个数据:

    3ffe:0000:1010:2a2a:0000:0000:0000:0001 

或 

    3ffe:0000:0000:1010:2a2a:0000:0000:0001 

或 

    3ffe:0000:0000:0000:1010:2a2a:0000:0001 

所以,在压缩IPv6地址时,一个地址中只能出现一个::。

3、允许将一个段中前导部分的0省略不写

压缩前: 0000:0000:0000:0000:0000:0000:0000:0000 

压缩后: 0:0:0:0:0:0:0:0 


压缩前: 0000:0000:0000:0000:0000:0000:0000:0001 

压缩后: 0:0:0:0:0:0:0:1 


压缩前: 2001:0410:0000:1234:FB00:1400:5000:45FF 

压缩后: 2001:410:0:1234:FB00:1400:5000:45FF 


4、以上压缩的综合

压缩前: 0000:0000:0000:0000:0000:0000:0000:0001 

压缩后: ::1


压缩前: 2001:0410:0000:0000:FB00:1400:5000:45FF 

压缩后: 2001:410:: FB00:1400:5000:45FF