読者です 読者をやめる 読者になる 読者になる

google.comの名前解決できない

自宅サーバからapt-getができなくなったいたため調査

$ ping google.com
ping: unknown host google.com 

名前解決できず。
先日LAN内に内向きのDNSを構築したのでそれが原因だろうと踏んで調べる
構築したDNSサーバ上で

$ dig @127.0.0.1 google.com
; <<>> DiG 9.8.1-P1 <<>> @127.0.0.1 google.com               
; (1 server found)                                           
;; global options: +cmd                                      
;; Got answer:                                               
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 56445   

$ dig @ISPのDNSアドレス google.com
; <<>> DiG 9.8.1-P1 <<>> @ISPのDNSアドレス google.com           
; (1 server found)                                           
;; global options: +cmd                                      
;; Got answer:                                               
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11098    

ISPDNSに直接聞きに行くと名前解決できるが、構築したDNS経由だとサーバエラーで解決できない。よって原因は自宅のDNSにある。

ちなみにdigの応答の見方についても調べてみた。参考ページはこちら
http://www.atmarkit.co.jp/ait/articles/0203/21/news002.html
http://dnsops.jp/event/20120831/dns-troubleshoot-2.pdf


bindのエラーログを見てみると以下のようなエラーが出ていた

error (broken trust chain) resolving

これでググってみるとDNSSECに関する設定の問題があると判明。
DNSSECとはDNSポイズニングに対する根本的な防御策となる拡張機能で、電子署名を利用してキャッシュされたDNSの情報が正しいものであることを証明する仕組み


自宅のDNSは外から見えないようになっているためDNSポイズニングをそこまで考える必要はないのでこの機能をOFFにしておくことにした。
name.conf.options

dnssec-enable no;
dnssec-validation no;
//dnssec-lookaside auto;

これで上記bindのエラーは出なくなった。
かつ名前解決もできるようになったのでこれでひとまず問題は解決。
DNSSECに関してはもう少し調べてあとで設定をしてみようと思う。

DNSSECやポイズニングについて参考ページ
http://jprs.jp/related-info/guide/009.pdf
http://www.ipa.go.jp/security/vuln/documents/2008/200809_DNS.html


▼おまけ
調査の途中で副作用的に調べたことをメモ
digにて自宅のDNSが原因であると特定したあと、tcpdumpを使ってパケットの流れを見てみるとISPDNSだけでなくルートサーバにも問い合わせていることがわかった。これはbindの設定で変更しておく。

name.conf.options

//forward first;
forward only;
forwarders {
        ISPのプライマリーDNS;
        ISPのセカンダリーDNS;
};

デフォルトはfirstで、これはforwardersに聞いても名前解決出来なかった際にルートに聞きに行くという設定。onlyにしておくことでforwardersのみに聞きに行ってだめならそこで終わる。
参考ページ:http://www.kozupon.com/bind/forward_err.html

マスタリングTCP/IP 入門編 第5版

マスタリングTCP/IP 入門編 第5版