以上でnamedの起動準備が整いました。namedの起動は以下のコマンドで行います。ただし、RPMなどのバイナリパッケージでインストールしたBIND 9を使用する場合は、/etc/init.d/下のnamedスクリプトを使用します。
# /usr/local/sbin/named
-u named |
直接起動する場合 |
# /etc/init.d/named
start |
パッケージ付属の起動スクリプトを使用する場合 |
namedを起動したら、動作確認を行います。まず、namedが起動しているサーバ自身で確認しましょう。従来は、こうした確認にnslookupを使ってきましたが、最近はdigとhostの使用が推奨されています。これからDNSを覚えたいという方は、nslookupではなくdigとhostを使えるようにしましょう。
digは、問い合わせ条件をコマンドの引数で受け取ります。nslookupの対話型方式に慣れていると多少戸惑いますが、引数の指定は至って簡単です。dig/hostの詳細な使用方法については、機会を改めて紹介します。
まずは、BIND 9がマスター・ゾーンサーバ/キャッシュサーバとして動作しているかを確認しましょう。
digを使って、SOAレコードをチェックしてみましょう。
digでは、DNSサーバを「@」に続けて指定します。ここではローカルホストへの問い合わせになるよう、「127.0.0.1」または「localhost」を指定します。/etc/resolv.confでネームサーバを自分自身にしている場合(注)は省略可能です。
domain example.jp nameserver 127.0.0.1
さらに、調べたいドメインとレコードを指定します。引数の順序に決まりはありません。
$ /usr/local/bin/dig @127.0.0.1 example.jp soa |
同様に、NSレコードを確認してみます。レコードオプションに「ns」を指定してdigを実行します。
$ /usr/local/bin/dig @127.0.0.1 example.jp ns |
digの引数に、調べたいドメインではなくホスト名をフルドメイン付き(FQDN)で指定します。Aレコードを調べる場合は、「a」を指定します。ちなみに、Aレコードの場合は指定を省略できます。
$ /usr/local/bin/dig @127.0.0.1 dns.example.jp a |
digでは通常、引数にドメイン名が来ることを期待します(つまりドメイン名指定がデフォルト)。IPアドレスを指定する場合は、「-x」オプションを使います。
Aレコードを調べる場合は、レコードオプションに「a」を指定し、これは省略可能だと説明しました。しかし、ここでは意図的に省略します。レコードオプション「a」を指定したときとそうでないときの挙動の違いを一度自分で確認してみましょう。どうしてそのような違いが生じるのかは、次回で説明します。
$ dig @127.0.0.1 -x 192.168.10.1 |
最後にキャッシュサーバの動作を確認します。外部のドメインを指定して、DNSが引けているかを確認します。
$ dig @127.0.0.1 www.atmarkit.co.jp |
第1回と第2回で、BIND 9の紹介とインストール&起動までを駆け足で紹介しました。
いくつか細かい説明が必要な個所がありましたが、次回以降で順次紹介していきます。第3回以降からは、次のような内容を盛り込んでいく予定です。
本連載に関する要望・感想などは「Linux Square会議室」にお寄せください。
参考:
▼DNSの仕組みと運用(1)
▼O'REILLY "DNS and BIND, 4th Edition”
邦訳:オライリー・ジャパン 『DNS & BIND 第4版』
Copyright © ITmedia, Inc. All Rights Reserved.