0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS Managed Microsoft ADのDNS名前解決を理解する 〜DHCPオプションセットからRoute 53 VPC Resolverまで〜

0
Last updated at Posted at 2026-08-11

はじめに

AWSでManaged Microsoft ADを利用している環境では、DNSの名前解決が少し複雑になります。

特に、以下のサービスや機能が組み合わさると、DNSの経路が分かりづらくなります。

  • AWS Managed Microsoft AD
  • DHCPオプションセット
  • Route 53 VPC Resolver
  • Route 53 Private Hosted Zone
  • Conditional Forwarder
  • Route 53 Resolver Rule

この記事では、これらの関係を整理しながら、

EC2やECSなどからDNS問い合わせをすると、どのような経路で名前解決されるのか?

を説明します。

また、DNS障害が発生した場合に、どこから確認すればよいのかについても整理します。


この記事の前提

この記事では、以下のようなAWS環境を想定します。

項目 内容
DNS AWS Managed Microsoft AD
VPC CIDR 10.123.0.0/16
AD DNS 10.123.30.1 / 10.123.40.1
DNS Resolver Route 53 VPC Resolver
クライアント EC2 / ECSなど
Private DNS Route 53 Private Hosted Zone

※IPアドレスは説明用のサンプルです。


1. まず全体像を理解する

まず、DNS問い合わせの全体像を確認します。

今回想定する構成では、概念的には以下のようになります。

                     VPC
                      |
              DHCPオプションセット
                      |
                      | DNSサーバー情報
                      v
               +-------------+
               |  EC2 / ECS  |
               +------+------+
                      |
                      | DNS Query
                      v
          +-----------------------+
          | Managed Microsoft AD  |
          |       DNS / DC        |
          +-----------+-----------+
                      |
                      | DNS転送
                      v
          +-----------------------+
          | Route 53 VPC Resolver |
          +-----------+-----------+
                      |
                 +----+----+
                 |         |
                 v         v
          Private Hosted  Public
              Zone         DNS

ただし、すべてのDNS問い合わせが必ずこの経路を通るわけではありません。

DNSサーバーの設定やDNS転送の設定によって、実際の経路は変わります。

そのため、まずは「クライアントがどのDNSサーバーを利用するのか?」から見ていきます。


1-1. DHCPオプションセットとは

AWS VPCには、DHCPオプションセットという仕組みがあります。

DHCPオプションセットでは、VPC内のリソースに対して、以下のようなネットワーク情報を提供できます。

  • DNSサーバー
  • ドメイン名
  • NTPサーバー
  • NetBIOS関連の設定

今回特に重要なのが、

domain-name-servers

です。

ここで、クライアントが利用するDNSサーバーを指定できます。

つまり、DHCPオプションセットは、

「DNS問い合わせを処理する仕組み」ではなく、「クライアントが利用するDNSサーバーを指定する仕組み」

と考えると分かりやすいです。


1-2. デフォルトのDNS設定

特にカスタムDHCPオプションセットを設定していないVPCでは、デフォルトのDHCPオプションセットが利用されます。

DNSサーバーには、

AmazonProvidedDNS

が指定されます。

AmazonProvidedDNSは、VPC内で提供されるDNSリゾルバーです。

IPv4では、以下のアドレスから利用できます。

169.254.169.253

また、VPC CIDRのネットワークアドレスに +2 したアドレスも利用できます。

例えば、

VPC CIDR
10.123.0.0/16

の場合、

10.123.0.2

が該当します。

このDNSリゾルバーが、現在AWSで「Route 53 VPC Resolver」と呼ばれているものです。


1-3. Managed Microsoft ADを利用する場合

AWS Managed Microsoft ADでは、AWSが管理するドメインコントローラーが用意されます。

ドメインコントローラーにはDNS機能も提供されています。

例えば説明用に、

DC1
10.123.30.1

DC2
10.123.40.1

という構成だったとします。

※IPアドレスは説明用です。

Managed Microsoft ADでは、複数のドメインコントローラーが異なるAZに配置される構成になっています。

そのため、クライアントからこれらのドメインコントローラーをDNSサーバーとして利用できます。


1-4. DHCPオプションセットでAD DNSを指定する

ここでDHCPオプションセットを使用します。

例えば、

domain-name-servers:
10.123.30.1
10.123.40.1

というDHCPオプションセットを作成し、VPCに関連付けます。

すると、VPC内のリソースがDHCPによってネットワーク設定を取得する際に、DNSサーバーの情報も取得します。

イメージとしては、

VPC
 |
 | DHCP
 v
DHCPオプションセット
 |
 | DNS Server
 v
10.123.30.1
10.123.40.1

です。

このため、クライアント側では、

DNSサーバー
    ↓
Managed Microsoft ADのDNS

という構成になります。


1-5. 実際のDNS問い合わせ

例えばEC2から、

nslookup example.com

を実行したとします。

OS側のDNS設定が、

nameserver 10.123.30.1

となっていた場合、

EC2
 |
 | DNS Query
 v
10.123.30.1
 |
 v
Managed Microsoft AD DNS

という流れになります。

ここで重要なのは、

最初からRoute 53 VPC Resolverに問い合わせているわけではない

ということです。

今回の構成では、まずManaged Microsoft ADのDNSに問い合わせています。


1-6. Managed Microsoft ADのDNSは何をするのか

Managed Microsoft ADのDNSは、Active Directoryに関連する名前解決を行います。

例えば、

dc01.example.local

のようなADドメインに関連する名前を解決します。

また、DNSサーバーとして、必要に応じて他のDNSサーバーへ問い合わせを転送することもできます。

ここで登場するのが Conditional Forwarder です。


1-7. Conditional Forwarderとは

Conditional Forwarderは、

特定のドメインに対するDNS問い合わせを、指定したDNSサーバーへ転送する

ための仕組みです。

例えば、

internal.example.com

への問い合わせを、

10.123.0.2

へ転送するよう設定できます。

すると、

EC2
 |
 | DNS Query
 v
Managed Microsoft AD DNS
 |
 | Conditional Forwarder
 v
10.123.0.2
 |
 v
Route 53 VPC Resolver

という経路を構成できます。

ただし、重要なのは、

Managed Microsoft ADのDNSが、すべてのDNS問い合わせを自動的にRoute 53 VPC Resolverへ転送するわけではない

ということです。

どこへ転送するかは、DNSの設定によって決まります。


1-8. Route 53 VPC Resolverとは

Route 53 VPC Resolverは、VPC内で利用できるDNSリゾルバーです。

例えば、

10.123.0.2

にDNS問い合わせを送ると、VPC Resolverが問い合わせを処理します。

Route 53 VPC Resolverは、例えば以下の名前解決に関係します。

  • VPC内のDNS名
  • Route 53 Private Hosted Zone
  • パブリックDNS名

1-9. Route 53 Private Hosted Zone

例えばRoute 53に、

internal.example.com

というPrivate Hosted Zoneがあるとします。

その中に、

api.internal.example.com
        |
        v
10.123.50.10

というレコードが登録されているとします。

VPC Resolverへ問い合わせることで、

api.internal.example.com

を、

10.123.50.10

へ名前解決できます。

イメージとしては、

DNS Query
    |
    v
Route 53 VPC Resolver
    |
    v
Private Hosted Zone
    |
    v
10.123.50.10

です。


1-10. DNS問い合わせの全体像

ここまでを組み合わせると、今回の構成では次のように考えられます。

                         VPC
                          |
                          |
                DHCPオプションセット
                          |
                          | DNS Server
                          v
                  +---------------+
                  |    EC2 / ECS  |
                  +-------+-------+
                          |
                          | DNS Query
                          v
                +-------------------+
                | Managed Microsoft |
                | AD DNS / DC       |
                +---------+---------+
                          |
                          | Conditional Forwarder
                          v
                +-------------------+
                | Route 53 VPC      |
                | Resolver          |
                +---------+---------+
                          |
                     +----+----+
                     |         |
                     v         v
              Private Hosted  Public
                  Zone         DNS

ここで重要なのは、

DHCPオプションセット
        ↓
「クライアントが最初に利用するDNSサーバーを決める」

DNS転送
        ↓
「DNSサーバーが次にどこへ問い合わせるかを決める」

という違いです。


1-11. Resolver Ruleとは

AWSには、もう一つDNS転送の仕組みがあります。

それが Route 53 Resolver Rule です。

Resolver Ruleでは、Route 53 VPC Resolverが受け取ったDNS問い合わせを、指定したDNSサーバーへ転送できます。

例えば、

corp.example.com

への問い合わせを、

10.0.1.10
10.0.2.10

へ転送する、といった構成です。

概念的には、

EC2
 |
 v
Route 53 VPC Resolver
 |
 | Resolver Rule
 v
指定DNSサーバー

となります。


1-12. Conditional ForwarderとResolver Ruleの違い

Conditional ForwarderとResolver Ruleは、どちらもDNS問い合わせを転送する仕組みです。

ただし、設定する場所と動作する場所が異なります。

項目 Conditional Forwarder Resolver Rule
設定場所 DNSサーバー側 Route 53 VPC Resolver
問い合わせを受ける側 DNSサーバー VPC Resolver
主な用途 AD DNSなどから別DNSへ転送 VPC Resolverから指定DNSへ転送

つまり、

Managed Microsoft AD DNS
        |
        | Conditional Forwarder
        v
指定DNS

と、

VPC内のリソース
        |
        v
Route 53 VPC Resolver
        |
        | Resolver Rule
        v
指定DNS

は別の仕組みです。


2. DNS障害が発生した場合

ここからは、実際の障害対応について考えてみます。

例えば、

「突然、特定のドメインが名前解決できなくなった」

という障害が発生したとします。

この場合、いきなりRoute 53を確認するのではなく、問い合わせ元から順番に確認します。


2-1. まずクライアントのDNS設定を確認する

Linuxであれば、

cat /etc/resolv.conf

などでDNS設定を確認できます。

例えば、

nameserver 10.123.30.1

となっていた場合、

EC2
 |
 v
10.123.30.1

へDNS問い合わせを送っています。

このIPアドレスがManaged Microsoft ADのドメインコントローラーであれば、

EC2
 |
 v
Managed Microsoft AD DNS

という経路が最初に存在することになります。


2-2. DHCPオプションセットを確認する

次に、VPCに関連付けられているDHCPオプションセットを確認します。

確認するポイントは、

domain-name
domain-name-servers

です。

例えば、

domain-name-servers:
10.123.30.1
10.123.40.1

となっているかを確認します。

ここが想定と異なっている場合、クライアントが意図しないDNSサーバーを利用している可能性があります。


2-3. Managed Microsoft ADを確認する

次にManaged Microsoft ADを確認します。

確認するポイントは、

  • ドメインコントローラーの状態
  • DNS設定
  • Conditional Forwarder
  • DNS転送先

などです。

例えば、

EC2
 |
 v
DC1
 |
 X
名前解決失敗

となっていても、

EC2
 |
 v
DC2
 |
 v
名前解決成功

なら、DC単位の問題を疑うことができます。


2-4. Route 53 VPC Resolverを確認する

Managed Microsoft ADからRoute 53 VPC ResolverへDNS問い合わせを転送する構成であれば、次にResolver側を確認します。

例えば、

Managed Microsoft AD
        |
        | DNS Query
        v
Route 53 VPC Resolver

の通信が正常に行われているかを確認します。

構成によっては、

  • Resolverルール
  • Resolverエンドポイント
  • セキュリティグループ
  • ネットワークACL
  • ルートテーブル
  • Network Firewall

なども確認対象になります。


2-5. 「Route 53は正常なのにDNSが失敗する」場合

DNS障害でありがちなのが、

「Route 53を確認したけど正常だった」

というケースです。

しかし、

Route 53が正常 = DNS経路全体が正常

とは限りません。

例えば、

EC2
 |
 X
Managed Microsoft AD
 |
 v
Route 53 VPC Resolver

のように、Route 53へ到達する前に問題が発生している可能性があります。

逆に、

EC2
 |
 v
Managed Microsoft AD
 |
 X
Route 53 VPC Resolver

であれば、AD DNSから先の通信に問題がある可能性があります。

だからこそ、

DNS問い合わせがどこから始まり、どこを経由して、どこで止まったのか

を見ることが重要です。


2-6. DNS障害の切り分け手順

DNS障害が発生した場合は、以下のような順番で確認すると整理しやすくなります。

① 名前解決できない
        |
        v
② クライアントのDNS設定を確認
        |
        v
③ DHCPオプションセットを確認
        |
        v
④ Managed Microsoft ADの状態を確認
        |
        v
⑤ AD DNSの転送設定を確認
        |
        v
⑥ Route 53 VPC Resolverを確認
        |
        v
⑦ Private Hosted Zone / Public DNSを確認
        |
        v
⑧ ネットワーク経路を確認

特に最初に、

「どのDNSサーバーに問い合わせているのか?」

を確認することが重要です。


3. まとめ

AWS Managed Microsoft ADを利用した環境でDNSを理解するには、以下の関係を押さえておくことが重要です。

DHCPオプションセット
        |
        v
クライアントが利用するDNSサーバー
        |
        v
Managed Microsoft AD DNS
        |
        v
DNS転送
        |
        v
Route 53 VPC Resolver
        |
        v
Private Hosted Zone / Public DNS

ただし、これはあくまで一例です。

環境によっては、

EC2
 |
 v
Route 53 VPC Resolver
 |
 | Resolver Rule
 v
オンプレミスDNS

のような構成もあります。

重要なのは、AWSのDNSサービス名を覚えることではなく、

「このDNS問い合わせは、今どのDNSサーバーが受けていて、次にどこへ転送しているのか?」

という視点で考えることです。

DNS障害が発生した場合も、

クライアント
    |
    v
DNSサーバー
    |
    v
転送先
    |
    v
名前解決先

と経路を分解していけば、切り分けしやすくなります。


参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?