1. 程式人生 > >IPv6地址表示方法詳解

IPv6地址表示方法詳解

IPv6是網際網路協議的第六版;最初它在IETF的 IPng選取過程中勝出時稱為網際網路新一代網際協議(IPng),IPv6是被正式廣泛使用的第二版網際網路協議。

現有標準IPv4只支援大概40億(4×109)個網路地址,而IPv6支援3.4 ×1038個,這等價於在地球上每平方英寸有4.3×1020地址(6.7×1017地址/mm2)。(IPv5不是IPv4的繼承,而是實驗性的面向流的資料流協議,用來對聲音,影象等提供支援。)

IPv6地址表示

IPv6地址為128位長,但通常寫作8組,每組為四個十六進位制數的形式。例如:

2001:0db8:85a3:08d3:1319:8a2e:0370:7344

是一個合法的IPv6地址。

如果四個數字都是零,可以被省略。例如:

2001:0db8:85a3:0000:1319:8a2e:0370:7344

等價於

2001:0db8:85a3::1319:8a2e:0370:7344

遵從這些規則,如果因為省略而出現了兩個以上的冒號的話,可以壓縮為一個,但這種零壓縮在地址中只能出現一次。因此:

2001:0DB8:0000:0000:0000:0000:1428:57ab
2001:0DB8:0000:0000:0000::1428:57ab
2001:0DB8:0:0:0:0:1428:57ab
2001:0DB8:0::0:1428:57ab
2001:0DB8::1428:57ab

都使合法的地址,並且他們是等價的。但

 2001::25de::cade

是非法的。(因為這樣會使得搞不清楚每個壓縮中有幾個全零的分組)

同時前導的零可以省略,因此:

2001:0DB8:02de::0e13   
 等價於
2001:DB8:2de::e13

如果這個地址實際上是IPv4的地址,後32位可以用10進位制數表示;因此:

ffff:192.168.89.9 等價於 ::ffff:c0a8:5909, 但不等價於 ::192.168.89.9 和 ::c0a8:5909。

ffff:1.2.3.4格式叫做IPv4映像地址,是不建議使用的。而::1.2.3.4格式叫做IPv4一致地址

IPv4 地址可以很容易的轉化為IPv6格式。舉例來說,如果IPv4的一個地址為135.75.43.52(十六進位制為0x874B2B34),它可以被轉化為0000:0000:0000:0000:0000:0000:874B:2B34或者::874B:2B34。同時,還可以使用混合符號(IPv4-compatible address),則地址可以為::135.75.43.52。