Nat
僅限 IPv4 的應用程序如何在僅限 IPv6 的主機上工作?
有沒有辦法讓不支持 IPv6 的應用程序繼續在只有 IPv6 連接的主機上工作?
主機的 IPv4 實現可以知道該問題,只需將 IPv4 地址封裝在 IPv6 標頭中(如 0::ffff:
$$ ipv4 $$?),但是這些數據包在哪裡轉換為真正的 IPv4 數據包? 目前的作業系統是否已經為純 IPv4 應用程序提供了這種功能?提供商的 NAT64 或其他網關是否能夠提供所需的功能?
如果提供商未使用 NAT64 的標準前綴 (64:FF9B::/96),如何確定實際前綴?作業系統和網路堆棧會處理所有這些嗎?
當應用程序已經支持 IPv6,但仍想與 IPv4 主機通信時,這將如何工作?前綴在哪裡確定,在網路堆棧中,還是應用程序必須處理它?
讓我們使用術語“依賴 IPv4 的應用程序”來指代使用 IPv4 文字(例如,10.10.10.1)或以其他方式與 IPv4 耦合的應用程序,這些方式會破壞僅 IPv6 主機上的功能。依賴 IPv4 的應用程序將無法在僅 IPv6 的主機上執行。
許多不使用 IPv4 文字並依賴 DNS 名稱的應用程序將在僅 IPv6 的主機上正常工作。
NAT64/DNS64 是純 IPv6 主機訪問 Internet 上 IPv4 主機的機制。需要這種轉換方法,因為大多數 Internet 內容只能通過 IPv4 傳輸訪問。
我推薦閱讀來自 IPv6-Only Network 的經驗。您會發現大量關於哪些應用程序在純 IPv6 主機上中斷的資料。