nslookup — インターネットネームサーバに対話的に問い合わせる
nslookup [-option ...] [host-to-find | -[server]]
nslookup はインターネットネームサーバに問い合わせを行います。 nslookup には対話モードと非対話モードの 2 つのモードがあります。 対話モードでは、 様々なホストやドメインの情報をネームサーバに対して問い合わせたり、 あるドメイン内のホスト一覧を表示することができます。 非対話モードでは、あるホストもしくはドメインの名前および 要求した情報のみが表示されます。
次の場合は対話モードに入ります。
- a)
- 引数が与えられなかったとき(デフォルトのネームサーバを利用します)。
- b)
- 最初の引数がハイフン (-) であり、2 番目の引数がネームサーバの ホスト名もしくは IP アドレスであるとき。
検索したいホストの名前もしくは IP アドレスが最初の引数として与えられた場合は、 非対話モードになります。 2 番目の引数はオプションで、ネームサーバのホスト名もしくは IP アドレスを 指定します。
“set” コマンドを使うオプションは、ホームディレクトリの .nslookuprc ファイルに 1 行に 1 つずつ書くことでも指定できます。 オプションはコマンドラインで指定することも可能です。その場合、 前にハイフンをつけ、引数より先に書きます。たとえば、デフォルトの問い合わせを ホスト情報に変更し、初期タイムアウトを 10 秒とするには、
nslookup -query=hinfo -timeout=10
とします。 コマンドは control-C を入力することでいつでも中断できます。 終了するには、 control-D (EOF) もしくは exit を入力します。 コマンドラインの長さは 256 文字以下でなければなりません。 内部コマンドをホスト名として扱うには、 エスケープ文字 (\) を頭につけます。 注意: 解釈できないコマンドはホスト名として扱われます。
- host [server]
- host についての情報を現在のデフォルトサーバ、もしくは server が指定されている場合はそのサーバに問い合わせます。 host が IP アドレスであり、問い合わせタイプが
A もしくは PTR であるときは、ホスト名が返されます。 host が 名前であり、最後にピリオドがないときには、 その後ろにデフォルトのドメイン名が付加されます(この動作は、 set オプションの domain, srchlist, defname, search に依存します)。 現在のドメインにないホストについて調べるときには、 名前の末尾にピリオドを付加します。
server domain -
lserver domain - デフォルトサーバを domain に変更します。
lserver は domain についての情報を探すのに初期サーバを使い、 server は現在のデフォルトサーバを使います。 公式の答えが見つからないときには、答えを持つ可能性のある サーバ名が返されます。 root - デフォルトサーバをドメイン名空間のルートサーバに変更します。 現在のところホスト
ns.internic.net が使われます (このコマンドは “lserver ns.internic.net” に同義です)。 ルートサーバ名は “set root” コマンドで変更できます。 finger [name] [> filename] -
finger [name] [>> filename] - 現在のホストにあるフィンガーサーバと接続します。 現在のホストは、以前の問い合わせが成功し、アドレス情報が 返されたときに定義されます( “
set querytype=A” 参照)。 name はオプションです。 > と >> は普通に出力をリダイレクトするのに使えます。 ls [option] domain [> filename] -
ls [option] domain [>> filename] - domain について入手できる情報の一覧を出します。 オプションでファイル filename を作成あるいは filename に追加できます。 デフォルトの出力にはホスト名とその IP アドレスが含まれます。 option は下記のいずれかです。
-t querytype - 指定したタイプの全レコードの一覧を出力します(下記の querytype 参照)。
-a - そのドメイン内での、各ホストのエイリアス一覧を出力します。 “
-t CNAME” と同義です。 -d - そのドメインの全レコードの一覧を出力します。 “
-t ANY” と同義です。 -h - そのドメインの CPU 及び OS 情報を出力します。 “
-t HINFO” と同義です。 -s - そのドメイン内のホストの良く知られた (well-known) サービスの一覧を出力します。 “
-t WKS” と同義です。
出力がファイルにリダイレクトされるときには、サーバから 50 レコードを 受け取るたびにハッシュマークが表示されます。
view filename - 直前の
ls コマンドの出力を並べ変え、 more(1) で出力します。 help -
- ?
- コマンドの簡単な要約を表示します。
exit - プログラムを終了します。
set keyword [=value] - このコマンドは探索に影響するオプションを変更するのに使われます。 有効な keyword は以下の通りです。
all - よく使われる
set のオプションの現在の値を表示します。 現在のデフォルトサーバとホストに関する情報も表示されます。 class=value - 問い合わせのクラスを次のいずれかに変更します。
IN - インターネットクラス。
CHAOS - chaos クラス。
HESIOD - MIT Athena Hesiod クラス。
ANY - 上記すべて。
クラスは情報のプロトコルグループを特定します。
(デフォルト = IN; 略記 = cl)
- [
no] debug - デバッグモードにします。サーバに送られるパケットとそれに 対する返答について、より多くの情報が表示されます。
(デフォルト = nodebug; 略記 = [no] deb)
- [
no] d2 - 詳細なデバッグモードにします。 パケットごとに重要なすべてのフィールドが表示されます。
(デフォルト = nod2)
domain=name - デフォルトドメイン名を name に変更します。
defname と search オプションの設定に応じて、 探索要求されるホスト名にデフォルトドメイン名が付加されます。 デフォルトドメイン名が 2 つ以上の要素から なるとき、ドメインサーチリストにはデフォルトドメインの親が含まれます。 たとえば、デフォルトドメイン名が CC.Berkeley.EDU であるとき、サーチリストは CC.Berkeley.EDU 及び Berkeley.EDU です。 異なるリストを指定するには、 “set srchlist” コマンドを使います。 このリストを表示するには、 “set all” コマンドを使います。 (デフォルト = hostname(1) から得た値, /etc/resolv.conf あるいは LOCALDOMAIN; 略記 = do)
srchlist=name1/name2/... - デフォルトドメイン名を name1 にし、ドメインサーチリストを name1, name2, etc. に変更します。スラッシュ (/) で区切って 最大 6 つまで指定可能です。 たとえば
set srchlist=lcs.MIT.EDU/ai.MIT.EDU/MIT.EDU
の場合、ドメインを lcs.MIT.EDU にし、サーチリストを上の 3 つの名前に 設定します。 このコマンドは、 “set domain” コマンドによるデフォルトドメイン名と サーチリストを上書きします。 リストを表示するには、 “set all” コマンドを使います。
(デフォルト = hostname(1) に基づく値, /etc/resolv.conf あるいは LOCALDOMAIN; 略記 = srchl)
- [
no] defname - これが設定されると、単一要素からなる問い合わせ(すなわちピリオドのないもの) に対して、 指定したデフォルトドメイン名が付加されます。
(デフォルト = defname; 略記 = [no] defname)
- [
no] search - 問い合わせ要求にピリオドが少なくとも 1 つ含まれているが ピリオドで終っては いない 場合、 答えが受け取れるまで、ドメインサーチリスト内のドメイン名を 付加します。
(デフォルト = search; 略記 = [no] sea)
port=value - デフォルトのネームサーバの TCP/UDP ポートを value に変更します。
(デフォルト = 53; 略記 = po)
querytype=value -
type=value - 問い合わせる情報の種類を変更します。情報は次のうちのいずれかです。
A - ホストの IP アドレス。
CNAME - 別名に対する正式名。
HINFO - ホストの CPU と OS の種類。
MINFO - メールボックスもしくは、メールリストに関する情報。
MX - メール交換ホスト。
NS - その名前空間内のネームサーバ。
PTR - 問い合わせが IP アドレスであればホスト名、そうでなければ それ以外の情報へのポインタ。
SOA - ドメインの “権威開始 (start-of-authority)” 情報。
TXT - テキスト情報。
UINFO - ユーザ情報。
WKS - サポートする、よく知られたサービス。
他のタイプ (ANY, AXFR, MB, MD, MF, NULL) については、ドキュメント RFC-1035 に書かれています。
(デフォルト = A; 略記 = q,
ty)
- [
no] recurse - サーバが情報を持っていないときに、他のサーバに問い合わせるよう 指示します。
(デフォルト = recurse; 略記 = [no] rec)
retry=number - リトライ回数を number 回とします。 要求に対する返答をある時間内 ( “
set timeout” で変更できる) に 受け取らなかったとき、タイムアウト期間は 2 倍にされ、 要求が再送されます。 retry の値は、あきらめるまでに要求を何回再送するかを決めます。 (デフォルト = 4, 略記 = ret)
root=host - ルートネームサーバ名を host に変更します。 これは “
root” コマンドに影響します。 (デフォルト = ns.internic.net; 略記 = ro)
timeout=number - 返答を待つ初期タイムアウト間隔を number 秒に変更します。 リトライのたびにタイムアウト間隔は倍になります。
(デフォルト = 5 seconds; 略記 = ti)
- [
no] vc - サーバに要求を出すときに、常に仮想回路 (virtual circuit) を使います。
(デフォルト = novc; 略記 = [no] v)
- [
no] ignoretc - パケットトランケーションエラーを無視します。
(デフォルト = noignoretc; 略記 = [no] ig)
- /etc/resolv.conf
- ドメイン名の初期値とネームサーバのアドレスを記述するファイルです。
- $HOME/.nslookuprc
- ユーザ用の初期化オプションを記述するファイルです。
- /usr/share/misc/nslookup.help
- コマンドの要約です。