(参考:ここにたどり着くまでの道のりは、こちらのページへ。
1.iptablesを設定する
2. IPv6を無効化する)
ファイアウォールを設置しようとiptablesを設定した途端におこった現象。
それは、
ブラウザでアクセスすると、connection timed out; no servers could be reachedと表示されて見れなくなる。
なにがなんやら、なにが原因だかさっぱりわからなくて、とにかくネットワークへイチから接続確認。
名付けて、シラミつぶし作戦!
まずはiptablesをオフにして確認する。
これはもちろん、すべて通る。
(逆に通らなかったらマズい。これ以前の問題。)
まずはiptablesをオフにする。
/etc/init.d/iptables stop
ネットワーク再起動。
/etc/init.d/network restart
●ローカルIP
ping xxx.xxx.xxx.xxx
(わからなければ『ifconfig』で調べる)
●グローバルIP
ping xxx.xxx.xxx.xxx
(わからなければ『nslookup URL』で調べる。
2個目のAddressのIPがグローバルIP。)
●GATEWAY
ping xxx.xxx.xxx.xxx
(わからなければ『route』で調べる)
●DNS(nameserver)
ping xxx.xxx.xxx.xxx
(わからなければ『nslookup URL』で調べる。
1個目のAddressのIPがDNSIP。)
●ドメイン (デフォルト)
ping xxx.sakura.ne.jp
●ドメイン (買ったやつ)
ping monte-verita.biz
次にiptablesをオンにして確認する。
まずはiptablesをオンにする。
/etc/init.d/iptables start
ネットワーク再起動。
/etc/init.d/network restart
●ローカルIP
ping xxx.xxx.xxx.xxx
●グローバルIP
ping xxx.xxx.xxx.xxx
●GATEWAY
ping xxx.xxx.xxx.xxx
●DNS(nameserver)
ping xxx.xxx.xxx.xxx
●ドメイン (デフォルト)
ping xxx.sakura.ne.jp
●ドメイン (買ったやつ)
ping monte-verita.biz
結果、、、あれ・・・全部通ってる。
なのにブラウザで見るとサイトに繋がらない。(???)
digで確認する。
●ローカルIP
dig xxx.xxx.xxx.xxx
↑↑↑ここで既に返ってこない!!以下のコマンドを打つも、すべて返ってこない。
●グローバルIP
dig xxx.xxx.xxx.xxx
●GATEWAY
dig xxx.xxx.xxx.xxx
●DNS(nameserver)
dig xxx.xxx.xxx.xxx
●ドメイン (デフォルト)
dig xxx.sakura.ne.jp
●ドメイン (買ったやつ)
dig monte-verita.biz
解決策。
iptablesを有効にすると「yum」や「dig」が利用できなくなる。
原因は、DNS 問い合わせの帰りのパケットが拒否設定になってる。
UDPのPort53を許可すればよい。
/etc/sysconfig/iptablesに下記を追加する。
-A INPUT -p udp -m udp --sport 53 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 53 -j ACCEPT
そんでもって、
まずはiptablesを再起動する。
/etc/init.d/iptables restart
ネットワーク再起動。
/etc/init.d/network restart
あとはdigコマンドをもう一度打つと、あら不思議。返ってくるようになりました。
わたしは念のため、OSを再起動し、それでもブラウザで表示されなかったので、PC自体も再起動したらきちんと表示されるようになった。
ブラウザにDNSのキャッシュやらなんやらがきっと残ってたんだと思う。
一件落着。
【シリーズ】
・iptablesを設定する
・IPv6を無効化する
・iptablesを設定したら、ブラウザでconnection timed out; no servers could be reachedになって困った時の解決法。