<%@page import="java.sql.*"%> <%@page import="atmarkit.MyDBAccess"%> <%@page contentType="text/html;charset=EUC-JP"%> マルチホームをうまく設定する方法
PC

マルチホームをうまく設定する方法

暇に飽かせてドメイン取得とやらをやってしまった。ちなみに、つい先日から固定IPアドレスも取得している。

というわけで、今日からここのサイトのURLは、http://dead-pigeon.net/となります。しばらくはdead-pigeon.plala.jpでもアクセス可能にしておきますが、ISPを2社契約するのは無駄なので、今年中をめどにplalaのADSLは解約します。いきなり消えると思うので注意してください。

ところで、実はasahiネットのFlet's ADSLセットを契約し、固定IPアドレスを取得したのは1ヶ月近く前なのだが、実際に使用するまでかなり時間がかかってしまった。というのも、2つのISPに同時につないだときにうまくルーティングする方法、いわゆるマルチホームをうまく設定する方法がよくわからなかったからだ。やっとわかったので、今度まとめてみようと思うが、もしかしたら俺と同じところではまっている人がいるかもしれないので、一つヒントを。

片方のISPをデフォルトルートにして、もう片方は、そのインターフェイスから外部のネットワークに出ようとするパケットをそのISPのゲートウェイにフォワードすればよい。
具体的には、ISP1: 192.168.0.1 gatewey 192.168.10.1、ISP2: 192.168.1.1 gateway 192.168.11.1、内部ネットワークを192.168.100.0/24とすると、

1, defaultrouteを192.168.10.1とする。
2, ipfwを用いて(FreeBSDの場合)、ISP2のIPアドレスから外部ネットワークへのアクセスは、ISP2のゲートウェイへフォワードする。
# ipfw 100 add fwd 192.168.11.1 ip from 192.168.1.1 to not 192.168.100.0/24 out

この2の時に注意する点は、ipfwのルールの前の方にフォワードのルールを入れておかないと、フォワードの前に当てはまるルールがあればそれが採用されてしまってフォワードが有効にならないというところだ。俺はそれではまってしまって、「設定したのにうまくパケットが流れないよーん」なんてことになり、tcpdumpしたり外部からポートスキャンをかけてみたりとずいぶん無駄な時間を費やしてしまった。