ADを新しく構築してDNSの設定をしたところ、nslookupのデバッグモードでドメイン名が正しく表示されていない。

Anonymous
2024-11-08T04:53:27+00:00

以下の件、ご教示いただけたらと思います。

AD構築の勉強用にHyper-VのゲストとしてWindows Server 2022を導入、ネットの情報を参考にしながら、ADを構築したところ、

ADやDNSの設定は完了した認識です。

DNSで逆引きの設定して問題なく動作したのですが、ふと、正引きしたら、タイムアウトになりました。

C:\Users\Administrator>nslookup srv01.ad.xxx.jp

サーバー: srv01.ad.xxx.jp

Address: 192.168.120.11

DNS request timed out.

timeout was 2 seconds. 

DNS request timed out.

timeout was 2 seconds. 

名前: srv01.ad.xxx.jp

Address: 192.168.120.11

これを妙だと感じて、Copilotに質問したところ、問題であるとの回答から、調査する必要があると認識。

原因を探ろうと、nslookup をデバッグモードで動作させたところ、 QUESTIONS: にある通り、違和感があります。

C:\Users\Administrator>nslookup

既定のサーバー: srv01.ad.xxx.jp

Address: 192.168.120.11

> set debug

> srv01.ad.xxx.jp

サーバー: srv01.ad.xxx.jp

Address: 192.168.120.11


Got answer:

HEADER: 

    opcode = QUERY, id = 2, rcode = NXDOMAIN 

    header flags:  response, auth. answer, want recursion, recursion avail. 

    questions = 1,  answers = 0,  authority records = 1,  additional = 0 

QUESTIONS: 

    srv01.ad.xxx.jp.ad.xxx.jp, type = A, class = IN  ⇔\*\*\*\*\*ここが疑問点\*\*\*\*\*

AUTHORITY RECORDS: 

->  ad.xxx.jp 

    ttl = 3600 (1 hour) 

    primary name server = srv01.ad.xxx.jp 

    responsible mail addr = hostmaster.ad.xxx.jp   

    serial  = 23 

    refresh = 900 (15 mins) 

    retry   = 600 (10 mins) 

    expire  = 86400 (1 day) 

    default TTL = 3600 (1 hour) 


Got answer:

HEADER: 

    opcode = QUERY, id = 3, rcode = NXDOMAIN 

    header flags:  response, auth. answer, want recursion, recursion avail. 

    questions = 1,  answers = 0,  authority records = 1,  additional = 0 

 QUESTIONS: 

    srv01.ad.xxx.jp.ad.xxx.jp, type = AAAA, class = IN  ⇔\*\*\*\*\*ここが疑問点\*\*\*\*\*

AUTHORITY RECORDS: 

->  ad.xxx.jp 

    ttl = 3600 (1 hour) 

    primary name server = srv01.ad.xxx.jp 

    responsible mail addr = hostmaster.ad.xxx.jp 

    serial  = 23 

    refresh = 900 (15 mins) 

    retry   = 600 (10 mins) 

    expire  = 86400 (1 day) 

    default TTL = 3600 (1 hour)

上記、「⇔*****ここが疑問点*****」に示した通り、

本来は、srv01.ad.xxx.jp, となるべきだと思うのですが、

ドメインだけ二重になっているように見えています。

srv01.ad.xxx.jp.ad.xxx.jp

本当にやりたいことはタイムアウトの解決ですが、

まずは、この現象について正しいかどうか、また、正しくなければ、解決方法について、ご教示いただけますと幸いです。

参考、逆引きの結果
C:\Users\Administrator>nslookup 192.168.120.11

サーバー: srv01.ad.xxx.jp

Address: 192.168.120.11

名前: srv01.ad.xxx.jp

Address: 192.168.120.11

上記の結果からも、正引きの設定になんらかの問題があると想像してます。

ただし、正引きの設定は何もいじってないのですが……。

ビジネス向け Windows | Windows Server | ネットワーク | ネットワーク接続とファイル共有

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。 プライバシーを保護するために、移行された質問のユーザー プロファイルは匿名化されます。

0 件のコメント コメントはありません
{count} 件の投票
承認済みの回答
  1. Anonymous
    2024-11-08T15:49:17+00:00

    この応答は自動的に翻訳されています。 その結果、文法上の誤りや奇妙な言い回しが生じる可能性があります。

    こんにちは

    入力した情報から、nslookup クエリを実行するときに追加のクエリがあることがわかります。デフォルトでは、ホストは、実際にクエリを実行する必要があるドメイン名をDNSサーバーに送信するだけでなく、「クエリされたドメイン名+ActiveDirectoryドメインサフィックス」などのリクエストもDNSサーバーに送信します。 nslookup の後に -nosearch パラメータを追加して、この問題を解決できるかどうかを確認できます。

    よろしくお願いいたします

    ズンホイ

    2 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません
承認済みの回答
  1. Anonymous
    2024-11-12T01:58:42+00:00

    チャブーンです。

    この件ですが、ご質問については、DNSの仕様と実際の利用方法のズレ、で起こっている話しかしら、と思います。

    まず最初に説明しないといけないことですが、DNSのFQDNですが、正しくは「ルート」を含めて考えることが、必要です。

    DNSのルートとは、FQDN文字列の一番右に「ドット(.)」を配置することで「この右側にはドメインは存在しない」ことを表現します。たとえば一般的には「answers.microsoft.com」がFQDNですが、正確なFQDNは「answers.microsoft.com.」なのです。忘れやすいこと、考え方として煩雑なので、一般的には省略してしまいますが、省略しても正しく動作するように調整されているわけです。

    DNSクライアントとしては、基本的に以下の動作を行う理解です。

    • (設定によって)右側にルートがなければ、プライマリDNSサフィックスを追加したFQDNでクエリ、解決しなければ親DNSサフィックスを再追加してクエリ
    • (設定によって)右側にルートがなければ、DNSサフィックスリストに添った内容で、サフィックスを順に追加してクエリ
    • それでも解決しない場合は、入力文字列の通りにクエリ

    上記は段階的に行われるので、どうしてもクエリに時間がかかります。これを避けて「最初から入力文字列の通りにクエリ」したければ、入力文字列にDNSルートを明確に含めれば、問題ありません。Active Directory環境で「 srv01.ad.xxx.jp.」(右端にドットを忘れない)でクエリすれば、お望み通りの結果になるでしょう。

    なお、「DNS request timed out. timeout was 2 seconds.」が表示されるのは、別の問題です。 DNSサーバーは本来、DNSルートサーバー(世界に13か所あります)に最初にアクセスして、クエリを開始します。例外は「自分自身が保有するDNSゾーン」なんですが、DNSサフィックスが付加されると、自分自身のDNSゾーンをダイレクトに指示していないので、DNSルートへのアクセスが必達になり、外部への通信が遮断されていると、このようなエラーが出る、こういうリクツかと思います。

    1 人がこの回答が役に立ったと思いました。
    0 件のコメント コメントはありません

2 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2024-11-09T23:18:30+00:00

    Zunhui Han 様

    ご回答、ありがとうございます。

    教えていただいたオプションを付与することで、問題が解決することがわかりました。

    C:\Users\Administrator>nslookup -nosearch srv01.ad.xxx.jp

    サーバー: srv01.ad.xxx.jp

    Address: 192.168.120.11

    名前: srv01.ad.xxx.jp

    Address: 192.168.120.11

    ご回答いただいた、「クエリされたドメイン名+ActiveDirectoryドメインサフィックス」については、

    まだ、もやっとしていて、

    追加のクエリとは、DNSサフィックスが自動的に付与したもので、デフォルトの動作? くらいの受け止めですが、

    時間をかけて理解しようと思います。

    ありがとうございました。

    0 件のコメント コメントはありません
  2. Anonymous
    2024-11-12T07:06:19+00:00

    チャブーン様

    ありがとうございます。謎が解けました。なるほどトップがなかったからですね。

    タイムアウトになる理由も段階的におこなっていることだと理解できました。

    DNSとしてはうまくいっているので、なぜだろう? とずっと考えていおり、ようやくすっきりしました。

    本当にありがとうございました。

    C:\Users\Administrator>nslookup srv01.ad.xxx.jp

    サーバー: srv01.ad.xxx.jp

    Address: 192.168.120.11

    DNS request timed out.

    timeout was 2 seconds. 
    

    DNS request timed out.

    timeout was 2 seconds. 
    

    名前: srv01.ad.xxx.jp

    Address: 192.168.120.11

    C:\Users\Administrator>nslookup srv01.ad.xxx.jp.

    サーバー: srv01.ad.xxx.jp

    Address: 192.168.120.11

    名前: srv01.ad.xxx.jp

    Address: 192.168.120.11

    【補足】おっしゃる通り、Hyper-Vで構築したイントラネット環境で、Webに抜ける仮想化スイッチは外した状態です。

    0 件のコメント コメントはありません