トラブル中

これが見えている人にはまるっきり関係ない話なんだが…

UCOMから回線を切り替えるという話は前に書いたのだけど、それを昨夜実行した。そうしたら、一部プロバイダからうちのサーバがアクセス出来なくなってしまった。

最初はしょうもないDNSの設定ミスとかもあったのだが、そういったのを直して最後に残ったのが、この原因不明の問題。

今のネットワーク構成は、ルータ兼ロードバランサがあり、そこに4つNICが差さっている。eth0がグローバルセグメント、eth1が常用のLANセグメント、eth2がロードバランサのセグメント、eth3がPPPoEだ。ちょっと順番がおかしいけど、これは元々UCOMはPPPoEみたいなものが不要だったから。LVSとmod_proxy_balancerとを使って、2系統のサーバの負荷分散をしている。元々はmod_proxy_balancerだけだったのだけど、トラフィックの様子等から今の構成に。まぁこれは絶対的なものではなくて様子を見ながらこの先を考えて行こうと思っている。LVSの方が軽いという話もあるのだが、mod_proxy_balancerはL7だということと本来の串の働きもあって、それはそれで都合がいいとも思うので、長く運用してから結論を出したいと思う。

mod_proxy_balancerの方は特に問題なく動いている。問題はLVSの方。一部プロバイダからのアクセスが出来なくなっている。

元の構成と一番大きな違いは、PPPoEもさせることにしたことなので、その辺に問題があるか調べるのだが、特に問題はなさそう。MTUが1454byteだということに留意しておけば、問題はない。ちなみに、内部から外に出て行く時には特に問題らしい問題はない。まぁ復旧に手いっぱいだったので、あちこちネットを見て歩いてるわけじゃないが。いくつかのRSS feedに失敗しているようだけど、これがこちらの問題かどうかはわからない。「いくつか」程度ならいつものことだし。

routingを見る限り、特に問題はない。見ることの出来ないプロバイダの下からtracerouteを入れても、特に問題のない結果を返す。って、「見ることの出来ないプロバイダ」にUCOMが含まれてるのは、いいのか悪いのか… まぁまだUCOMの契約は解除してないので、手元でテスト出来るのは、なかなかよろし… くない。

mixiでいろいろ聞いてみたら、現象は様々で「見えない」ということは同じなのだけど、TCPのコネクションが確立しないところもあれば、データ転送中にコケてそれっきりになるところもある。

外部にも内部にも、特に変なフィルタは入っていない。間違って入っているというような様子もない。

LVSの代わりにiptablesで固定的にforward設定しても、同じ現象が起きる。webだけじゃなくて、sshでも同じような現象が起きるのだが、一度ゲートウェイのホストにsshをしてからなら、何の問題もなく動く。というようにいろいろテストしてみると、どうも

カーネルのパケット振り分け

のところがおかしくなっているのじゃないかと思う。ただ、起きている現象がマチマチでもあるので、何か根本的におかしなことをしているのかも知れない。だいたい、カーネルのバグの類なら、もっと世間に情報いっぱいありそうなものだ。

いろんなものが入っているネットワークなので、「見えない人は諦めなさい」ってわけにも行かないしなぁ。とりあえず半分くらいは動いているので、今夜は寝ることにしよう。