Ubuntu Linux Desktop IPv6 位址設定方式

使用 Linux 時,IPv6 位址怎麼設定?下面以 Ubuntu 11.04 為例,說明各種 IPv6 位址設定的不同含義。

在 Ubuntu 的”編輯網路連線”中,點選“IPv6設定”,有關 IPv6 位址的設定方法如下圖幾種:

本文只說明紅框中的前三樣,因為一般人一定不懂為什麼”自動“還要分三種?

一、”自動,僅使用 DHCP“:

如果先前已經有使用 DHCP 取得過 IP 位址,則在網路連線的時候,會先發出 CONFIRM 訊息,確認是否還可延用該位址。特別注意的是,如果網路上沒有任何 DHCPv6 Server 回應的話,將會繼續沿用原 IPv6 位址。如果所在網路已經更換 prefix,DHCPv6 Server 會發放新的位址。

如果之前沒有使用 DHCP 取得位址,則會沿用 DHCP 位址取得的方式(四步驟),向 DHCPv6 Server 取得 IPv6 位址。與 IPv4 DHCP 四步驟(DORA)不同的是,DHCPv6 還支援兩步驟(Rapid Commit)快速取得位址。

DHCPv6 發送的訊息中並不會包含 default gateway,該訊息必須由正常的 RA 取得,但因為這個選項“僅使用 DHCP”,所以完成 DHCPv6 的步驟之後,並不會有 default gateway。(在我測試的 Ubuntu 11.04 中,即使有收到 RA,但仍無法自動設定 default gateway)。

二、“自動,僅限位址”:

如果 Router 的 M-bit 為 1 (使用 DHCPv6),Ubuntu 除了使用 RA 所給的 prefix 組合一個位址以外,還會利用 DHCPv6 取得一個位址(共兩個位址)。但是因為“僅限位址”,所以只用位址而已,DNS 等資訊並不會使用

如果 Router 的 M-bit 為 0 (使用 stateless),則不會再向 DHCPv6 Server 要 IP 位址,因此只生成一個 Stateless IPv6 位址。至於有沒有 DNS 資訊,則視 Router 上的 O-bit,O-bit 為 0 時,不會有 DNS;若為 1,則會向 DHCPv6 Server 請求 DNS 資訊。

三、“自動”

如果 Router 的 M-bit 為 1 (使用 DHCPv6),Ubuntu 除了使用 RA 所給的 prefix 組合一個位址以外,還會利用 DHCPv6 取得一個位址(共兩個位址)與 DNS 等資訊。

如果 Router 的 M-bit 為 0 (使用 stateless),則不會再向 DHCPv6 Server 要 IP 位址,因此只生成一個 Stateless IPv6 位址。至於有沒有 DNS 資訊,則視 Router 上的 O-bit,O-bit 為 0 時,不會有 DNS;若為 1,則會向 DHCPv6 Server 請求 DNS 資訊。

M-bit O-bit DNS Default Gateway IPv6 Address
自動,僅使用DHCP 1/0 1/0 V X 1
自動,僅限位址 1 1/0 X V 2
0 1 V V 1
0 0 X V 1
自動 1 1/0 V V 2
0 1 V V 1
0 0 X V 1

Best Practice

那麼最佳方法是什麼呢?建議:如果您/用戶使用的是 Linux ,建議您/用戶選擇“自動”即可。

而 Router 的管理者則建議:在 Stateful DHCPv6 的環境,M-bit 請設為 1。Stateless 的環境,M-bit 請設為 0、O-bit 建議設為 1,請參考 Stateless DHCPv6 的設定範例

發佈留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料