VPC の DNS 属性を変更する - Amazon Virtual Private Cloud

VPC の DNS 属性を変更する

ドメインネームシステム (DNS) は、インターネットで使用する名前を対応する IP アドレスに解決するための標準です。DNS ホスト名はコンピュータを一意に識別する絶対名で、ホスト名とドメイン名で構成されます。DNS サーバーは DNS ホスト名を対応する IP アドレスに解決します。

パブリック IPv4 アドレスによってインターネットでの通信が可能になり、プライベート IPv4 アドレスによってインスタンスのネットワーク内部での通信が可能になります。詳細については、「サブネットの IP アドレス動作を変更する」を参照してください。

Amazon は、お客様の VPC 用の DNS サーバー (Amazon Route 53 Resolver) を提供しています。代わりに独自の DNS サーバーを使用するには、VPC 用の DHCP オプションの新しいセットを作成します。詳細については、「DHCP オプションセットを使用したカスタムドメイン名解決を追加する」を参照してください。

DNS ホスト名

インスタンスを起動すると、常にプライベート IPv4 アドレスと、プライベート IPv4 アドレスに対応するプライベート DNS ホスト名を受け取ります。インスタンスにパブリック IPv4 アドレスが割り当てられている場合、VPC の DNS 属性は、パブリック IPv4 アドレスに対応するパブリック DNS ホスト名を受け取るかどうかを決定します。詳細については、「VPC 内の DNS 属性」を参照してください。

Amazon が提供する DNS サーバーを有効にすると、DNS ホスト名が次のように割り当てられ、解決されます。

プライベート IP DNS 名 (IPv4 専用)

インスタンスのプライベート IPv4 アドレスに解決される IPBN ベースの IPv4 DNS ホスト名。プライベート IP DNS ホスト名 (IPv4 専用) は、同じネットワーク内のインスタンス間の通信に使用できます。ただし、インスタンスが含まれるネットワーク外の DNS ホスト名を解決することはできません。IPBN の詳細については、EC2 インスタンスのホスト名タイプを参照してください。

プライベートリソース DNS 名

このインスタンスで選択された A および AAAA DNS レコードに解決できる RBN ベースの DNS 名。この DNS ホスト名は、デュアルスタックおよび IPv6 専用サブネットのインスタンスの詳細で表示されます。RBN の詳細については、EC2 インスタンスホスト名タイプを参照してください。

パブリック IPv4 DNS

パブリック (外部) IPv4 DNS ホスト名には、us-east-1 リージョンは ec2-public-ipv4-address.compute-1.amazonaws.com 書式、その他のリージョンは ec2-public-ipv4-address.region.compute.amazonaws.com 書式が使用されます。Amazon DNS サーバーがパブリック DNS ホスト名を解決すると、インスタンスのパブリック IPv4 アドレス (インスタンスのネットワークの外部の場合) およびインスタンスのプライベート IPv4 アドレス (インスタンスのネットワーク内からの場合) となります。詳細については、Linux インスタンス用の Amazon EC2 ユーザーガイドの「パブリック IPv4 アドレスと外部 DNS ホスト名」を参照してください。

VPC 内の DNS 属性

次の VPC 属性は、VPC に提供される DNS サポートを決定します。両方の属性が有効になっている場合、VPC 内に起動されるインスタンスはパブリック DNS ホスト名を受け取ります。そのためには、インスタンスにパブリック IPv4 アドレスまたは Elastic IP アドレスが割り当てられている必要があります。両方とも有効になっていなかった VPC で両方の属性を有効にすると、その VPC ですでに起動されているインスタンスはパブリック DNS ホスト名を受け取ります。そのためには、インスタンスにパブリック IPv4 アドレスまたは Elastic IP アドレスが割り当てられている必要があります。

これらの属性が VPC で有効かどうかを確認するには、「VPC の DNS 属性の表示と更新」を参照してください。

属性 説明
enableDnsHostnames

VPC がパブリック IP アドレスを持つインスタンスへのパブリック DNS ホスト名の割り当てをサポートするかどうかを決定します。

両方の DNS 属性が true の場合、VPC 内のインスタンスはパブリック DNS ホスト名を受け取ります。

この属性のデフォルトは false です。ただし、VPC がデフォルト VPC であるか、VPC コンソールウィザードを使用して VPC が作成された場合を除きます。

enableDnsSupport

VPC が Amazon 提供の DNS サーバーを介した DNS 解決策をサポートするかどうかを決定します。

この属性が true の場合、Amazon が提供した DNS サーバーへのクエリは成功します。詳細については、「Amazon DNS サーバー」を参照してください。

この属性のデフォルトは、VPC の作成方法に関係なく true です。

ルールと考慮事項

以下のルールが適用されます。

  • 属性の両方が true に設定されている場合、次のようになります。

    • パブリック IP アドレスを持つインスタンスは、対応するパブリック DNS ホスト名を受け取ります。

    • Amazon Route 53 Resolver サーバーは、Amazon が提供するプライベート DNS ホスト名を解決できます。

  • 少なくとも 1 つの属性が false に設定されている場合、次のようになります。

    • パブリック IP アドレスを持つインスタンスは、対応するパブリック DNS ホスト名を受け取りません。

    • Amazon Route 53 Resolver は、Amazon が提供するプライベート DNS ホスト名を解決できません。

    • DHCP オプションセットにカスタムドメイン名がある場合、インスタンスはカスタムプライベート DNS ホスト名を受け取ります。Amazon Route 53 Resolver サーバーを使用しない場合、必要に応じてカスタムドメインネームサーバーがホスト名を解決する必要があります。

  • Amazon Route 53 のプライベートホストゾーンで定義されたカスタム DNS ドメイン名を使用する場合や、インターフェイス VPC エンドポイント (AWS PrivateLink) でプライベート DNS を使用する場合は、enableDnsHostnames 属性と enableDnsSupport 属性の両方を true に設定する必要があります。

  • Amazon Route 53 Resolver は、プライベート DNS ホスト名を、すべてのアドレス空間のプライベート IPv4 アドレスに解決できます。これには、VPC の IPv4 アドレス範囲が、RFC 1918 に指定されているプライベート IPv4 アドレス範囲外になる場合も含まれます。ただし、2016 年 10 月より前に作成した VPC の場合、その IPv4 アドレス範囲がこれらの範囲外であると、Amazon Route 53 Resolver はプライベート DNS ホスト名を解決しません。このサポートを有効にするには、AWS Support までお問い合わせください。

DNS クォータ

各 EC2 インスタンスは Route 53 Resolver (具体的には 10.0.0.2 などの .2 アドレス、および 169.254.169.253) へパケット数をネットワークインターフェイスあたり 1024 パケット/秒を送信できます。このクォータを増やすことはできません。Route 53 Resolver でサポートされる 1 秒あたりの DNS クエリの数は、クエリのタイプ、レスポンスのサイズ、および使用中のプロトコルにより異なります。スケーラブルな DNS アーキテクチャの詳細および推奨については、「アクティブディレクトリを使用した AWS ハイブリッド DNS 技術ガイド」を参照してください。

クォータに達すると、Route 53 Resolver はトラフィックを拒否します。クォータに達する原因には、DNS スロットリングの問題や、Route 53 Resolver ネットワークインターフェイスを使用するインスタンスメタデータクエリがあります。VPC DNS スロットリングの問題を解決する方法については、「VPC DNS スロットリングが、Amazon が提供している DNS サーバーへのDNS クエリの失敗の原因となっているかどうかを判断する方法を教えてください。」を参照してください。インスタンスメタデータの詳細については、「Amazon EC2 Linux インスタンス用ユーザーガイド」の「Retrieve instance metadata (インスタンスメタデータの取得)」を参照してください。

EC2 インスタンスの DNS ホスト名を表示する

Amazon EC2 コンソールまたはコマンドラインを使用して、実行中のインスタンスまたはネットワークインターフェイスの DNS ホスト名を確認できます。

[Public DNS (IPv4) (パブリック DNS (IPv4))] フィールドと [Private DNS (プライベート DNS)] フィールドは、インスタンスに関連付けられている VPC で DNS オプションが有効になっている場合に使用できます。詳細については、「VPC 内の DNS 属性」を参照してください。

インスタンス

コンソールを使用してインスタンスの DNS ホスト名を確認するには

  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで、[インスタンス] を選択します。

  3. リストから インスタンスを選択します。

  4. 詳細ペインで、[Public DNS (IPv4)] および [Private DNS] フィールドに、該当する場合は DNS ホスト名が表示されます。

コマンドラインを使用してインスタンスの DNS ホスト名を確認するには

次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon VPC にアクセスする を参照してください。

ネットワークインターフェイス

コンソールを使用してネットワークインターフェイスのプライベート DNS ホスト名を確認するには

  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで、[Network Interfaces] を選択します。

  3. リストからネットワークインターフェイスを選択します。

  4. 詳細ペインの [プライベート DNS (IPv4)] フィールドにプライベート DNS ホスト名が表示されます。

コマンドラインを使用してネットワークインターフェイスの DNS ホスト名を確認するには

次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、「Amazon VPC にアクセスする」を参照してください。

VPC の DNS 属性の表示と更新

Amazon VPC コンソールを使用して、VPC の DNS サポート属性を表示および更新することができます。

コンソールを使用して VPC の DNS サポートの詳細を確認し更新するには

  1. Amazon VPC コンソール (https://console.aws.amazon.com/vpc/) を開きます。

  2. 画面左枠のナビゲーションペインで、[Your VPCs] を選択します。

  3. VPC のチェックボックスをオンにします。

  4. 情報の詳細を確認します。この例では、両方の DNS hostnames (DNS ホスト名) およびDNS resolution (DNS 解決方法) が有効です。

    
              [DNS 設定] タブ
  5. これらの設定を更新するには、[Actions] (アクション) を選択し、続いて [Edit DNS hostnames] (DNS ホスト名の編集) または [Edit DNS resolution] (DNS 解決)を選択します。プロンプトが表示されたら、[Enable] (有効化) を選択または未選択にして、[Save changes] (変更を保存) を選択します。 

コマンドラインを使用して VPC の DNS サポートについて説明するには

次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon VPC にアクセスする を参照してください。

コマンドラインを使用して VPC の DNS サポートを更新するには

次のいずれかのコマンドを使用できます。これらのコマンドラインインターフェイスの詳細については、Amazon VPC にアクセスする を参照してください。

プライベートホストゾーン

プライベート IPv4 アドレスや AWS で提供されたプライベート DNS ホスト名の代わりに example.com のようなカスタム DNS ドメイン名を使用して VPC のリソースにアクセスする場合は、Route 53 でプライベートホストゾーンを作成できます。プライベートホストゾーンは、インターネットにリソースを公開することなく、1 つ以上の VPC 内のドメインとそのサブドメインにトラフィックをルーティングする方法に関する情報を保持するコンテナです。次に、Route 53 リソースレコードセットを作成できます。これにより、ドメインとサブドメインへのクエリに Route 53 が対応する方法が決定されます。例えば、example.com のブラウザリクエストが VPC のウェブサーバーにルーティングされるようにする場合、プライベートホストゾーンで A レコードを作成し、そのウェブサーバーの IP アドレスを指定します。プライベートホストゾーンの作成の詳細については、Amazon Route 53 開発者ガイドの「プライベートホストゾーンの使用」を参照してください。

カスタム DNS ドメイン名を使用してリソースにアクセスするには、VPC 内のインスタンスに接続している必要があります。インスタンスで、ping コマンド (ping mywebserver.example.com など) を使用してカスタム DNS 名からプライベートホストゾーンのリソースにアクセス可能なことをテストできます (ping コマンドが機能するには、インスタンスのセキュリティグループのルールでインバウンド ICMP トラフィックが許可されている必要があります)。

ClassicLink DNS サポートに対して VPC が有効になっていれば、ClassicLink を使用して VPC にリンクされた EC2-Classic インスタンスからプライベートホストゾーンにアクセスできます。詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイドの「ClassicLink DNS サポートを有効にする」を参照してください。それ以外の場合、プライベートホストゾーンは VPC 外部の推移的関係をサポートしていません。例えば、VPN 接続の他方の側からカスタムプライベート DNS 名を使用してリソースにアクセスすることはできません。詳細については、Linux インスタンス用の Amazon EC2 ユーザーガイドの「ClassicLink の制限」を参照してください。

重要

Amazon Route 53 のプライベートホストゾーンに定義されているカスタム DNS ドメイン名を使用している場合は、enableDnsHostnames 属性と enableDnsSupport 属性を true に設定する必要があります。