マルチホーミング
ホストやネットワークが複数の接続経路を持つ構成。インターネット接続では、複数のISPなどへ接続し、経路の選択や障害時の迂回に利用する。
イマシルちゃんの解説
お店から外へ出る道が一つしかなければ、工事で通れないときに困るよね。
別の出口も用意しておけば、通れる道を選べるようになるんだ。
ただ、出口を増やすだけでは、案内板まで自動で整うわけではないよ。
行きも帰りも迷わないように、どの道を使うかを決めておく必要があるんだ。
より深い解説
接続先を複数持つ
マルチホーミングは、複数のインタフェース、回線、上流ネットワークなどを持つことを指す。インターネットの経路制御では、一つの組織のネットワークを複数のサービスプロバイダへつなぐ構成が代表的である。
| 目的 | 内容 |
|---|---|
| 可用性の向上 | 一方の障害時に別の経路へ迂回する |
| 経路の使い分け | 相手や組織のポリシーに応じて選択する |
| 負荷の配分 | 複数経路を利用して通信を分散する |
二つの回線が同じ設備や同じ管路を通ると、同時に失われる場合がある。接続の本数だけでなく、共通の故障要因も確認する。
経路制御との関係
複数のISPと経路を交換する構成では、BGPを利用する場合がある。どの経路を受け入れ、どの経路を外へ広告するかを決める。
| 向き | 管理すること |
|---|---|
| 自組織から外向き | どの上流へ送るか |
| 外部から自組織向き | 自組織のアドレスへどの経路で到達してもらうか |
往路と復路が同じとは限らず、非対称経路になる場合もある。状態を保持するファイアウォールやアドレス変換の設計では、両方向の経路を考慮する必要がある。
束ねる技術との比較
| 技術 | 主に何を扱うか |
|---|---|
| マルチホーミング | 複数の上流や通信経路への接続 |
| リンクアグリゲーション | 複数の物理リンクを一つの論理リンクにまとめる |
| STP | LAN内のループを避けるために転送経路を制御する |
| ブリッジ | フレームを別のLAN区間へ転送する |
複数の経路を持つことと、それらを一本の論理回線として扱うことは異なる。一つの通信が、用意した全回線の合計速度になるとは限らない。
障害時の確認
| 観点 | 確認すること |
|---|---|
| 検出 | 上流の先まで到達できるかを把握できるか |
| 切替え | 経路情報が正しく変更されるか |
| 継続 | 既存の接続やセッションを維持できるか |
| 復帰 | 元の経路が戻った後の動作が安定しているか |
回線を二重化しても、障害の検出と切替えの仕組みがなければ通信は回復しない。外部へ不要な経路を流さないフィルタリングなども含めて設計する。
次に渡す相手のアドレス
インターネット側へ出る経路を選ぶ装置は、選択した次ホップへフレームを渡す必要がある。IPの宛先と、現在のリンクで使うMACアドレスは、指す範囲が異なる。
| 情報 | 通常のIP転送で表す相手 |
|---|---|
| 宛先IPアドレス | 最終的な通信相手 |
| 送出フレームの宛先MACアドレス | 同じリンク上の次ホップ |
独自の例として、出口のルータPかQを選ぶとする。アドレス変換やトンネルなどを使わない通常の中継では、IPの宛先は外部サーバのままにし、送出するフレームは選んだ出口ルータのMACアドレス宛てにする。遠隔地のサーバのMACアドレスを、そのまま手元のLANの配送先に使うわけではない。
出口の選択は、通信ごとの状態や復路も考慮する。複数回線を使うことと、最終宛先のIPアドレスを別のルータへ書き換えることを混同しない。