[Ultramonkey-l7-develop 371] Re: 仮想サーバに INADDR_ANY を指定できないようになっている理由

アーカイブの一覧に戻る

森下徹 moris****@nttco*****
2009年 5月 15日 (金) 10:13:03 JST


立石様

森下です。お疲れ様です。

以下、インラインで。

TATEISHI Katsuyuki さんは書きました:
> 立石です。
> 
> 五月雨ですみません。
> 
> 現在の l7vsadm では 仮想サーバの IP アドレスに 0.0.0.0 を指
> 定できないようになっていますが、
> ============================================================
> [root @ charlie ~]# l7vsadm -A -t 0.0.0.0:443 -m sslid
> PARSE ERROR : You can't specify INADDR_ANY for endpoint.
> Usage:
> (以下略)
> ============================================================
> これにはどのような意図があるのでしょうか?
> ご存知の方がいたら教えていただけますか?

まず、この処理に相当するコードですが、0.xのバージョン
あたりでもすでに入っていることから、L4から受け継がれている
ものではないかと思います。

コメントを見ると
We always use the first entry, because we can't distinguish
which entry you want to specify if we have multiple entries
となっているので、明示的でないIPアドレスを
指定させたくないという考えのように思います。

> ざっとコードを見たところ、リアルサーバに 0.0.0.0 を指定させな
> いためのコードを -A のときも通ってしまっているのかなぁと予想
> してます。
> # "endpoint" というエラーメッセージからもそんな気がします

この部分の処理は、指定されたendopointをチェックしている部分で
VirtualService、RealServerのどちらのチェックにも使用しています。
# 古いコードでメッセージは、You can't specify INADDR_ANY
# for virtual service だったのですが、l7vsadmの処理見直し時
# に、どちらのチェックでも使っているので "endpoint"に
# 変えています。

> 現在 Heartbeat で Act-Stb の クラスタ構成をとったときに仮想サー
> バの IP アドレスとして 0.0.0.0 を指定できないので、両系で
> l7directord をあげておくことはできませんが、仮想サーバとして
> 0.0.0.0 待ち受けが可能になれば、Heartbeat で管理するのは仮想
> IP アドレスの付け替えだけにできてうれしいと思うのですが・・・
> # どっちみちHBでプロセス監視が必要というのは置いておくとして

VirtualServiceを0.0.0.0として運用するという方法も「あり」
なのですね。。。

> --
> TATEISHI Katsuyuki <tatei****@oss*****>
> 
> _______________________________________________
> Ultramonkey-l7-develop mailing list
> Ultra****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/ultramonkey-l7-develop
> 
> 
> 




Ultramonkey-l7-develop メーリングリストの案内
アーカイブの一覧に戻る