ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

ネットワークエンジニアコミュのarpテーブル更新についての質問

  • mixiチェック
  • このエントリーをはてなブックマークに追加
   Internet
    |
    F/W
    |
    |
 ┌──■──┐
 |     |
 |     |
.1 .33   .1 .33
MAC:aaa   MAC:bbb
sv#1     sv#2


sv#1:正系サーバ(active)
sv#2:副系サーバ(standby)
(sv#1とsv#2は同一構成)
サーバ上で2つの異なるサービスを提供している。
システムAのIPアドレス:x.x.x.1
システムBのIPアドレス:x.x.x.33
(同一物理NIC)
OS:RHEL
■:切替器(BlackBox)


上記のような構成で、物理的に正/副サーバの切替えを実施した際、切替え後のシステムAへのアクセスは正常、システムBへのアクセスが不可になりました。
原因としては、切替え後のF/W上のarpテーブルが、『.1:aaa、.33:aaa』→『.1:bbb、.33:aaa』となっているためですが、.33の更新がされない仕組みが今一理解できていません。
NICの再起動をすることにより回復し、そこは納得できるのですが…

どなたか、私の変な思い込みを解決できる説明をして下さる親切なひといませんか?

コメント(8)

StandbyからActiveに切り替わったとして、sv#2は自分からは「xx.1」「xx.33」のパケットを何か出すようにしていますか? 

切り替えた後にsv#2からの何かしらのパケット(Gratious ARPとか)がF/Wに到達すればARP Tableも更新しますが、その時に使っているIPアドレスが「xx.1」だけだとすれば、「.1:bbb、.33:aaa」になった理由は説明がつきますね。

「システムB(.33)」もGratious ARPを投げさせるような設計に変更できるようであれば試してみてはどうでしょう?


ちなみに今の全部推測ですので、WiresharkとかでCaptureしてみると何が原因か?というのはわかると思いますよ〜。
>1
>2

早速のご回答ありがとうございます。

情報不足で申し訳ありません。補足します。
sv#2からは、システムA/Bそれぞれから「telnet google.com 80」等を行っています。

で、原因調査した担当者からの説明では、『システムBからのtelnet時に送出されるフレームにはソースのMac:bbbはセットされておらず、x.x.x.1で送られているのでテーブルの.33が更新されない』と説明されて、その時はなんとなく納得し特に突っ込まなかったのですが、後から考えるとなんとなく理解できなくて。。。
>『システムBからの・・・

における
「ソースのMac:bbbはセットされておらず」
が、「ソースにx.x.x.33がセットされておらず」
ならば、説明がつく気がしますが。

「Mac:bbbはセットされていない」フレームには
何のMACアドレスがセットされているのでしょう?
コマンドなどで送るtelnet等はコマンドオプションで明示的に指定しないかぎり、サブインターフェースのアドレスでは送出されないって事を聞いた記憶があるのですが…

そもそもの副系サーバの設定についてですが、サーバのMACアドレスを同じモノで設定してしまってはいかがでしょうか。
IPアドレスが同一なので、同時に接続できないので、弊害はないと思います。
そうすればMACテーブルとか考えなくてもよくなりますし。
>4
>「ソースのMac:bbbはセットされておらず」

読み直すと文章がおかしいですね。申し訳ありません。
『システムBからのtelnet時に送出されるフレームにはソースのx.x.x.33はセットされておらず、x.x.x.1で送られているのでテーブルの.33が更新されない』
ですね。

なぜ、「ソースが.33にならないのか」の仕組みが理解できていません。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

ネットワークエンジニア 更新情報

ネットワークエンジニアのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。