先日、ノートPCにCentOSを入れて有線LANと無線LANの2枚差しネットワークを設定したのだが、これを使って耐障害性を上げたいな….なんて考えたのでやってみた。
耐障害性のためにはNICをbonding設定すればいいので、ここまでは割と簡単に終了。
bondingの設定、そもそもbondingって何か、は詳しく説明してくださっているサイトが多数あるのでそちらを参考に。
さて、今回ハマったのは、bonding設定したノートPC(以下ノートサーバ)にpingを打ち続け、途中でLANケーブルを引っこ抜いてもノートPCへの通信が続くはずが、PCによってその動きが違うことが判明したこと。
というのは、こんな感じ。
- Linuxが入ったPCでpingを打ち続け、ノートサーバのLANケーブルを引っこ抜くと、一瞬通信が途絶えるが、そのまま何事もなかったようにpingのリプライが返ってくる。
_ - 同じように、Windows PCからpingを打ち続け、ノートサーバのLANケーブルを引っこ抜くと、
_
要求がタイムアウトしました。
_
になってしまう。
しかし、pingを中止し、2~3分待ってから再度pingを打つと、正常にリプライが返ってくる。
_ - Linux PCもWindows PCも、ノートサーバの有線LANが有効な時には各々のPCのARPテーブルには有線LANのMACアドレスが登録される。
_ - ノートサーバの有線LANケーブルを抜いたとき、Linux PCのARPテーブルには無線LANのARPテーブルが登録される。
_ - Windows PCの場合、pingのリプライが返ってこないときには、ARPテーブルには有線LANのMACアドレスが登録されたまま。
だが、しばらくして再度pingを打った際に正常にリプライが返ってきたときには、ARPテーブルには無線LANのMACアドレスが登録されている。
ここまでだと、Windows PCではbondingで冗長構成されたシステムは認識されないのか?と思ってしまうが、まさかそんなことはないだろう。
ここから泥沼の始まり~(ToT)/~~