2008年3月30日

[linux-users:107996] Re: [linux-users:107995] Re: ifconfigコマンドについて

金子です。

おもしろいので実験してみました。

環境は、XenのDomain-Uで、OSはCentOS4.6です。

3つのサーバ(A,B,C)は、それぞれeth0にIPアドレスをもち
eth1に下記のIPアドレスを割り当てます。


A 192.168.1.10/24(eth1)
B 192.168.1.20/24(eth1)
C 192.168.1.30/24(eth1)

A で、ifdown eth1 down しても、たしかに、
Aからは 192.168.1.10 にPINGが通りました。
しかし、B,Cからは通らなくなりました。

さらに、その状態から、Bに仮想IPアドレスとして
192.168.1.10を付けてみました。

A 192.168.1.10/24(eth1)停止したつもり
B 192.168.1.20/24(eth1)
192.168.1.10/24(eth1:0)
C 192.168.1.30/24(eth1)

B,Cからは、Bに対してPINGが通るようになりましたが、
Aは192.168.1.10にPINGは通るものの、
BでtcpdumpしてもBにパケットが届いている形跡がありません。
Aはローカル内で自己完結しているみたいです。

さらにさらに、Bの192.168.1.10をAのeth0にDNATしてみます。

A 192.168.1.10/24(eth1)停止したつもり
B 192.168.1.20/24(eth1)
192.168.1.10/24(eth1:0) -> Aのeth0にDNAT
C 192.168.1.30/24(eth1)

すると、C から 192.168.1.10 のPINGは
Aまでちゃんと到達して通ります。
Aで動いているApacheなどのサービスにも
Cから192.168.1.10で利用可能です。
この段階でも、Aは相変わらず自己完結で192.168.1.10に
PINGが通ります。

Aで、ifdown eth1 すると、Aから192.168.1.10に
PINGは通らなくなりました。
B,CからはもちろんPINGが通ります。

以上のことから推測すると…、

> 原因がわからず困っていましたが、問題のサーバでLANケーブルを抜いて
> スタンドアローンの状態にした時に、pingを自分の停止しているはずの
> eth1(eth1 ***.***.***.10/24)に飛ばしてみたらpingが帰ってきました。

> ですのでifcofnig eth1 downのコマンドできちんと停止していなかったと
> 思ったしだいです。

たしかに、内部からはそんな感じでした。そういうもんでしょうか?
でも外部からは停止してるように見えるみたいです。
また、私のテストに当てはめると、「問題のサーバ」で
止めたはずのeth1のIPアドレスに対して「問題のサーバ」自身から
PINGが通ったとしても、router2経由で「問題のサーバ」に
接続することはできるような気もします。
「まったくの外部」からは接続できたんですものね。
なんで、Server1,Server2からは接続できなかったんだろう?
あ、私のテストでは、Windows Serverは試せませんでしたが。

以上、ご参考になれば。
(あー、おもしろかった)


投稿者 xml-rpc : 2008年3月30日 19:34
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/71606
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。