Ubuntu に VPS があります。また、DNS (ns1.example.com、ns2.example.com) を設定し、2 つのテスト ドメインをそれらの NS に接続しました (2 つのサンプル ドメインのドメイン登録サイトでそれらの NS をレコードに書き込みました)。これらのドメインを nslookup で検索すると、レコードが見つかりません。これらのドメインをネーム サーバーの IP に接続するレコードを作成したいと思います。firstexample.com の場合は 31.172.74.55 (ns1.example.com の IP を作成)、secondexample.com の場合は 79.132.156.160 (ns2.example.com の IP を作成) になります。どうすればいいですか? 私は bind を使用しており、vesta で DNS を作成しましたが、ターミナルでレコードを作成する方法を知り、新しいドメインの時間を節約するために自動的にレコードを作成するスクリプトを記述したいと考えています。このコマンドを作成しましたnslookup csgo.sbs
。結果は でしたconnection timed out; no servers could be reached
。dig
同じ応答があります
答え1
ドメインのネームサーバーが正しく登録され、正常に動作しているかどうかを診断するには、ルート ネームサーバーから開始して、ターゲット ドメインに到達するかエラーが発生するまで、手動で再帰検索を再度実行します。この場合、次の結果が得られます。
~$ dig +noall +authority +answer ns sbs.
sbs. 170959 IN NS d.nic.sbs.
sbs. 170959 IN NS c.nic.sbs.
sbs. 170959 IN NS a.nic.sbs.
sbs. 170959 IN NS b.nic.sbs.
~$ dig +noall +authority +answer ns sbs. @g.root-servers.net.
sbs. 172800 IN NS a.nic.sbs.
sbs. 172800 IN NS b.nic.sbs.
sbs. 172800 IN NS c.nic.sbs.
sbs. 172800 IN NS d.nic.sbs.
~$ dig +noall +authority +answer ns csgo.sbs. @a.nic.sbs.
csgo.sbs. 3600 IN NS ns1.makeuppro.shop.
csgo.sbs. 3600 IN NS ns2.makeuppro.shop.
~$ dig +noall +authority +answer ns csgo.sbs. @ns1.makeuppro.shop.
;; connection timed out; no servers could be reached
~$ dig +noall +authority +answer ns csgo.sbs. @ns2.makeuppro.shop.
;; connection timed out; no servers could be reached
ns1.makeuppro.shop
これは、サーバーns1.makeuppro.shop
がドメインのネームサーバーとして正しく登録されているcsgo.sbs
が、インターネットからの DNS クエリに応答しないことを示しています。
~$ dig +noall +authority +answer a ns2.makeuppro.shop.
ns2.makeuppro.shop. 1740 IN A 79.132.138.120
~$ dig +noall +authority +answer a ns1.makeuppro.shop.
ns1.makeuppro.shop. 1799 IN A 79.132.138.120
これらのサーバー名は両方とも同じ IPv4 アドレス を参照していることがわかります。79.132.138.120
つまり、実際には 1 つの同じサーバーです。
次のステップでは、そのアドレスが正しいかどうか、このアドレスのポート 53 への UDP パケットがそのサーバーに到達しているかどうか (ファイアウォールによってブロックされるのではなく)、そのサーバーで BIND (または別の DNS サービス) が実行されていてポート 53 でリッスンしているかどうか、それらのパケットを受信して応答しているかどうか、応答がオープン インターネットに到達しているかどうか (ファイアウォールによって再びブロックされるのではなく) を確認します。
このようにして問題を特定したら、BIND 構成の起動問題を修正したり、VPS プロバイダーと交渉してファイアウォールのポート 53 を開いたりするなど、適切な対策を講じて問題を解決できます。