10.6 拠点間接続 VPN の構築 (IP ルーティングを使用) - SoftEther VPN プロジェクト

10.6 拠点間接続 VPN の構築 (IP ルーティングを使用)

    ここでは、「ブリッジ接続」と「IP ルーティング」の両方を組み合わせて使用することにより、2 つ以上の遠隔地にあるネットワーク同士を、レイヤ 3 で接続する方法について解説します。

    10.6.1 拠点間のブリッジ接続と IP ルーティングの組み合わせ

    10.5 拠点間接続 VPN の構築 (ブリッジ接続を使用)」 で解説した方法では、複数の拠点を 1 つのレイヤ 2 (Ethernet) セグメントとして結合することにより拠点間接続 VPN を構成しています。

    この方法と、VPN Server に搭載されている「仮想レイヤ 3 スイッチ」機能の両方を組み合わせることにより、複数拠点間でレイヤ 3 (IP) ルーティングを使用した拠点間接続 VPN を構築することができます。

     

    ここで解説する方法は、通常のブリッジ接続と共に「IP ルーティング」によって IP ネットワーク間の通信を行うことにより、拠点間接続 VPN を実現する方法です。この方法を実施するためには、通常の Ethernet に関する知識に加え、IP ルータの基本的な概念や動作原理などの TCP/IP に関するより詳しい知識が必要になります。IP ルーティングに関する知識が不十分な場合は、他の TCP/IP やルーティングに関する参考書籍などを先にお読みいただくことをお勧めいたします。

    10.6.2 仮想レイヤ 3 スイッチによる IP ルーティング

    VPN Server には、同一の VPN Server 内に存在する複数の仮想 HUB 間で、IP ルーティングを行うことができる機能である「仮想レイヤ 3 スイッチ」機能が搭載されています。この機能を使用すると、大規模な拠点間接続 VPN を構築する際に、それぞれの拠点の IP ネットワークを分離した状態のままで、拠点間の通信を VPN を経由して行うことができます。

    仮想レイヤ 3 スイッチの概要と具体的な使用方法については、「3.8 仮想レイヤ 3 スイッチ」 を参照してください。

    10.6.3 IP ルーティングを使用する場合のメリットとデメリット

    10.5 拠点間接続 VPN の構築 (ブリッジ接続を使用)」 で解説したような複数の拠点をブリッジ接続のみで VPN 接続する場合と比較して、仮想レイヤ 3 スイッチ機能によって拠点間を IP ルーティングすることによって VPN 接続する方法のメリットとデメリットについて解説します。

    IP ルーティングを使用場合のメリット

    • 複数の拠点をブリッジ接続のみで VPN 接続する場合は、それぞれの拠点のネットワークが、1 つのレイヤ 2 (Ethernet) セグメントになるのに対して、仮想レイヤ 3 スイッチ機能を併用して、それぞれの拠点の LAN 同士をレイヤ 2 的には分離したまま、レイヤ 3 (IP) 的には通信することができる状態を作ることができます。
    • 特に、すでに各拠点にある程度安定して運用されているそれぞれの IP ネットワークがある場合は、それらの IP ネットワークに参加している各コンピュータや通信機器の所属する IP ネットワークを変更せずに拠点間の通信が可能になります。
    • また、各拠点のコンピュータの台数が数百台を超える場合も IP ルーティングによる拠点間の通信は有益です。単純に複数の拠点をブリッジ接続する場合、ブリッジする複数の拠点の合計のコンピュータの台数が増えると、使用しているプロトコルによってはブロードキャストパケット数が増加する可能性があります。このような場合は IP ルーティングを用いて複数の拠点間でルーティングを使用し、ブロードキャストドメインの範囲を縮小してください。

    IP ルーティングを使用する場合のデメリット

    • 仮想レイヤ 3 スイッチの設定や、IP ルーティングを用いた拠点間接続 VPN を設計および構成するためには、TCP/IP および VPN に関する、より詳しい知識が必要になります。
    • 拠点間を単純にレイヤ 2 で VPN 接続する場合と比較し、レイヤ 3 におけるルーティング処理 (IP ヘッダの書き換え処理など) が必要になるため、大量の IP パケットをバースト状に転送する場合などで、若干パフォーマンスが低下する可能性があります。
    • 各拠点のレイヤ 2 セグメントは分離されていますので、拠点間で IP 以外の通信を行うことはできません。

    10.6.4 ネットワーク構成

    ここでは、例として以下のようなネットワーク構成について解説します。

    10-6-1.png

    図10-6-1 ネットワーク構成

    上記のネットワーク例では、3 箇所の拠点を「拠点間接続 VPN」によって接続し、それぞれの拠点のコンピュータ同士が、IP ルーティングを用いた VPN によってお互いに通信できるようになっています。それぞれの拠点が、日本の「東京」、「大阪」および「筑波」の 3 箇所にあると仮定します。

    ここでは、東京拠点を「メイン拠点」とし VPN Server を設置することにします。また「サブ拠点」としては大阪拠点、および筑波拠点の 2 箇所があり、それぞれ VPN Bridge を設置することにします。

    東京拠点のプライベート IP ネットワークは 192.168.1.0/24、大阪拠点のプライベート IP ネットワークは 192.168.2.0/24、筑波拠点のプライベート IP ネットワーク 192.168.3.0/24 というように、それぞれ IP ネットワーク的には分離されている状態で、それぞれの拠点が別の拠点の IP アドレスのホストに対して通信を行おうとしたとき、自動的に VPN 経由で通信が行われるようにします。

    VPN Server 内に作成する仮想 HUB

    上記のネットワークでは、仮想レイヤ 3 スイッチは東京拠点の VPN Server 内で動作させます。東京拠点の VPN Server には、下記の 3 つの名前の仮想 HUB を作成すると良いでしょう。

    • TOKYO
      "TOKYO" 仮想 HUB は、東京拠点、つまり VPN Server のサーバーコンピュータが物理的に設置されている拠点に対して「ローカルブリッジ接続」されています。レイヤ 3 的に見ると、この仮想 HUB は IP ネットワーク 192.168.1.0/24 に属しています。
    • OSAKA
      "OSAKA" 仮想 HUB は、大阪拠点に設置した VPN Bridge が「カスケード接続」してくるための仮想 HUB です。つまりこの仮想 HUB は、大阪拠点と同一のレイヤ 2 セグメントになります。レイヤ 3 的に見ると、この仮想 HUB は IP ネットワーク 192.168.2.0/24 に属しています。
    • TSUKUBA
      "TSUKUBA" 仮想 HUB は、筑波拠点に設置した VPN Bridge が「カスケード接続」してくるための仮想 HUB です。つまりこの仮想 HUB は、筑波拠点と同一のレイヤ 2 セグメントになります。レイヤ 3 的に見ると、この仮想 HUB は IP ネットワーク 192.168.3.0/24 に属しています。

    VPN Server 内に作成する仮想レイヤ 3 スイッチ

    東京拠点の VPN Server に、上記のように 3 つの仮想 HUB を作成したら、次に 「3.8 仮想レイヤ 3 スイッチ」 を参考にしながら新しい仮想レイヤ 3 スイッチを 1 つ作成し、次にその仮想レイヤ 3 スイッチから 3 つの仮想 HUB に対して仮想インターフェイスを定義します。

    仮想レイヤ 3 スイッチは、ネットワーク上のコンピュータから見ると 1 台の IP ルータのように見えます。したがって、それぞれの仮想インターフェイスには、接続する仮想 HUB の受け持つ IP ネットワークに属する IP アドレスを 1 つ割り当てます。IP アドレスは、各仮想 HUB が直接的または間接的に接続する、既存の IP ネットワーク上に存在しないものである必要があります。たとえば、以下の表のように設定します。

    仮想 HUB 名 仮想インターフェイスの IP アドレス
    TOKYO 192.168.1.254 / 255.255.255.0
    OSAKA 192.168.2.254 / 255.255.255.0
    TSUKUBA 192.168.3.254 / 255.255.255.0

    なお、今回の例では、仮想レイヤ 3 スイッチが VPN 通信を行うすべての拠点に直接仮想インターフェイスで接続されるようなネットワークとなりますので、仮想レイヤ 3 スイッチにルーティングテーブルの設定は必要ありません。

    大阪拠点および筑波拠点の VPN Bridge の設定方法

    大阪拠点および筑波拠点に 1 台ずつ設置した VPN Bridge について、まずそれぞれの "BRIDGE" 仮想 HUB と、各拠点の物理的な LAN との間を「ローカルブリッジ接続」します。

    次に、大阪拠点の VPN Bridge は、東京拠点の VPN Server の "OSAKA" 仮想 HUBに、筑波拠点の VPN Bridge は、東京拠点の VPN Server の "TSUKUBA" 仮想 HUB にそれぞれ「カスケード接続 」します。

    これによって、3 箇所の異なる IP ネットワーク内のコンピュータ同士が、仮想レイヤ 3 スイッチを経由してルーティングしながら、VPN 接続した別の拠点に対して通信を行うことができるようになります。

    10.6.6 メイン拠点への VPN Server の設置

    まず、メイン拠点である東京に VPN Server を設置します。

    VPN Server をインストールするサーバーコンピュータは、東京拠点の社内 LAN にローカルブリッジ接続する必要があります。したがって、当然のことながら東京拠点の LAN に対して物理的に近い場所にあり、直接 LAN ケーブルなどを用いて東京拠点のレイヤ 2 セグメントに接続しなければなりません。

    また、VPN Server に対してインターネット側の VPN Bridge から VPN 接続する必要があるため、その VPN Server はグローバル IP アドレスを持っているか、またはプライベート IP アドレスを持っていても、NAT、ファイアウォール、またはリバースプロキシを経由してインターネット側からの TCP/IP 通信の到達性を持っている必要があります (「10.2.1 VPN Server の設置場所」 を参照)。これらのことについて不明な場合は、ネットワーク管理者に相談してください。

    VPN Server をインストールしたら、「10.6.4 ネットワーク構成」 の方法に従って "TOKYO""OSAKA" および "TSUKUBA" の 3 つの仮想 HUB を作成し、"TOKYO" 仮想 HUB を東京拠点の LAN とローカルブリッジし、また仮想レイヤ 3 スイッチの設定も完了させてください。

    10.6.7 他の拠点への VPN Bridge の設置

    サブ拠点である大阪拠点と筑波拠点に、それぞれ VPN Bridge を 1 台ずつインストールし、各拠点の接続したい LAN を「ローカルブリッジ接続 」してから、東京拠点の VPN Server の "OSAKA" および "TSUKUBA" 仮想 HUB に対して「カスケード接続」してください。

    10.6.8 拠点間の VPN 接続

    「10.5 拠点間接続 VPN の構築 (ブリッジ接続を使用)」 のように、各拠点をレイヤ 2 でブリッジ接続した場合と比較して、IP ルーティングによって各拠点間の通信を実現するような VPN 接続方法を使用した場合は、何もしなくても各拠点のコンピュータ間が自動的に通信できるようになる訳ではありません。

    このネットワーク構成例では、各拠点のコンピュータが他の拠点に対して IP で通信を行おうとした際には仮想レイヤ 3 スイッチを経由して IP ルーティングを行ってもらうことによって他の拠点に対する IP ルーティングによる通信が可能なように、各拠点の機器の「ルーティングテーブル」を適切に設定する必要があります。

    各拠点の機器のルーティングテーブルの調整方法は、仮想レイヤ 3 スイッチや仮想 HUB を、通常の物理的なレイヤ 3 スイッチやルータやスイッチング HUB と同じようなものと考えると簡単です。このネットワーク構成例での設定方法として、簡単な例としては以下のようなものがあります。

    • 東京支店の各コンピュータがデフォルトゲートウェイとして使用しているルータに、静的ルーティングテーブルとして、192.168.2.0/24 (大阪) 行きのパケットと 192.168.3.0/24 (筑波) 行きのパケットは、192.168.1.254 をゲートウェイとして使用するように 2 つのルーティングテーブルエントリを追加します。
    • 大阪支店の各コンピュータがデフォルトゲートウェイとして使用しているルータに、静的ルーティングテーブルとして、192.168.1.0/24 (東京) 行きのパケットと 192.168.3.0/24 (筑波) 行きのパケットは、192.168.2.254 をゲートウェイとして使用するように 2 つのルーティングテーブルエントリを追加します。
    • 筑波支店の各コンピュータがデフォルトゲートウェイとして使用しているルータに、静的ルーティングテーブルとして、192.168.1.0/24 (東京) 行きのパケットと 192.168.2.0/24 (大阪) 行きのパケットは、192.168.3.254 をゲートウェイとして使用するように 2 つのルーティングテーブルエントリを追加します。

    上記のような設定を行うと、たとえば大阪支店のコンピュータ (例: 192.168.2.3) が、筑波支店のコンピュータ (例: 192.168.3.5) に対して IP パケットを送信しようとすると、192.168.2.3 のコンピュータはそのネットワークのデフォルトゲートウェイに対して IP パケットを送信し、デフォルトゲートウェイはルーティングテーブルに従って 192.168.2.254 (東京の VPN Server 内で動作している仮想レイヤ 3 スイッチの仮想インターフェイス) に対して IP パケットを転送し、仮想レイヤ 3 スイッチは 192.168.3.254 の仮想インターフェイスを用いてそのパケットを TSUKUBA 仮想 HUB に対して送出し、それが筑波拠点の 192.168.3.5 の目的のコンピュータに到達するということになり、IP ルーティングを使用して、拠点間 VPN 接続が行われることになります。

    なお、各拠点でデフォルトゲートウェイとして使用されているルータに対して、静的ルーティングテーブルを追加することができないような場合は、各コンピュータに 「route」コマンドなどで静的ルーティングテーブルを追加することによって代用することも可能です。ただし、この方法では VPN 通信を行うすべてのコンピュータのルーティングテーブルを編集する必要が生じるため、管理の手間を考えると、通常は推奨されません。

    10.6.9 補足事項

    仮想レイヤ 3 スイッチに対してルーティングテーブルを追加することによって、仮想レイヤ 3 スイッチが、直接仮想インターフェイスによって接続している仮想 HUB の IP ネットワークに対してだけではなく、さらに先の IP ネットワークに対する IP パケットの転送も行うことができます。詳しくは、「3.8.5 ルーティングテーブルの編集」 を参照してください。