跳至內容

NAT64

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

NAT64是一種通過網絡地址轉換(NAT)的形式促成IPv6IPv4主機間通訊的IPv6過渡機制。NAT64閘道器是IPv4與IPv6協定間的轉換器[1]它需要至少一個IPv4地址和一個包含32位元地址空間的IPv6網段。為該服務保留的「知名字首」是64:ff9b::/96

IPv6客戶端將希望與之通訊的IPv4地址嵌入在IPv6網段的主機部分,構成一個嵌入IPv4的IPv6地址(IPv6網段中的32位元地址空間),並將封包發往生成的地址。NAT64閘道器則建立IPv6與IPv4地址間的對映,這可以是手動組態的,也可以是自動確定的。[2]

工作原理

[編輯]
NAT64和DNS64

簡單的NAT64安裝可能只需要一個閘道器,它的兩個介面分別連接到IPv4網絡與IPv6網絡。IPv6網絡的流量經由閘道器路由,閘道器對兩個網絡之間傳輸的封包進行所有必要的轉換。但是,這種轉換並不是對稱的,[3]因為IPv6地址空間比IPv4地址空間大得多,因此就不可能進行一對一的地址對映。閘道器維護IPv6到IPv4的地址對映,而該對映可以在來自IPv6網絡的第一個封包到達NAT64閘道器時依據手動組態建立(有狀態對映),也可使用自動演算法建立(無狀態對映)。

如果NAT64轉換器是用在僅有IPv4的伺服器之前,使其能被遠端僅有IPv6的客戶端訪問,則比較適合使用無狀態轉換;而有狀態轉換則適合部署在客戶端或服務提供端,使得僅有IPv6的客戶端主機能聯絡到遠端僅有IPv4的節點。

通常來說,NAT64被設計為在IPv6主機發起通訊時使用。但也存在一些機制允許反向場景,例如靜態地址對映。[來源請求]

不是每種類型的資源都能用NAT64訪問。嵌入IPv4文字地址的協定(例如SIPSDPFTPWebSocketSkype、MSN等)和嵌入任何其他包括IPv4文字內容的協定都不被支援,但雙棧網頁代理允許僅有IPv6的客戶端訪問URL中包括IPv4文字的網頁。不過,使用NAT64的464XLAT(見 RFC 6877)允許在僅有IPv6的連接上使用此類協定。對於SIP和FTP來說,使用應用層閘道(ALG)或者支援 RFC 7225 定義的PREFIX64擴充的埠控制協定英語Port Control Protocol也可以解決這個問題。

實現

[編輯]

參考資料

[編輯]
  1. ^ RFC 6052, IPv6 Addressing of IPv4/IPv6 Translators, IETF Standards Track, C.Bao et al.
  2. ^ RFC 6146 Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers
  3. ^ Mavrin, Alex. NAT64 power and limitations. Blog article. [6 January 2014]. (原始內容存檔於2014-01-08). 
  4. ^ [Ecdysis-discuss] NAT64 in OpenBSD. Viagenie.ca. [2014-01-31]. (原始內容存檔於2013-05-27). 
  5. ^ Worldwide. Release Notes for the Cisco ASA Series, 9.0(x) [Cisco ASA 5500-X Series Next-Generation Firewalls] - Cisco Systems. Cisco.com. [2014-01-31]. (原始內容存檔於2014-01-12).