跳至內容

6to4

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

6to4是一種IPv6轉換傳輸機制,是將IPv6的數據包直接封裝在IPv4的數據包中,並通過內嵌於IPv6地址的IPv4地址信息實現無需顯式配置隧道就可以直接在IPv4網絡上傳輸。同時一種特殊配置的中繼路由允許其能與原生IPv6網絡進行通信。

在從純IPv4網絡完全過渡到純IPv6網絡完全部署前,6to4技術尤其重要,因為這請求主機和目標主機之間都不需要IPv6網絡支持,但是這是一種過渡性的轉換傳輸機制,並不意味永久使用。

6to4可以使用在一台單獨主機上,或一個本地網絡上。如果是單獨主機的話,則該主機需要一個非專用的公開IPv4地址,並且實現對IPv6數據包裝解封,如果這台主機是服務於本地網並能轉發本地網絡其他主機的通信,則其作為該IPv6本地網絡的路由器

6to4不利於僅支持IPv4的主機和僅支持IPv6的主機之間的互操作。 6to4只是一個透明機制,用作IPv6節點之間的傳輸層。

由於大量主機配置錯誤和性能較差,2011年8月發布了應如何部署6to4的建議。[1]由於6to4的任播前綴操作問題無法解決,該部分標準在2015年已棄用。[2]

運作方法

[編輯]

6to4解決了以下三個功能:

  • 如何一個公共IPv4地址去為一台獨立主機或本地網絡申請一個IPv6網絡前綴。
  • 使用6in4的數據包封裝機制封裝IPv6數據包。
  • 如何與6to4網絡和純IPv6網絡的網絡流量路由。

地址塊申請

[編輯]

6to4定義了一個網絡前綴2002::/16用於表達這是一個6to4網絡整體,任何一個公共IPv4地址將地址的十六進制值加在6to4網絡前綴之後,從而產生一個前綴數為48的相應IPv4的6to4子網的網絡前綴,而且其仍然可以繼續分割至最小前綴數為64的子網段用於區分出這個6to4子網的子網。另外,RFC 1918所定義的專用網絡地址不能用於6to4子網的申請,因為通信回應時無法將按照IPv4專用網絡地址送回發起處。

例如,IPv4地址192.0.2.4能夠申請到2002:c000:0204::/48網絡前綴(c000:0204192.0.2.4的十六進制值),而48到64之間還有16位的地址空間可用於再劃分更小的子網。

封裝與傳輸

[編輯]

6to4的封裝是使用6in4的封裝,將IPv6的數據包直接跟接着IPv4的數據包頭,並且IPv4數據包的協議號為41。IPv4數據包的源地址是派生自封裝的IPv6數據包源地址中的內嵌IPv4地址,而目的地址則根據封裝的IPv6數據包目的地址而不同。這些6to4的IPv4數據包如普通的IPv4一樣在IPv4網絡中路由轉發。

與6to4網絡和純IPv6之間的路由

[編輯]
6to4網絡與其他IPv6網絡的傳輸方式

為了使6to4網絡的主機或網絡能夠與其他「原生」IPv6網絡通信,這需要到「中繼路由器(relay routers)」。這些路由器連接着IPv4和IPv6網絡,會在IPv6網絡對2002::/16進行路由宣告以使其他IPv6網絡的流量能夠通過這些路由器進行IPv4的封裝和轉發到相應目標的6to4網絡。而6to4網絡的IPv4出口側需要一個默認網關用於將6to4中已封裝IPv6數據包的IPv4流量傳入到IPv6網絡,為了避免用戶手工配置的麻煩,RFC 3068定義了一個任播IPv4地址192.88.99.1[3],其可以配置給多個中繼路由器,用於接受6to4已封裝IPv6數據包的IPv4流量並將其解封後轉發至IPv6之中,但由於無法解決的操作問題,此用法已被棄用。[1][2]「6to4中繼路由器」不一定就是「6to4邊界路由器」。「邊界路由器」是支持一個6to4偽接口的IPv6路由器,用於宣告其IPv4對應6to4前綴。「中繼路由器」則負責完整6to4網絡與純IPv6網絡之間數據包的解封裝。「中繼路由器」應該對IPv6網絡宣告整個2002::/16的路由而不區分基於IPv4的子網區分,避免IPv4的路由污染到IPv6的路由表。

對於6to4子網絡之間的路由,則直接根據封裝的IPv6包目的地址為6to4地址中內嵌IPv4地址,按照普通的IPv4流量在IPv4網絡中直接發送。

反向DNS委派

[編輯]

如果使用6to4的站點有着固定的全域IPv4地址,則其6to4IPv6網絡前綴也是固定的。可以通過6to4.nro.net網站向號碼資源組織申請在2.0.0.2.ip6.arpaDNS域英語DNS zone添加一個前綴48為單位的反向DNS委派域,可以自動化申請。

安全要點

[編輯]

根據RFC 3964,6to4的邊界路由器和中繼路由器被要求:

  • 任何被封裝的IPv6數據包的源地址或目的地址都應該6to4的網絡前綴2002::/16
  • 如果IPv6源地址是6to4 IPv6地址,則其對應的6to4路由器IPv4地址與IPv4封裝頭中的IPv4源地址匹配。
  • 同樣,如果IPv6目標地址是6to4 IPv6地址,則其對應的6to4路由器IPv4地址與IPv4封裝頭中的IPv4目標地址匹配。
  • 任何6to4路由器嵌入的IPv4地址都是全球單播的。

參考文獻

[編輯]
  1. ^ 1.0 1.1 RFC 6343 - Advisory Guidelines for 6to4 Deployment
  2. ^ 2.0 2.1 RFC 7526 - Deprecating the Anycast Prefix for 6to4 Relay Routers
  3. ^ RFC 3068 - An Anycast Prefix for 6to4 Relay Routers

外部連結

[編輯]