
我正在從我的家庭網路託管一些東西,但我的 ISP 沒有為我提供 IPv4 位址。無論如何,沒有辦法移植到它。
我的伺服器使用 IPv6 運行,一切都運作良好,直到我必須與世界上 60% 以上尚未使用 IPv6 的人分享內容。
如何讓每個人都可以存取我的網站和伺服器?如何在只能使用 IPv6 的同時綜合擁有雙棧 DNS 解決方案?我使用 CloudFlare 作為我的 DNS,以防萬一。
PS 我知道 DNS64,但我不認為這就是我正在尋找的,對吧?我也對 DNS46 做了一點研究,但事實是我根本不理解它。
答案1
DNS 僅將名稱轉換為 IP 位址。它本身無法解決 v4 與 v6 的問題。
DNS64 與有狀態 NAT64 結合使用,以允許僅 v6 的用戶端存取僅 v4 的伺服器。 v6 的 /96 空間分配給 NAT64 閘道。這提供了足夠的 IPv6 位址來代表整個 IPv4 網際網路。然後,DNS64 在指派給 NAT64 的區塊中提供從 DNS 名稱到 IPv6 位址的對應。
嘗試相反的做法問題應該很明顯,V6 位址大,V4 位址小。因此,您可以將所有 v4 空間對應到 v6 空間的一個小角落,但反之則不行。
如果您的所有服務都是 http/https,那麼您可以使用反向代理或內容分發網絡,根據應用程式級元資料分發流量。對於在現代版本的 tls 上運行的除 http/https 之外的服務,您還可以使用「伺服器名稱指示」標頭來分配流量,儘管可能很難找到能夠執行此操作的運營商。如果您的伺服器運行其他協議,那麼可能需要專用的 v4 IP,這顯然會花費更多。