[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:24121] Re: potato で IP Masquerade の環境を構築したい



佐野@浜松です。ちょっと補足。

> 最初に ipchains -F していれば関係無いですね。

これはこれで間違いないのですが、

> > そのままです。 potato で /etc/init.d/networking と /etc/network/ 以下の
> > 設定ファイル群の組み合わせになったのは、ifup <interface> と ifdown <iface>
> > でネットワークインターフェイスをそれぞれ簡単に起動したり止めたりできる
> > ようになったというメリットがありますが (設定をいろいろ変更して試したり
> > するには実に便利な仕様) up のほうだけに ipchains -A を設定していると、
> >  ifup と ifdown を繰り返して調整しているとどんどん以前の設定が残って
> > その上に積み重なっていきます。何度か ifup / ifdown を繰り返してから
> >  ipchains でチェインを表示させてみるとわかるでしょう。

これについてもうちょっと追加すると、ifup / ifdown でインターフェイス毎に
起動、停止できるということは、それぞれのインターフェイスが必要とする
チェインを個別に pre-up, up, down, post-down で設定することで、他の
インターフェイスに影響を与えることなく起動と停止が可能、ということが
あると思うのです。

だから、複数のインターフェイスがある環境で ipchains -F するというのは
他のインターフェイスのための設定を無効にしてしまうという副作用がある
ため、自分ではそれを使うことを考えつきませんでした。

たしかに、環境によってはこの副作用が問題にならない場合もあるでしょうね。

あと、"up" はインターフェイスが起動した後に実行されるコマンドなので、
 IP Masq の場合は "pre-up" で実行したほうがいいんじゃないでしょうか。
チェインが有効になるまでの間は (ほんの短い時間ですが) そのままルーティング
されてしまうことになりますし、途中で何かの原因でコマンドがエラーになっても
インターフェイスは起動したままです。

 "pre-up" ならコマンドがエラーになるとインターフェイスは起動されませんから
早目に異常に気がつくでしょうし、不完全なチェイン設定のまま運用してしまうと
いう危険性を避けられます。

私なら、pre-up でチェイン追加、 post-down でチェイン削除の設定をします。

なお ipchains については JF にある ipchains-mini-HOWTO (おおつかさん著)
 <http://www.linux.or.jp/JF/JFdocs/ipchains-mini-HOWTO.html> と、
その前提として Linux IP Masquerade mini HOWTO (水原さん訳)
 <http://www.linux.or.jp/JF/JFdocs/IP-Masquerade.html> が
参考になるでしょう。

-- 
     # (わたしのおうちは浜松市、「夜のお菓子」で有名さ。)
    <kgh12351@xxxxxxxxxxx> : Taketoshi Sano (佐野 武俊)