EC2のパブリックDNS名がIPv6をサポートしました

記事タイトルとURLをコピーする

はじめに

EC2に付与されるパブリックDNS名がIPv6をサポートしました。従来は、パブリックDNS名にはIPv4アドレスであるAレコードしか設定されていませんでしたが、IPv6アドレスであるAAAAレコードが設定されるようになっています。

AWS announces IPv6 support for EC2 Public DNS names - AWS

早速、確認してみましょう。

要点

  • EC2のパブリックDNS名が、IPv6グローバルユニキャストアドレス(AAAAレコード)の解決が可能になりました
  • IPv6対応EC2インスタンスへのIPv6経由のアクセスが容易になります
  • すべてのAWSコマーシャルリージョンとAWS GovCloud(US)リージョンで利用可能です
  • 既存のVPC/EC2に対して設定可能です

IPv6をサポートしたパブリックDNS名とは?

例を見るのが早いでしょう。以下の様なパブリックDNS名が新たにEC2に設定され、AAAAレコードが利用可能です。

IPv6                          IPv4
↓---------------------------↓ ↓-----↓
3sdwh-87qb2-2tbqv-bc3y4-u30hg-1kbq70g.ap-northeast-1.ip.aws
                                      ↑------------↑ ↑----↑
                                      Region         Domain
↑---------------------------------------------------------↑ 
        Fully qualified domain name (FQDN)

これは次で説明する Public Hostname Tyep に public-dual-stack-dns-name を設定した場合のドメイン名です。

IPv6をサポートしたことにより、やはり長くなりますね。

パブリックDNS名のPublic Hostname Tyepについて

今回のアップデートにより、AAAAレコードが設定されているパブリックDNS名が新たに設定できるようになりました。これにより、パブリックDNS名はPublic Hostname Tyepにより、以下の通り3つに分類されるようになります。いずれか1つのタイプが選択可能です。

  • Dual-stack(public-dual-stack-dns-name)
    • AとAAAAレコードが設定されたパブリックDNS名が設定される
  • IPv6(public-ipv6-dns-name)
    • AAAAレコードのみが設定されたパブリックDNS名が設定される
  • IPv4(public-ipv4-dns-name)
    • Aレコードのみが設定されたパブリックDNS名
    • 従来はこのタイプのみだった
    • 現状、マネジメントコンソールからEC2を立ち上げるとこのタイプが設定されます

サンプルとしてどんなDNS名になるかを表にまとめました。グローバルIPv4アドレスとして203.0.113.0、グローバルIPv6アドレスとして3ffe:0db8:85a3:0000:0000:8a2e:0370:7334が割り当てられているEC2インスタンスには以下の通りパブリックDNS名が設定されます。

Public Hostname Tyep Public DNS Name(例) DNS record types
public-dual-stack-dns-name 3sdwh-87qb2-2tbqv-bc3y4-u30hg-1kbq70g.ap-northeast-1.ip.aws A と AAAA
public-ipv6-dns-name 3sdwh-87qb2-2tbqv-bc3y4-u30hg.ap-northeast-1.ip.aws AAAA のみ
public-ipv4-dns-name ec2-203-0-113-1.ap-northeast-1.compute.amazonaws.com A のみ

ドキュメントによると、IPv4/v6アドレスからbase36を用いて上記のような文字列に変換されているようです。Base36では0から9までの数字と、AからZまでのアルファベット26文字(大文字・小文字は区別しないのが一般的)を組み合わせた合計36種類の文字で数値を表現します。

マネジメントコンソールからの変更・確認

マネジメントコンソールからEC2インスタンスを立ち上げると、public-ipv4-dns-nameが設定された状態となります。これをpublic-dual-stack-dns-nameに変更してみましょう。

設定は、Network Interfaceから行う必要があります。対象となるENIを選択し、Modify public hostname typeを選択します。

メニューの選択画面

Dualstackを選択して、Modifyを押下します。

Public Hostname Typeの選択画面

変更が完了すると、Public DNS nameが先ほど例で示した通りの形式の値に変更されます。これでこのパブリックDNS名を利用してEC2インスタンスへアクセスできるようになりました。

public-dual-stack-dns-nameの場合の設定値例

初期の設定であるpublic-ipv4-dns-nameは以下のようになります。

public-ipv4-dns-nameの場合の設定値例

public-ipv6-dns-nameは以下のようになります。

public-ipv6-dns-nameの場合の設定値例

最後に

今までは、自分でホストするゾーンにIPv6アドレスを設定したAAAAレコードを作成する必要がありましたが、今回のアップデートで自動で生成されたパブリックDNS名が代わりに利用できるようになりました。今までIPv4アドレスが設定されたパブリックDNS名を利用していたユーザーにとっては、同様な方法でIPv6アドレスでの利用が可能となり嬉しいアップデートではないでしょうか。

石田順一(記事一覧)

カスタマーサクセス部 CS3課