Microsoft Azure でのパブリック DNS のトラブルシューティング

完了

パブリック プロバイダーでのドメイン ネーム システム レコードに関する問題のトラブルシューティング

パブリック DNS サーバーは、ユーザーがインターネット上の Web サイトやその他のアドレスを検索できるように、ドメイン名を IP アドレスに変換します。 VM にインターネット接続がある場合は、パブリック DNS サーバーから名前を解決する必要があります。 パブリック DNS サーバーからの名前解決に問題がある場合は、次を試してください。

  1. VM にインターネット接続があることを確認します。

  2. コマンド プロンプトから、アクセスしようとしている Web サイトの IP アドレスに ping を実行します。 ping が応答を受け取らない場合は、その Web サイトが利用できないという通知が表示されます。

  3. DNS サーバーがそのゾーンのプライマリ サーバーであるか、セカンダリ コピーされた DNS サーバーであるかを確認します。 プライマリ DNS サーバーに対して更新が行われるので、常に最新の変更が含まれており、最新の状態になります。 プライマリ DNS サーバーは、権限のある DNS とも呼ばれます。 セカンダリ DNS サーバーは、プライマリ DNS サーバーの読み取り専用コピーです。

  4. コマンド プロンプトから nslookup を実行します。

    nslookup name IP address of the DNS server;

    次に例を示します。

    nslookup app1 10.0.0.1

    応答がエラーまたはタイムアウトになる場合は、再帰の問題をチェックしてください。 DNS コンソールの [サーバーのプロパティ] の [フォワーダー] タブを調べて、元のクエリに使用されたサーバーがクエリを転送することを確認します。 [Enable forwarders](フォワーダーを有効にする) チェック ボックスがオンで、1 つ以上のサーバーが一覧にある場合、このサーバーはクエリを転送します。

    再帰の場合は、再帰クエリのパスで使用されているすべての DNS サーバーが応答できて、正しいデータを転送できる必要があります。 これができない場合は、以下の理由により再帰クエリに失敗する可能性があります。

    • 完了する前に、クエリがタイムアウトになる。

    • サーバーが応答できなかった。

    • サーバーが無効なデータを提供した。

    Nslookup は、名前が権限のあるサーバーよって解決されたのか、権限のないサーバーによって解決されたのかも通知します。

  5. 管理者特権でのコマンド プロンプト ウィンドウで dnscmd /clearcache コマンドを実行し、リゾルバー キャッシュをフラッシュします。

    • コマンド プロンプトを右クリックして、[管理者として実行] を選択します

    「dnscmd servername /clearcache」と入力します

    サーバー名は、IP アドレス、FQDN、またはホスト名です。 省略した場合はローカル サーバーが使われます。

    ipconfig -flushdns を使用して DNS キャッシュをクリアすることもできます。

    または、管理者特権の PowerShell ウィンドウで、次のコマンドレットを実行します。

    Clear-DnsServerCache

    キャッシュをクリアしたら、もう一度試します。

  6. DNS サーバーのアドレスを確認します。 必要に応じて、アドレスを修正します。

  7. dig コマンド (ドメイン情報グローパー) を使用すると、問題のトラブルシューティングに役立つ DNS 情報が得られます。 これは、Windows マシンへのインストールが必要な無料のユーティリティです。 dig 情報を取得するには、次のコマンドを実行します。

    dig domain name or IP

    DIG を実行すると、クエリが成功したかどうかの状態が表示されます。

    ANSWER セクションには、QUESTION セクションで送信された要求に対する応答が表示されます。

    SERVER には、パブリック DNS サーバーのアドレスが表示されます。

    既定では、ドメインの A レコード を検索し、名前を解決するときにドメインがポイントする IP アドレスを示します。

    宛先への完全なパスを確認するには、+trace タグとともに dig を使用します。

    dig contoso.com +trace

    デリゲートされたネーム サーバーを確認するには、ns オプションを使用します。

    dig contoso.com ns

  8. コンピューターにアクセスできない場合は、コンピューターのコマンド プロンプトから IPCONFIG/RELEASE コマンドと IPCONFIG /RENEW コマンドを使用して、キャッシュされた情報を更新してみてください。

    重要

    IPCONFIG /RELEASE を実行すると、コンピューターがインターネットから切断されます。 IPCONFIG /ALL を実行して、現在の情報を確認します。

  9. コンピューターの IP 構成を確認するには、コマンド プロンプトで ipconfig /all を実行します。 下にスクロールして、IP アドレス、サブネット マスク、既定のゲートウェイを確認します。 既定のゲートウェイはルーターまたはファイアウォールになります。

  10. tracert ツールは、ソースから宛先へのルートを表示します。 DNS の問題をトラブルシューティングするときに、パケットがネットワーク上で停止した場所を特定するのに役立ちます。 apt パッケージ マネージャーを使用して traceroute ツールをインストールします。

    Windows コンピューターで実行されている場合:

    tracert ドメイン名または IP

  11. コンピューターが ISP の DNS を使用していて、問題を解決できない場合は、ISP に問い合わせてください。

ドメイン構成に関する問題のトラブルシューティング

Microsoft 365 製品でドメイン名を使用するには、Microsoft 365 管理センターでカスタム ドメイン名を設定する必要があります。

  1. Microsoft 365 管理センターから [セットアップ] を選択します。

  2. [カスタム ドメインの設定を取得する] で、[表示] > [管理] > [ドメインの追加] を選択します。

  3. ドメイン名を入力し、[次へ] を選択します。

  4. ドメイン レジストラーが使用可能な場合は、ドメイン レジストラーにサインインし、[次へ] を選択します。

  5. 新しいドメインのサービスを選択します。

  6. [次へ] > [認可] > [次へ] を選択して、最後に [完了] を選択します。 以上でドメインが追加されます。

ドメインの状態を確認することで、ドメインに関する問題を確認できます。 [セットアップ] > [ドメイン] に移動して、[状態] 列の通知を表示します。 問題が発生した場合は、3 つのドット (その他のアクション) を選択し、[正常性の確認] を選択して、ドメインで発生している問題を表示します。

ドメインの検証が適切に機能しない一般的な理由は、いくつかあります。

  • 検証レコードの値が正しくない。 DNS ホストの TXT 検証レコードの値を確認します。 これには、レコードの「MS=」部分が含まれている必要があります。

  • レコードが保存されていない。 一部の DNS ホストでは、DNS レコードが格納されているゾーン ファイルを保存する必要があります。 これが保存されていない場合、Microsoft 365 では表示されません。

  • レコードがインターネット経由で更新されていない。 新しいレコードが表示されるまでには、数分から数時間かかることがあります。

委任に関する問題のトラブルシューティング

Azure DNS ゾーンを使用すると、ドメインの DNS レコードを管理することができます。 ドメインのクエリを Azure DNS に到達させるには、親ドメインが Azure DNS にデリゲートされていなければなりません。 DNS サーバーには次の 2 種類があります。

  • 権限のある DNS サーバーは、DNS ゾーンをホストします。 このサーバーは、これらのゾーン内のレコードに対する DNS クエリのみに応答します。

  • "再帰" DNS サーバーでは、DNS ゾーンはホストされません。 このサーバーは、権限のある DNS サーバーを呼び出して必要なデータを収集することで、すべての DNS クエリに応答します。

Azure DNS は、権限のある DNS サービスを提供します。

まず、ゾーン内にあるネーム サーバーを知る必要があります。 Azure DNS は、ゾーンが作成されるたびに、プールからネーム サーバーを割り当てます。

Azure portal で [すべてのリソース]を選択し、次に DNS ゾーンを選択します。 または、[名前でフィルター] ボックスにドメイン名を入力します。 [DNS ゾーン] ページでネーム サーバーを取得します。

たとえば、ゾーン contoso.net には以下のネーム サーバーが割り当てられている場合があります。

  • ns1-01.azure-dns.com

  • ns2-01.azure-dns.net

  • ns3-01.azure-dns.org

  • ns4-01.azure-dns.info

割り当てられたネーム サーバーのゾーンに、権限のある NS レコードが Azure DNS によって自動的に作成されます。

これでネーム サーバーが分かったので、親ドメインを更新することができます。 各レジストラーには、固有の DNS 管理ツールがあります。 登録業者の DNS 管理ページから、NS レコードを編集し、その NS レコードを Azure DNS のネーム サーバーに置き換えます。

この図は、Azure DNS ゾーンに contoso.net と partners.contoso.net を含む DNS クエリの例を示しています。

Diagram of a DNS query in the Azure DN zones.

各デリゲートには、NS レコードのコピーが 2 つあります。1 つは子ゾーンをポイントする親ゾーン内で、もう 1 つは子ゾーン自体にあります。 contoso.net ゾーンには、net 内の NS レコードに加えて、contoso.net の NS レコードも格納されています。 これらのレコードは、優先する NS レコードと呼ばれ、子ゾーンの頂点に配置されます。

ドメイン デリゲートのトラブルシューティングを行うには、次の手順に従ってください。

  1. Azure DNS が提供するネーム サーバーでドメインが更新されていることを確認します。 対象のドメインの名前に関係なく、4 つのネーム サーバーすべてを使用します。 ドメインの委任では、対象のドメインと同じトップレベル ドメインがネーム サーバーに使用される必要はありません。

  2. ネーム サーバー アドレスの末尾にあるピリオドを含めます。 末尾のピリオドは、完全修飾ドメイン名の終わりを示します。 NS 名の末尾にピリオドがない場合、一部のレジトスラーではピリオドが追加されます。 DNS RFC に準拠するには、常に末尾のピリオドを含めます。

  3. 独自のゾーンのネーム サーバー (バニティ ネーム サーバー と呼ばれることもあります) を使用したデリゲートは、Azure DNS ではサポートされていません。

  4. デリゲートが機能していることを確認してください。 nslookup などのツールを使用して、SOA (Start of Authority) レコードをクエリします。 SOA レコードは、ゾーンの作成時に自動的に作成されます。 デリゲートが設定されてから少なくとも 10 分待ちます。これは、DNS システムに変更が反映されるまでしばらく時間がかかる場合があるからです。

コマンド プロンプトから nslookup コマンドを入力します。

nslookup -type=SOA contoso.net

応答は次のようになります。

Server: ns1-04.azure-dns.com

Address: 208.76.47.4

contoso.net

primary name server = ns1-04.azure-dns.com

responsible mail addr = msnhst.microsoft.com

serial = 1

refresh = 900 (15 mins)

retry = 300 (5 mins)

expire = 604800 (7 days)

default TTL = 300 (5 mins)

ドメイン ネーム システムの監査ログを確認する

DNS Analytics を使用して、次の情報を特定できます。

  • 悪意のあるドメイン名を解決しようとしているクライアント。

  • 古いリソース レコードを特定する。

  • クエリ対象になる頻度が高いドメイン名と話好きな DNS クライアントを特定する。

  • DNS サーバーの要求負荷を確認する。

  • 動的 DNS 登録エラーを確認する。

DNS Analytics (Preview) では、Windows DNS の分析ログと監査ログ、および他の関連データを DNS サーバーから収集して分析し、関連付けます。

  • 監視するそれぞれの Windows DNS サーバーには、Log Analytics エージェントをインストールする必要があります。

  • Operations Manager を実行する場合は、Azure Monitor に接続する必要があります。

さらに構成を行わなくても、ソリューションはデータの収集を開始します。

DNS Analytics (Preview) は Azure Marketplace からダウンロードできます。 DNS 関連の分析情報の場合、DNS サーバーは Windows Server 2012 R2 以降とする必要があります。

また、DNS Analytics には、Azure Monitor ワークスペースと Log Analytics ワークスペースを介してアクセスすることもできます。 Azure portal で Azure Monitor に移動します。 [分析情報] メニューでは、[分析情報ハブ] を選択して [Log Analytics] を選択します。 Azure Monitor の [概要] ページには、Log Analytics ワークスペースにインストールされているソリューション別にタイルが表示されます。