Developers.IOがIPv6サポートになりました
AWSチームのすずきです。
当ブログDevelopers.IOがIPv6をサポートしましたので、お知らせします。
名前解決
- dev.classmethod.jp
IPv6
$ dig dev.classmethod.jp AAAA | grep -A 3 -e ';; ANSWER' ;; ANSWER SECTION: dev.classmethod.jp. 60 IN AAAA 2406:da14:d37:ef11:3bbe:5596:af35:dae dev.classmethod.jp. 60 IN AAAA 2406:da14:d37:ef13:e9bc:8b82:68b5:3adb dev.classmethod.jp. 60 IN AAAA 2406:da14:d37:ef12:4c74:8fe:6136:3005
IPv4
$ dig dev.classmethod.jp A | grep -A 3 -e ';; ANSWER' ;; ANSWER SECTION: dev.classmethod.jp. 60 IN A 52.192.17.105 dev.classmethod.jp. 60 IN A 3.113.95.166 dev.classmethod.jp. 60 IN A 52.196.146.128
AWS設定
VPC
今回、以下のCloudFormationテンプレートを修正、3AZ対応などを追加しています。
サブネット
IPv6を有効に設定したVPCサブネットを用意しました。
Egress Only インターネットゲートウェイ
ELB 配下の EC2 は IPv4アドレスのみで利用する事も可能ですが、 今回はEC2にもIPv6アドレスを割り当てています。
外部から意図せぬEC2へのIPv6接続を避けるため、Egress Only インターネットゲートウェイを用意、EC2のデフォルトルート先としています。
- Egress Only インターネットゲートウェイ
- ルートテーブル
VPCフローログ
インターネットからIPv4、IPv6で接続を受け付けるサブネットは、VPCフローログ設定を有効とし、利用状況の調査や不測対応に備えました。
SecurityGroup
ELBで利用するセキュリティーグループ、IPv6の全てのソースIP(::/0)に対し、HTTP(TCP:80)、HTTPS(TCP:443)を許可するレコードを追加しました。
ELB
IPv6設定済のサブネットに ELB (ALB) を設置。 IP アドレスタイプ は「dualstack」 と設定しました。
CloudFront
画像配信に利用するCloudFront IPv6対応としました。
Route53
IPv6用の「AAAA」レコード、ELB、CloudFrontのエイリアスを追加しました。
確認
「AAAA」レコードの設定後、2割程度のリクエストがIPv6となった事を確認できました。
- AWS/ApplicationELB: IPv6RequestCount, RequestCount
まとめ
日本国内のIPv6普及率は50%に到達、IPv4アドレス枯渇を受けて今後も普及が進むと予想されます。
ELB(ALB,CLB)、CloudFront のIPv6対応は追加費用なく利用可能です。
IPv6を優先するOS環境での名前解決の高速化や、混雑するIPv4網のボトルネック回避なども期待できますので、ぜひお試しください。