かなり前から気になっているのですが、iMacがスリープから復帰するとネットワークにアクセスできなくなることがあります。
どうも自宅のDNSサーバを引けなくなっているようで、さっぱり原因がわからず長い間悩んでいましたが、犯人はdenyhostsでした。と思ったら勘違い、やっぱり繋がらない…
状況
最初は、何も問題ありません。
pingも通れば、DNSも引けます。
iMacをスリープして復帰すると、たまにDNSが引けなくなります。
そもそも、pingも通りません。
$ ping 10.10.2.10 PING 10.10.2.10 (10.10.2.10): 56 data bytes Request timeout for icmp_seq 0 Request timeout for icmp_seq 1 Request timeout for icmp_seq 2 Request timeout for icmp_seq 3 Request timeout for icmp_seq 4 Request timeout for icmp_seq 5 ^C --- 10.10.2.10 ping statistics --- 7 packets transmitted, 0 packets received, 100.0% packet loss $
一度引けなくなると、サーバを再起動するまで復旧しません。
iMac上のゲストOSからのアクセスは問題なし
iMacがDNSサーバに通信できない状態で、iMac上のParallels Desktop上のゲストOS(ネットワークはブリッジ)からの通信は全く問題なし。
iptables?
DNSサーバ側でIPアドレスベースで通信を遮断しているように見えます。
iptablesかなと思いましたが、iptablesで通信を遮断している形跡はなし
$ sudo iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination $
denyhosts?
そういえば、前にsshのセキュリティホール対策でdenyhostsをセットアップしてました。
/etc/hosts.denyを確認してみるも異常なし
念のため/var/lib/denyhostsを確認してみるとiMacのIPアドレスが遮断されていました。
# grep [iMacのIPアドレス] /var/lib/denyhosts/hosts-restricted | wc -l 1 #
denyhostsの解除方法を実行しましたが、相変わらず接続できず…
DNSサーバを再起動すると復旧します。(なぜだ…)