.png)
私は過去 2 年間、ファイアウォールとプロキシ サーバーを稼働させてきました。これは に基づいておりslackware64 - v14.0
、通常は再起動の合間に長期間稼働しています。最近まで問題なく動作していました。このシステムには誰もアクセスできず、私は約 60 日間このシステムをいじっていませんでした。
最近、新しいラップトップをセットアップしていたのですが、そのラップトップで Web ページにアクセスするとインターネットが遅いことに気付きました。実際、http
(ポート 80) サイトはまったく読み込まれず、https
他のサービスやポートは機能していました。
調べてみると、Squid プロキシ サーバーを再起動するとすべてが正常に機能し、しばらくは再び正常に機能することがわかりました。その後、しばらくすると http ウェブサイトが表示されなくなりました... プロキシ キャッシュ全体を削除してキャッシュを再設定してみましたが、squid -z
効果はありませんでした。問題は再発したようです。
ログには異常は何も記録されていません (主に TCP のヒットとミス) が、ログのサイズが 907 MB だったのは奇妙でした ( から squid ログの logrotate を有効にしているにもかかわらずsquid.conf
)。ローテーション (60 日前まで機能していた) が機能していない理由を除けば、ログには何も問題は見つかりませんでした。手動でローテーションを行ったにもかかわらず、問題が再発するため、当面は squid の使用を無効にしました (ポート 80 のファイアウォール リダイレクトを無効にすることにより)。
これは非常に奇妙ですが、どこから調べ始めたらよいかわかりません。誰かこれについて問題を抱えた人はいますか?
いくつかの更新:
破損の問題は、特定のラップトップ (内部 Wi-Fi に接続) から http Web サイトにアクセスしようとすると発生します。この Wi-Fi 経由でインターネットに接続するラップトップやモバイル デバイスは他にもあり、USB-Wi-Fi ドングルを備えたデスクトップ PC もありますが、このラップトップが Web ページにアクセスしようとすると、誰も http インターネットにアクセスできなくなります。
ファイアウォールのリダイレクト行は次のとおりです。
$IPT -t nat -A PREROUTING -p tcp -i $LOCAL_IFACE -s $LOCAL_NET --destination-port 80 -j REDIRECT --to-ports 3128 #TRANSP PROXY
動作が停止した後、Squid にまったく「触れず」、上記の行をコメントアウトしてファイアウォールを再起動すると、インターネットが再び復旧します。
もう一度コメントを解除します。インターネットは再び切断されました。
whilesquid
は「ループ内」です:sar 1 1000
戻り値:
02:56:51 AM all 4.52 0.00 1.01 0.00 0.00 94.47
02:56:52 AM all 5.00 0.00 1.00 0.00 0.00 94.00
02:56:53 AM all 5.00 0.00 1.00 2.50 0.00 91.50
02:56:54 AM all 4.50 0.00 1.50 0.00 0.00 94.00
02:56:55 AM all 4.50 0.00 1.50 0.00 0.00 94.00
02:56:56 AM all 4.52 0.00 1.01 0.00 0.00 94.47
02:56:57 AM all 4.98 0.00 1.49 0.00 0.00 93.53
squid
whileが「ループ内」でない場合は、sar
次を返します:
02:58:36 AM CPU %user %nice %system %iowait %steal %idle
02:58:37 AM all 1.01 0.00 0.50 0.00 0.00 98.49
02:58:38 AM all 2.00 0.00 0.50 2.00 0.00 95.50
02:58:39 AM all 1.00 0.00 0.50 0.00 0.00 98.50
02:58:40 AM all 2.00 0.00 0.00 0.00 0.00 98.00
02:58:41 AM all 1.50 0.00 0.00 0.00 0.00 98.50
そのため、ユーザーの CPU 使用率は少し低くなります。
これら全てが起こっている間、Squid スレッドのディスク使用量がiotop
表示されます...0.00%
さらに、: で表示される squid の最新のエントリは次のとおりtail -f access.log
です。
1389834351.849 382 192.168.18.25 TCP_MISS/200 335 POST http://serverfault.com/posts/validate-body - DIRECT/198.252.206.16 application/json
1389834353.197 388 192.168.18.25 TCP_MISS/200 335 POST http://serverfault.com/posts/validate-body - DIRECT/198.252.206.16 application/json
1389834372.791 453 192.168.18.25 TCP_MISS/200 349 POST http://serverfault.com/posts/566948/editor-heartbeat/edit - DIRECT/198.252.206.16 application/json
上記は、squid が「ループ外」の状態でコピーされます。また、squid がファイアウォール経由で有効になっている状態でもコピーされます。
1389834586.593 364 192.168.18.25 TCP_MISS/302 1538 GET http://log.dmtry.com/redir/140952/0/3316/100544580/55099663/210599/0/0/0/1.ver? - DIRECT/54.243.105.45 -
1389834586.634 167 192.168.18.25 TCP_MISS/200 38559 GET http://public.oneallcdn.com/img/api/socialize/providers/logo/sprite_35_35.png - DIRECT/93.184.220.20 image/png
1389834586.639 410 192.168.18.25 TCP_MISS/302 1563 GET http://log.dmtry.com/redir/560228/0/3316/100544579/55097980/858012/0/0/0/1.ver? - DIRECT/54.243.105.45 -
192.168.18.186
次にラップトップ(IPアドレスを持つ)から何かにアクセスしようとすると、次のメッセージが表示されますhttp://pastebin.com/FM9QLtRC
だから、前と後で何が違うのか分かりません…
さらに、インターネットがない場合、inet
ファイアウォール/ゲートウェイ サーバーのインターフェイスにある ADSL モデムの Web サイトにアクセスすることもできません。
これらがサーバー管理に関する知識のある人の役に立つことを願っています