DNSに登録したホストの逆引きを設定します。
逆引きは、IPアドレスからホスト名を調べるための仕組みです。
ログに記録されるIPアドレスをホスト名に変換したりSMTPやFTPでアクセス元の詐称を防止するために使われます。
プライベートなDNSでの必要性は、あまりありませんね。
zoneファイルの設定
前回、ホスト名を登録したのと同様に/etc/named.conf.localにzoneファイルを設定します。
$ cat /etc/bind/named.conf.local zone "a.local" { type master; file "/etc/bind/db.a.local.zone"; }; zone "111.168.192.in-addr.arpa" { type master; file "/etc/bind/db.a.local.rev"; };
逆引きの設定
zoneファイルに逆引きを設定します。
$ cat db.a.local.rev ; ; BIND reverse data file for a.local domain. ; $TTL 86400 @ IN SOA ns.a.local. root.ns.a.local. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns.a.local. 1 IN PTR gateway.a.local. 2 IN PTR ns.a.local.
設定チェックと再起動
前回、作成したMakefileを使って再起動します。
なぜか、ns.a.localのアドレスがないとおこられますが
$ cat Makefile all: restart restart: check checkzone /etc/init.d/bind9 restart check: named-checkconf /etc/bind/named.conf checkzone: named-checkzone a.local db.a.local.zone named-checkzone a.local db.a.local.rev $ sudo make named-checkconf /etc/bind/named.conf named-checkzone a.local db.a.local.zone zone a.local/IN: loaded serial 20091039 OK named-checkzone a.local db.a.local.rev zone a.local/IN: NS 'ns.a.local' has no address records (A or AAAA) zone a.local/IN: loaded serial 7 OK /etc/init.d/bind9 restart Stopping domain name service...: bind9 waiting for pid 9015 to die. Starting domain name service...: bind9. $
動作確認
逆引きできるようになりました。
$ dig @localhost -x 192.168.1.1 | grep gateway.a.local 1.111.168.192.in-addr.arpa. 86400 IN PTR gateway.a.local. $