デフォルトゲートウェイの冗長化

他のネットワークへパケットを送信するときには、まず、デフォルトゲートウェイへと転送します。もし、デフォルトゲートウェイとなるルータやレイヤ3スイッチに障害が発生すると、他のネットワークへの通信ができなくなってしまいます。そこで、デフォルトゲートウェイとなるルータやレイヤ3スイッチの冗長化が必要です。

特にサーバにとってのデフォルトゲートウェイの冗長化はとても重要です。多くのクライアントにサービスを提供するサーバのデフォルトゲートウェイに障害が発生すると、その影響がとても大きくなるからです。

単純にルータ/レイヤ3スイッチを追加するだけではダメ

ただ、単純にデフォルトゲートウェイとして複数のルータやレイヤ3スイッチをネットワーク上に接続すればよいというわけではありません。デフォルトゲートウェイの設定は、デフォルトルートをスタティックルートとして設定しているからです。スタティックルートの設定は、ネットワークの構成の変化に応じて自動的に書き換わることがありません。そのため、デフォルトゲートウェイとして設定したルータに障害が発生しても、PCやサーバ側のデフォルトゲートウェイの設定は自動的に書き換わりません。その結果として、いつまでもダウンしたルータへとパケットを転送してしまうことになります。

以下の図のネットワーク構成を例に取り、デフォルトゲートウェイの冗長化について考えます。PCと同一ネットワーク上にデフォルトゲートウェイを冗長化するためR1とR2を接続しています。

デフォルトゲートウェイの冗長化 その1
図 デフォルトゲートウェイの冗長化 その1

PCのデフォルトゲートウェイのIPアドレスとして、R1のIPアドレス192.168.1.1を設定しています。PCから他のネットワークへパケットを送信するときは、R1へと転送し、R1がルーティングします。

デフォルトゲートウェイの冗長化 その2
図 デフォルトゲートウェイの冗長化 その2

そして、R1 Fa0/0に何らかの障害が発生したとします。ところが、PCのデフォルトゲートウェイの設定はスタティックルートの設定と同じです。PCはR1に到達できなくなったことはわかりませんし、デフォルトゲートウェイの設定が自動的にR2に変わるわけでもありません。PCは他のネットワーク宛てのパケットは、ずっとR1へと転送しようとしてしまい、他のネットワークとの通信はできなくなってしまいます。

デフォルトゲートウェイの冗長化 その3
図 デフォルトゲートウェイの冗長化 その3

PCが冗長化したR2を利用できるようにするためには、PCのデフォルトゲートウェイの設定をやり直して、R2の192.168.1.2のIPアドレスを指定する必要があります。せっかく、デフォルトゲートウェイを冗長化したのですが、その切り替えは各PC側で再度デフォルトゲートウェイの設定をやり直すというのでは、運用面の負荷が大きく、冗長化したメリットがあまり感じられなくなってしまいます。

デフォルトゲートの冗長化 その4
図 デフォルトゲートの冗長化 その4

デフォルトゲートウェイの冗長化プロトコル(FHRP : First Hop Redundancy Protocol)

そこで、デフォルトゲートウェイの冗長化を行うときには、単に複数のルータを準備するだけではなく、さらに以下のようなデフォルトゲートウェイ冗長化のプロトコルを利用することがポイントです。

  • HSRP(Hot Standby Router Protocol)
  • VRRP(Virtual Router Redundancy Protocol)
  • GLBP(Gateway Load Balancing Protocol)

これらのデフォルトゲートウェイ冗長化プロトコルはまとめてFHRP(First Hop Redundancy Protocol)とも呼びます。First HopとはPCやサーバから見て、最初のルータ、つまりデフォルトゲートウェイを意味します。

これらのFHRPの仕組みの基本的なコンセプトはPCやサーバにとって複数のルータを仮想的に1つであるかのように見せることにあります。デフォルトゲートウェイとなる複数のルータをグループ化して、仮想的に1つの仮想ルータを構成します。そして、PCやサーバのデフォルトゲートウェイのIPアドレスとして、仮想ルータのIPアドレスを設定します。障害発生時の切り替えは、ルータ間で制御します。PCやサーバは、物理的なルータの障害を意識することなく継続して他のネットワーク宛てのパケットを転送することができます。

FHRPによるデフォルトゲートウェイ冗長化の概要
図 FHRPによるデフォルトゲートウェイ冗長化の概要

なお、「仮想ルータ」としていますが、複数のルータそのものをグループ化しているわけではありません。デフォルトゲートウェイとして動作するインタフェースをグループ化して、「仮想ルータ」としているだけです。

冗長化プロトコルにはさまざまなものがあります。それぞれの冗長化プロトコルの対象とする範囲を明確にしておくことが重要です。

関連記事

HSRPについては、以下の記事をご覧ください。

VRRPについては、以下の記事をご覧ください。

GLBPについては、以下の記事をご覧ください。

IPルーティングのキホン