前の記事では、 ファイアウォールを使ってネットワーク境界の通信を制御する仕組み を学びました。
しかし、FirewallやRouter、Switchなどのネットワーク機器が 1台しか存在しない場合、その機器が故障するとどうなるでしょうか。
PCはInternetへ通信できるでしょうか?
この構成では、通信経路上のどこか1台が故障すると 通信できなくなる可能性があります。
そこで重要になるのが、 ネットワークの冗長化です。
ネットワーク冗長化を単に 「機器を2台にすること」と覚えるのではなく、 障害が発生しても別の機器・回線・経路へ切り替えて 通信を継続できるように設計すること として理解することを目指します。
ネットワーク冗長化とは?
ネットワーク冗長化とは、 Router・Switch・Firewall・回線などを複数用意して、 一部に障害が発生しても通信を継続できるようにする設計 です。
この障害時の切り替えを フェイルオーバー(Failover) と呼びます。
SPOF(単一障害点)とは?
冗長化を理解するうえで非常に重要なのが、 SPOFという考え方です。
そこが故障するとシステムやネットワーク全体が 利用できなくなる箇所。
日本語では 単一障害点と呼ばれます。
この構成ではFirewallが1台しかありません。
そのためFW1が故障すると、 内部NetworkとInternet間の通信がすべて停止します。
「どこか1か所を故障させたとき、 通信全体が止まらないか?」と考えると、 単一障害点を見つけやすくなります。
ネットワークでは何を冗長化する?
冗長化の対象はRouterやSwitchだけではありません。
Router・Switch・Firewallなどを 複数台用意します。
LAN Cableや光回線などの 接続経路を複数用意します。
Routingによって複数の Packet転送経路を用意します。
Internet回線や拠点間回線を 複数用意します。
機器を2台にするだけでは不十分
初学者が特に注意したいポイントです。
たとえばSwitchを2台用意したとします。
Switchは2台ありますが、 その先のRouterが1台しかありません。
この場合、 Router1がSPOFとして残っています。
単一構成と冗長構成を比較しよう
途中の機器やLinkが故障すると 通信できなくなる可能性があります。
Main経路が故障しても Backup経路を利用できます。
Active / Standbyとは?
FirewallやRouterなどの冗長化でよく使われる考え方が Active / Standbyです。
通常時はActive側が通信を処理し、 Standby側は待機します。
Active側に障害が発生すると、 Standby側が役割を引き継ぎます。
Active / Activeとは?
もう1つ代表的な構成が Active / Activeです。
Active / Activeでは、 複数の機器が通常時から通信を処理します。
製品や設計によって冗長化方式は異なります。 中級ではまず Active / StandbyとActive / Activeの基本的な違いを 理解しておけば十分です。
デフォルトゲートウェイも冗長化できる
PCが別Networkへ通信するとき、 デフォルトゲートウェイへPacketを送信します。
しかしGatewayとなるRouterが1台しかなければ、 Router故障時に外部Networkへ通信できません。
192.168.1.1
このような問題を解決するため、 複数Routerで 仮想的な1つのDefault Gateway を提供する仕組みがあります。
たとえばPCには 192.168.1.1 という仮想IP AddressをDefault Gatewayとして設定します。
Router1が故障してRouter2へ切り替わっても、 PC側のDefault Gateway設定を変更する必要はありません。
Routingでも障害時に別経路へ切り替えられる
以前の記事で学習した 動的Routingも、 Network冗長化に重要な役割を持ちます。
Main経路が利用できなくなった場合、 Routing Protocolによって 別の経路へ切り替えられる場合があります。
物理的にBackup Linkを用意しても、 Packetがその経路を利用できなければ意味がありません。 Routing設計まで含めて考える必要があります。
ここで実際に試してみよう:ネットワーク障害シミュレーター
ここまでの内容を使って、 単一構成と冗長構成で障害を発生させた場合の違い を確認してみましょう。
Network Redundancy Simulator
✓ 通信可能
現在はすべての機器が正常に動作しています。
理解度チェック:どこがSPOF?
次の構成を確認してください。
Switchは2台ありますが、 Routerは1台しかありません。 SPOFはどこでしょうか?
「その機器1台が故障しただけで通信全体が止まるか?」を考えてみましょう。
冗長化していても障害は発生する
Networkを冗長化すれば、 1台の機器が故障しても通信を継続できる可能性が高くなります。
しかし、冗長化しているからといって 障害そのものが発生しなくなるわけではありません。
実際の運用では、 「通信できない」という現象が発生したときに どこで通信が止まっているのか を調べる必要があります。
そこで次に学習するのが、 pingとtracerouteを使った障害切り分け です。
確認問題:ネットワーク冗長化を理解できたか確認しよう
SPOFの説明として正しいものはどれですか?
SPOFはSingle Point of Failureの略で、 そこが故障するとSystemやNetwork全体が 利用できなくなる箇所を意味します。
Active / Standby構成の説明として適切なものはどれですか?
Active側に障害が発生した場合、 Standby側へ役割を切り替えるのが 基本的なActive / Standby構成です。
冗長化設計で重要な考え方はどれですか?
一部の機器だけを2台にしても、 他の機器やLinkが1つしかなければSPOFが残ります。 End-to-Endで通信経路を見ることが重要です。
3問に挑戦してみましょう。
まとめ
Network冗長化とは 一部に障害が発生しても通信を継続できるようにする設計 である
SPOFとは そこが故障すると全体へ影響する単一障害点 である
冗長化では機器だけでなく Link・経路・WAN回線なども確認 する
Active / Standbyでは Active障害時にStandbyへFailover する
冗長化では End-to-EndでSPOFが残っていないか確認する ことが重要
次は「ping・tracerouteを使った障害切り分け」を学びましょう
ここまでで、 障害が発生してもNetworkを継続させるための 冗長化の基本を学びました。
しかし実際の運用では、 「通信できない」という問題が発生したときに どこまで通信できて、どこから先で止まっているのか を調査する必要があります。
次はNetwork障害切り分けの基本となる pingとtracerouteを使って、 通信障害の発生箇所を絞り込む方法を学習します。
ping・tracerouteを使った障害切り分け →
