IPv4與IPv6的差別
有別於 IPv4 使用十進位數字和「.」分隔來表示 IP 位址(比如 163.26.197.1),IPv6 使用 16 進位數字和「:」分隔來表示位址。
由這裡,我們可以觀察得到,IPv6 的位址使用「:」分隔,共有 8 組,每組中有四個 16 進位數字,每組佔 16 bits。每個 16 進位數字,有一特殊的英文稱呼,叫 nibble。一個 nibble 等於 4 bits。
如何用瀏覽器連接 IPv6 IP 位址的網站? 請在位址列鍵入:http://[2001:470:1f05:a89::1]/ (以 [ ] 含括 IPv6 位址)
IPv4 | IPv6 | |
表示方法 | IPv4使用10進位,用「.」隔開 | IPv6 使用 16 進位數字和「:」分隔 |
書寫方式 | 完全表示 | 數字前的0可用:簡化,唯只可簡化1次.(為了位址的正確判別) |
http協定的網址輸入 | http://IP | http://[IP] |
傳輸表頭(Header Length) | 20byte-60bytes不等 | 固定為40bytes |
IP數量 | IPv4有四個class,亦即4組,1組有2個16進位數字,共有2的32次方個ip位置 | IPv6使用8組數字,1組有4個16進位數字,共有2的128次方個IP位置(即128bits的長度,換算成十進位可以有39位數之多) |
在IP表示的"/"後面的數字 | 代表netmask | 代表prefix,即網路位址部份的表示(又分為global routing prefix與subnet ID),例如2001:288:4677:1234::1/64,前面的48個位元(2001:288:4677)就是global routing prefix,之後的16位元(1234)是subnet ID.而基本上全域的單一IP位址都是/64,可以說不會再有設錯netmask的問題了. (謎之聲:不過,其實還是會有/48之類的數字出現...Orz) |
本機位址(localhost address) | 127:0:0:1 | ::1 |
區網範圍(即私人定址IP) | 192.168.xxx.xxx/16、172.16.0.0/12、10.0.0.0/8 | 僅內部可用的範圍包括fe8x,fe9x,feax,febx,即fe8x::/10(目前只有fe80在用,例如fe80::224:73ff:fe02:f701)、類似10.0.0.0/8般私人定址意義的範圍是fecx,fedx,feex,fefx,即fecx::/10 |
代表全部的位址 | 0:0:0:0 | :: |
IPv4映射的IPv6地址 | ::ffff:a.b.c.d/96 | |
自動分配的位址 | 依DHCP動態給予 | 依機器MAC產生唯一位址 |
有別於 IPv4 使用十進位數字和「.」分隔來表示 IP 位址(比如 163.26.197.1),IPv6 使用 16 進位數字和「:」分隔來表示位址。
2001:0288:7400:0200:0000:0000:0000:0001 <--- 這是教網中心 DNS Server 的 IPv6 位址。 2001:0470:1f05:0a89:0000:0000:0000:0001 <--- 這是我家伺服主機 www.ols3.net 的 IPv6 位址。 2001:0200:0000:8002:0203:47ff:fea5:3085 <--- 這是 http://www.kame.net 的 IPv6 位址。 |
由這裡,我們可以觀察得到,IPv6 的位址使用「:」分隔,共有 8 組,每組中有四個 16 進位數字,每組佔 16 bits。每個 16 進位數字,有一特殊的英文稱呼,叫 nibble。一個 nibble 等於 4 bits。
如何用瀏覽器連接 IPv6 IP 位址的網站? 請在位址列鍵入:http://[2001:470:1f05:a89::1]/ (以 [ ] 含括 IPv6 位址)
IPv6 的寫法是可以簡化的,舉例如下:
1. 數字之前的 0 可以省略,全部是 0 可以只寫一個 0: 比如:2001:0288:7400:0200:0000:0000:0000:0001 可寫成 2001:288:7400:200:0:0:0:1 2. 連續多個 0 可用 :: 代表,但僅限一次: 比如:2001:288:7400:200:0:0:0:1 可寫成 2001:288:7400:200::1 3. 全部都是 0 可寫成 :: 。 4. loopback 在 IPv6 的對應寫法是 ::1 (0:0:0:0:0:0:0:1)。 5. 其它常見的位址有:ff02::2、 ff02::1。 |
參考資料
沒有留言:
張貼留言