Windows TIPS
[Network]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

nslookupの基本的な使い方(SOAレコード編)


デジタルアドバンテージ 打越 浩幸
2005/07/16
 
対象OS
Windows 2000
Windows XP
Windows Server 2003
ドメインの起点となる情報はSOAレコードで定義されている。
SOAレコードの情報は、nslookup -type=soaで取得できる。
 
解説

 nslookupは、DNSサーバの動作をチェックするために使われる非常に基本的なコマンドである。ここでは、SOAレコードの取得方法とその意味について解説する。

SOAレコードとは

SOAレコードには何が記述されている?(Master of IP Network フォーラム)

 SOA(Start Of Authority。「権威の開始」)レコードとは、DNSゾーンの起点となる情報が記録されたレコードであり、各DNSゾーンごとに1つずつ存在する。ここには、DNS情報の検索のルートとなる重要な情報(ネーム・サーバ情報やSOAレコードのTTL情報など)が記録されている。クライアントは、ここに記録された情報から順番に辿ることにより、ドメイン内の各種レコード情報を取得することができる。

 SOAレコードには、ドメインのDNSのルート情報が記録されている。具体的には、次のような情報が定義されている。

ドメインのSOAレコードの定義
これはDNS管理ツールで、DNSゾーンのSOAレコードを表示させたところ。ドメイン名を右クリックして、[プロパティ]メニューを選択すると表示される。
  SOAレコードのシリアル番号。内容を変更したときに増加させる。Windows OSのDNSサーバでは、レコード内容に変更があると、自動的に増加させる。シリアル番号が増加していると、クライアント側ではSOAレコードの内容に変更があったとみなし、レコードの内容を再取得する。
  このドメインのマスタとなるプライマリのDNSサーバ名。
  ドメインの管理者のメール・アドレス。本来のメール・アドレス表記では「admin@syslab.d-advantage.jp」のようになるが、DNSレコード中では「@」文字は「.(ピリオド)」に置き換えることになっているので(@は特別な意味を持つので使用できない)、このように表記する。
  SOAレコードのTTL(最小生存時間)およびエラー時の再試行時間間隔。

SOAレコード情報の確認

 DNSを利用する側では、まずこのSOAレコードの情報が正しく取得できないと、ドメイン内の各種レコード情報を取得することができない。そのため、SOAレコードが正しく定義され、それが外部からアクセスできるかどうかを確認することは、DNSドメインの正しい運用において非常に重要なことである。

 SOAレコードの内容を確認するには、クライアント・コンピュータ上で「nslookup -soa」コマンドを実行する。引数にはDNSのドメイン名を指定する。

C:\>nslookup -type=soa syslab.d-advantage.jp. …SOAレコードの表示
Server:  sysserver01.syslab.d-advantage.jp
Address:  10.30.2.11

syslab.d-advantage.jp …結果のSOAレコード
        primary name server = sysserver01.syslab.d-advantage.jp …DNSサーバ名
        responsible mail addr = admin.syslab.d-advantage.jp
        serial  = 62 …シリアル番号
        refresh = 900 (15 mins) …再試行時間間隔
        retry   = 600 (10 mins)
        expire  = 86400 (1 day) …レコードの有効期間
        default TTL = 3600 (1 hour) …TTL
sysserver01.syslab.d-advantage.jp       internet address = 10.30.2.11  …DNSサーバのIPアドレス

インターネットのDNSサーバ

 以上の例は、イントラネット上のDNSサーバの例であったが、インターネット上のDNSサーバでも操作方法は同じである。ドメインの管理者情報(メール・アドレス)などを調べたりする場合には、この方法を使うことができる。

C:\>nslookup -type=soa atmarkit.co.jp …@ITのSOAレコードの検索
Server:  sysserver01.syslab.d-advantage.jp
Address:  10.30.2.11

Non-authoritative answer: …Non-authoritativeな結果
atmarkit.co.jp
        primary name server = ns1.i2ts.ne.jp
        responsible mail addr = postmaster.i2ts.ne.jp
        serial  = 2001060130
        refresh = 3600 (1 hour)
        retry   = 1200 (20 mins)
        expire  = 604800 (7 days)
        default TTL = 3600 (1 hour)

ns1.i2ts.ne.jp  internet address = 210.131.XXX.XXX …DNSサーバのIPアドレス

 この例では、「Non-authoritative answer:」と表示されているが、これは、ドメインのSOAを定義しているプライマリのDNSサーバの結果ではなく、クライアント側でキャッシュされたSOA情報であるということを表している。キャッシュされた結果だと、最新のSOAレコードではない可能性があるので、可能ならば検索対象のDNSサーバを直接指定して(上の結果で、「primary name server」と表示されているサーバ)、nslookupコマンドを実行するとよい。nslookupで検索先のDNSサーバを指定するには、2番目の引数としてDNSサーバ名(もしくはDNSサーバのIPアドレス)を指定する。

C:\>nslookup -type=soa atmarkit.co.jp ns1.i2ts.ne.jp …DNSサーバを指定して検索
Server:  ns1.i2ts.ne.jp …検索対象のDNSサーバ
Address:  210.131.XXX.XXX
Aliases:  XXX.XXX.131.210.in-addr.arpa

atmarkit.co.jp …結果(Non-authoritativeではない)
        primary name server = ns1.i2ts.ne.jp
        responsible mail addr = postmaster.i2ts.ne.jp
        serial  = 2001060130
        refresh = 3600 (1 hour)
        retry   = 1200 (20 mins)
        expire  = 604800 (7 days)
        default TTL = 3600 (1 hour)
atmarkit.co.jp  nameserver = ns1.i2ts.ne.jp …このドメインのDNSサーバ一覧
atmarkit.co.jp  nameserver = dns1.i2ts.ne.jp
atmarkit.co.jp  nameserver = dns2.i2ts.ne.jp
ns1.i2ts.ne.jp  internet address = 210.131.XXX.XXX …DNSサーバのIPアドレス
dns1.i2ts.ne.jp internet address = 210.131.XXX.XXX
dns2.i2ts.ne.jp internet address = 202.215.XXX.XXX

 SOAレコードの情報はDNSのクライアント側でキャッシュされるため、例えばドメインの移転(IPアドレスの変更)などを計画している場合は、このSOAレコードのTTLを段階的に短くして、SOAレコードが更新された場合に、すぐに各クライアントに反映されるようにする(TTLが長いと、SOAレコードの内容が変更されても、クライアントはそれに気が付かず、古い情報を参照してしまう)。そのような場合には、このコマンドを使って、SOAレコードの内容が正しく更新され、クライアント側で取得できているかどうかを確認するとよい。End of Article

関連記事(Windows Server Insider)
  Windows TIPS:nslookupの基本的な使い方(イントラネット編)
  Windows TIPS:nslookupの基本的な使い方(MXレコード編)
  Windows TIPS:nslookupでDNSのゾーン転送機能をテストする
  特集:インターネット「常時」接続計画第6回「DNSサーバの設定と確認」
     
「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間