nslookupコマンド
1. 序章
このチュートリアルでは、Linuxでnslookupコマンドを使用するさまざまな方法を見てみましょう。
2. nslookupコマンド
nslookup は、ドメインネームサーバー(DNS)のクエリに使用されるコマンドラインツールであり、LinuxやWindowsなどのオペレーティングシステムで使用できます。
2.1. インタラクティブvs非インタラクティブ
nslookupを使用するには、interactiveとnon-interactiveの2つのモードがあります。
まず、パラメーターを指定せずにコマンドを入力して、インタラクティブモードをアクティブにします。
[kdoyle@localhost ~]$ nslookup
>
その後、毎回nslookupと入力せずに個々のコマンドを入力するためのコマンドプロンプトが表示されます。
一方、非対話型モードでは、パラメーターと同じコマンドを使用します。
[kdoyle@localhost ~]$ nslookup -type=a redhat.com
それでは、nslookup。を使用していくつかのクエリを実行してみましょう。
2.2. ドメインを検索する
ドメイン名ルックアップの結果を見てみましょう。
[kdoyle@localhost ~]$ nslookup redhat.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: redhat.com
Address: 209.132.183.105
DNSレコード(またはAレコード)は、「「」というテキストの後に始まります。 権威のない答え」
DNSレコードは、ドメイン名をコンピューターシステムのIPアドレスにマップすることを忘れないでください。
2.3. DNS逆引きルックアップ
同様に、IPアドレスからドメイン名を検索できます。
[kdoyle@localhost ~]$ nslookup
> type=ptr
> 209.132.183.105
105.183.132.209.in-addr.arpa name = redirect.redhat.com.
返されるドメイン名が元のドメインとわずかに異なることに注意してください。 PTRと呼ばれる別のレコードが実際に返されています。
一部のドメインには、IPアドレス用に登録されたPTRレコードがありません。
[kdoyle@localhost ~]$ nslookup
> 104.18.62.78
Server: 192.168.1.1
Address: 192.168.1.1#53
** server can't find 78.62.18.104.in-addr.arpa: NXDOMAIN
3. タイプパラメータ
次に、タイプパラメータはルックアップにさらに情報を追加します。 たとえば、 ptr は、上記のように逆引きDNSを提供します。
それでは、他のタイプを試してみましょう。
3.1. すべてのエントリ
-type = a を指定すると、すべてのDNSエントリを取得できます。
[kdoyle@localhost ~]$ nslookup -type=a baeldung.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: baeldung.com
Address: 104.18.63.78
Name: baeldung.com
Address: 104.18.62.78
3.2. 権威(SOA)
次に、ドメインに関する信頼できる(SOA)情報を確認します。 たとえば、 Aレコードには、メール情報やその他の情報が含まれています。
[kdoyle@localhost ~]$ nslookup -type=soa baeldung.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
baeldung.com
origin = lakas.ns.cloudflare.com
mail addr = dns.cloudflare.com
serial = 2033559691
refresh = 10000
retry = 2400
expire = 604800
minimum = 3600
多くのドメインネームサーバーがインターネット全体に分散しているため、直接ではない結果が得られます。 これらは非信頼的回答と呼ばれます。 ただし、それでも正確な記録を提供します。
3.3. エントリ
最後に、 type = any パラメーターは、サーバー上の他のタイプのレコードを含む上記のすべてのを返します。これは、必要なレコードがわからない場合に役立ちます。
type = any はほとんどのパブリックネームサーバーに実装されていない可能性がありますが、内部ネットワークでは引き続き役立ちます。
4. ネームサーバー情報
ドメインレコードが存在する場所を検証するために、ネームサーバー情報を確認したい場合があります。
たとえば、 type =nsを使用してドメインをテストできます。
[kdoyle@localhost ~]$ nslookup -type=ns baeldung.com
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
baeldung.com nameserver = lakas.ns.cloudflare.com.
baeldung.com nameserver = meera.ns.cloudflare.com.
その結果、ドメインを介したサーバー間通信用に構成するDNSを特定できます。 新しいDNSをクエリするには、ローカルネットワーク構成を変更する必要があることに注意してください。
5. デバッグをオンにする
さらに、 nslookup のインタラクティブモードにより、ユーザーはクエリをデバッグできます。
[kdoyle@localhost ~]$ nslookup -debug baeldung.com
Server: 192.168.1.1
Address: 192.168.1.1#53
------------
QUESTIONS:
baeldung.com, type = A, class = IN
ANSWERS:
-> baeldung.com
internet address = 104.18.63.78
ttl = 300
-> baeldung.com
internet address = 104.18.62.78
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
------------
Non-authoritative answer:
Name: baeldung.com
Address: 104.18.63.78
Name: baeldung.com
Address: 104.18.62.78
------------
QUESTIONS:
baeldung.com, type = AAAA, class = IN
ANSWERS:
-> baeldung.com
has AAAA address 2606:4700:3030::6812:3e4e
ttl = 300
-> baeldung.com
has AAAA address 2606:4700:3036::6812:3f4e
ttl = 300
AUTHORITY RECORDS:
ADDITIONAL RECORDS:
------------
Name: baeldung.com
Address: 2606:4700:3030::6812:3e4e
Name: baeldung.com
Address: 2606:4700:3036::6812:3f4e
6. 結論
要約すると、 nslookup コマンドは基本的で、非常に便利です。 2つのモードとさまざまなタイプのクエリ、およびトラブルシューティングが必要になった場合にデバッグする機能を確認しました。