冗長構成とは、非常時に備えた構成のことです。 通常、同一の機材を2つ用意し、 どちらかを primary 、もう一方を secondary として動作させます。 通常、通信は primary の機材を経由していますが、 primary の機材に異常があった場合は secondary が primary の役目を引き継ぎサービスを継続させます。
明らかに、この動作には primary と secondary の間で互いに状態を監視する 機能が必要です。 この監視のために ifmond という名のソフトウエアが daemon として 常に動いており、互いのネットワークインターフェイスを監視しています。
| Warning |
何をもって「異常」と判定するのかの判断は曖昧ですが、 nfgw では「対向のインターフェイスが無反応」であることを「異常」と みなすことにしています。 |
以下では、fw0 と fw1 という 2 台のホストで冗長化構成を とっているとします。 そして通常運用時には fw0 がプライマリ、fw1 がセカンダリです。 つまり通信は通常 fw0 を通っています。
The Internet | ------------ | | fw0 fw1 | | ------------ | local network (e.g. office, home) | client
例えば fw0 の内側インターフェイスのアドレスが 10.0.0.2 で fw1 が 10.0.0.3 としましょう。 ここで 10.0.0.2 か 10.0.0.3 のどちらかの インターフェイスに 10.0.0.1 という別名をつけることにします。 この仮想インターフェイス 10.0.0.1 が 内側ネットワークのデフォルトルートになります。
クライアント(client)のホストは、 デフォルトルートを fw0 でも fw1 でも 10.0.0.1 に向けて下さい。
10.0.0.1 は正常な動作をしているホストについています。 デフォルトでは fw0 も fw1 も正常ですから、 10.0.0.1 は fw0 についた仮想インターフェイスです。 ifmond が各ホストが正常かどうかを監視し、 適宜、仮想 IP アドレスの移行処理をします。
なお、この仮想インターフェイスの移動処理の際には、 ifmond からプログラム(後述)を実行することができます。 インターフェイスの設定等はこのプログラム内に記述して下さい。
my homepage is www.fml.org/home/fukachan/.
my free softwares are found at www.fml.org/software/.
fml 4.0 project homepage is www.fml.org/fml/menu.ja.html.
fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
about one floppy bsd routers, see www.bsdrouter.org/.
my laboratory will be nsrg.fml.org (under preparation).
Also, visit nuinui's world :) at www.nuinui.net.
For questions about me, e-mail <fukachan@fml.org>.
Copyright (C) 1993-2008 Ken'ichi Fukamachi
Powered by NetBSD.