因為「AWS 將開始收取 IPv4 的 Public IP 費用」的關係,先試著把其中一台 EC2 instance 改成 IPv6-only,結果遇到不少問題...
首先是對外服務的部分,本來想用 CloudFront 擋在前面,但 CloudFront 到現在還是不支援 IPv6-only origin:「CloudFront support for IPv6 origins」,所以這邊的選擇變成是 Cloudflare。
第二個是 AWS 自家的 API 還是有些沒有 IPv6 address,像是取得 AWS 擁有的 IP pool 的 https://ip-ranges.amazonaws.com/ip-ranges.json (本來是要取得 CloudFront 的區段,用在 nginx 的設定裡)。
另外就是周邊的問題,很多服務都沒有 IPv6 address,像是 api.slack.com:
We're looking into fully supporting IPv6 at some point in the future, but it's not yet supported by all of our vendors. Stay tuned 📻
— Slack (@SlackHQ) April 10, 2018
各種 proxy 與 NAT 架構還是必要的措施...
Mentions