プライベートDNSを立てる
プライベートDNSはローカルエリア向けのDNSサーバー。 これを自宅用に立てる。
プライベートDNSではルートからの検索されないため マスターサーバーとキャッシュサーバーを兼用にする必要がある。 これをPCやルーターのDNS設定に置き換える。
これで一番問題になるのがハードウェアの故障。 このサーバーが故障するとインターネットが利用不能になる。 復旧するのにサーバーの再構築まではやるのはちょっと大変。
この問題をクリアするために、 VPSサービスにプライベートDNSを立ててみた。
以下、bindの設定例
named.conf
options { directory "/etc/namedb"; pid-file "/var/run/named/pid"; listen-on { any; }; listen-on-v6 { any; }; // 再帰検索可能な設定 recursion yes; allow-recursion { any; }; }; zone "." { type hint; file "named.root"; }; // マスタサーバーの設定 zone "example.com" { type master; file "master/example.com.zone"; }; zone "0.168.192.in-addr.arpa" { type master; file "master/example.com.rev"; };
master/example.com.zone(順引きファイル)
$TTL 86400 @ IN SOA dns.example.com. root.example.com. ( 2013031801 ; serial 3600 ; refresh 1hr 900 ; retry 15min 604800 ; expire 1w 86400 ; min 24hr ) @ IN NS dns gateway IN A 192.168.0.XXX svr01 IN A 192.168.0.XXX dns IN A dnsサーバーのIPアドレス nfs IN CNAME svr01 svn IN CNAME svr01
master/example.com.rev(逆引きファイル)
$TTL 86400 @ IN SOA dns.example.com. root.example.com. ( 2013031801 ; serial 3600 ; refresh 1hr 900 ; retry 15min 604800 ; expire 1w 86400 ; min 24hr ) @ IN NS dns.example.com. 1 IN PTR gateway.example.com. 100 IN PTR svr01.example.com.