bindでの情報を通信するポートは、通常TCPポート53、UDPポート53を使用します。しかしネームサーバー構築時やテスト環境においては本番のポートでテストするのは極力避けたい。そこでテスト環境時において通信ポートを変更する方法です。
ここでは例として5300のポートを設定する方法を紹介します。
まずは、ルーターなどの設定でTCP/UDPポート5300を通しておきます。これで外部との通信が5300ポートでできるようになります。
次に、named.confのoptionステートメント(Ubuntu/Debianの場合は、/etc/bind/named.conf.options内のoptionステートメント)に以下のようにポート番号を指定します。
ネットワークの指定は、
設定後は/etc/init.d/bind restartで再起動させておきます。
digコマンドで名前解決のテストをする場合は、
ネームサーバー構築時には、既存のネームサーバーが走っていても平行して開発ができるので非常に便利です。
ここでは例として5300のポートを設定する方法を紹介します。
まずは、ルーターなどの設定でTCP/UDPポート5300を通しておきます。これで外部との通信が5300ポートでできるようになります。
次に、named.confのoptionステートメント(Ubuntu/Debianの場合は、/etc/bind/named.conf.options内のoptionステートメント)に以下のようにポート番号を指定します。
options {ここでの構文は、
listen-on port 5300 { any; };
...
}
listen-on port <ポート番号> { <ネットワーク>; };という風になっています。このlisten-onはデフォルトでは省略されています。省略している場合はポート53を使うという約束になっています。テスト環境が必要なくなったら削除しても構いませんし、明示的にlisten-on port 53 { any; };で設定しても大丈夫です。
ネットワークの指定は、
127.0.0.1;やグローバルIPアドレス(固定IPアドレス)を指定できます。すべてのネットワークからの通信を許可する場合は、any;を指定してください。また勿論、
192.168.11.0/24;
options {という風に複数設定することもできます。
listen-on port 5300 {
127.0.0.1;
192.168.11.0/24;
};
...
}
設定後は/etc/init.d/bind restartで再起動させておきます。
digコマンドで名前解決のテストをする場合は、
dig @localhost -p 5300 localhostまたは、
dig @localhost -p 5300 -x 192.168.11.8というようにコマンド打ちます。これは、
dig @<名前解決をするホスト> -p <ポート番号> <ドメイン>というようになっています。
dig @<名前解決をするホスト> -p <ポート番号> -x <IPアドレス>
ネームサーバー構築時には、既存のネームサーバーが走っていても平行して開発ができるので非常に便利です。



