トップ 製品・サービス 導入事例 パートナー ダウンロード サポート 報道発表 企業情報 お問い合わせ
トップページ PacketiX VPN 2.0 Web サイト 製品概要 VPN 通信の詳細Select Language:

 

VPN 通信の詳細

ここでは、PacketiX VPN を用いた VPN 通信における各種事項の基本概念を紹介し、PacketiX VPN による VPN を構築する際に必要となるいくつかの重要な知識について解説します。

 

VPN セッションについて

PacketiX VPN では、VPN 接続を受け付ける VPN Server に対して、VPN 接続元のコンピュータから VPN 接続を行い、VPN 通信を開始します。これにより確立された VPN 通信の単位を「VPN セッション」と呼びます。

「1.4.2 仮想 HUB」 で PacketiX VPN は通常の Ethernet スイッチング HUB を仮想化すると共に、通じ様のスイッチング HUB における物理的な接続ポートと同様に VPN 接続元からの接続を受け付けることができるという説明を行いました。

物理的な LAN カードやスイッチング HUB 同士は LAN ケーブルによって接続されますが、PacketiX VPN の場合は仮想 HUB に別のコンピュータからの仮想 LAN カードや仮想 HUB が接続する際には、通信内容はトンネリングされ TCP/IP ベースの「PacketiX VPN プロトコル」として物理的なネットワーク上を流れます。したがって、この PacketiX VPN プロトコルの接続の 1 つ 1 つが、物理的な Ethernet における LAN ケーブルと同等の性質を持ち、Ethernet における接続単位であると表現することが可能です。

PacketiX VPN では、VPN Client から VPN Server に VPN 接続を行うときや、仮想 HUB 間でカスケード接続を行うときなど、VPN 通信のための伝送路を確立してその中でカプセル化された Ethernet フレームを伝送するような場合に、VPN 接続元と VPN Server との間で VPN セッションを必ず確立します。また、VPN セッションには他にも実際には物理的に存在しないが、ソフトウェア的に仮想 HUB に接続していることになっている仮想のホストやルータ、DHCP サーバーなどについても内部的に生成されています。

VPN セッションについては、この章の後述の部分および 「3.4.5 セッション管理」 などをお読みください。

仮想 HUB から見た各 VPN セッションの種類一覧

この後でも解説しますが、PacketiX VPN 2.0 におけるセッションの種類には下記の 7 種類があります。それぞれのセッションについては、一部特殊な取り扱いを行う以外は、仮想 HUB はすべて同じような仕組みで取り扱います。

分類 セッション名 生成者
通常のセッション クライアントモードセッション VPN Client からの通常の VPN 接続
ブリッジ / ルータモードセッション VPN Client からの通常の VPN 接続
VPN Server からのカスケード接続
VPN Bridge からのカスケード接続
モニタリングモードセッション VPN Client からの通常の VPN 接続
特殊なセッション ローカルブリッジセッション VPN Server 内のローカルブリッジ機能
カスケード接続セッション VPN Server 内のカスケード接続機能
(カスケード接続を行う側に生成される)
SecureNAT セッション VPN Server / VPN Bridge 内の
SecureNAT 機能
仮想レイヤ 3 スイッチセッション VPN Server 内の仮想レイヤ 3スイッチ機能

 

VPN Server による接続の受け付け

PacketiX VPN Server は、別のコンピュータ上で動作している PacketiX VPN Client、PacketiX VPN Server および PacketiX VPN Bridge からの VPN 接続セッションを受け付けることができる唯一のソフトウェアです。

PacketiX VPN Server は VPN 接続元のコンピュータからの VPN 接続を受け付けるためのポート番号として、複数の TCP/IP ポートを開いた状態で接続を待機しています。この際に使用するポート番号の一覧は、VPN Server の管理者が自由に設定したり変更したりすることができます。

このように、他のコンピュータからの VPN 接続を待機するために開かれている TCP/IP ポート番号を「リスナーポート」と呼びます。リスナーポートには、デフォルトでは下記の 3 つの TCP/IP ポートが割り当てられています。

  • 8888 番ポート
    (このポート番号は PacketiX VPN が独自に使用しており、覚えやすいように 8888 という数字になっています)
  • 443 番ポート
    (このポート番号は HTTPS プロトコルと同一のポート番号であり、VPN セッションのための TCP/IP コネクションを HTTPS プロトコルとして通信させているように中継機器に認識させたい場合に便利です。)
  • 992 番ポート
    (このポート番号は TELNETS プロトコルという現在はほとんど使用されていないプロトコルと同一のポート番号であり、VPN セッションのための TCP/IP コネクションを TELNETS プロトコルとして通信させているように中継機器に認識させたい場合に便利です。)

PacketiX VPN Server は複数の TCP/IP ポートを開くことによって、その VPN Server に接続しようとする別のコンピュータはネットワーク環境や途中のプロキシサーバーおよびファイアウォールなどの制限などに応じて、最も接続がしやすいポート番号に対して接続を行うことができます。どの TCP/IP ポートに対して接続を行っても、VPN セッションが確立された後の機能や性能は同一です。PacketiX VPN Server は各 TCP/IP リスナーポートを対等に扱い処理します。

リスナーポートについては、「3.3.6 リスナーポート」 をお読みください。

VPN Server の TCP/IP リスナーポート

 

仮想 HUB への接続

「1.4.2 仮想 HUB」 で解説されているように、PacketiX VPN Server は 1 つのサーバープロセス内で複数の仮想 HUB を動作させることができます。

VPN Server に VPN 接続しようとするコンピュータは、その VPN Server 内で動作している仮想 HUB のうち 1 つを指定して、その仮想 HUB に対して接続を行います。

仮想 HUB へ接続をしようとするときは、「1.5.1 豊富なユーザー認証オプション」 で解説されているようなユーザー認証を行う必要があります。ユーザー情報は仮想 HUB 単位で管理されており、PacketiX VPN Server の管理者または各仮想 HUB の管理者が事前に設定している必要があります。仮想 HUB 単位に存在するセキュリティアカウントデータベースのユーザー情報にしたがってユーザー認証が行われた結果、VPN Server がその VPN 接続を正当なものであると認めた場合は、VPN Server の仮想 HUB への VPN 接続が受け入れられ、新しい「VPN セッション」が確立され、VPN 通信が開始されます。

したがって、仮想 HUB への接続が完了するまでの間は VPN の接続元コンピュータと VPN Server との間では一切 VPN のデータ通信 (Ethernet フレームの送受信) は行われず、ユーザー認証処理が完了した後のみ VPN データ通信が行われます。PacketiX VPN プロトコルにおいては、ユーザー認証が完了する前の仮想 HUB への接続処理中の処理を「ネゴシエーション中」、実際に VPN 接続が完了してセッションが確立され、VPN 通信が利用できるようになった状態を「VPN 通信中」というように表現しています。

仮想 HUB への接続とセッション確立時の VPN プロトコルのシーケンスと状態遷移

 

セッションデータの TCP/IP 通信

PacketiX VPN プロトコルでは、PacketiX VPN Server と VPN 接続元コンピュータとの間の通信 (VPN セッション) のための実際の物理的なネットワーク上を流れるパケットは、TCP/IP パケットとしてカプセル化され送信元によって生成されます。また受信側では受け取った TCP/IP パケットをカプセル化解除します。すべての TCP/IP 通信は SSL (Secure Socket Layer) によって暗号化および電子署名を付加することが可能です。

PacketiX VPN Server と VPN 接続元のコンピュータとの間での通信においては、1 つの VPN セッションについて、1 本の TCP/IP コネクションによって通信を行わせることができますが、ユーザーが希望する場合は複数の TCP/IP コネクションを確立し、それらの複数本の TCP/IP コネクションの間で通信データを負荷分散したり、遅延を管理して自動的に送信順位を調整したりして、よりネットワーク回線を効率的に利用してスループットおよび応答性を高めることが可能です。さらに、それぞれの TCP/IP コネクションについて、データの伝送方向 (全二重か半二重か)、切断するまでの寿命などを設定することもできます。詳しくは、「2.1.3 通信効率および安定性」 および 「4.4.11 高度な通信設定」 などをお読みください。

PacketiX VPN プロトコルのデータ伝送においては、すべてのデータ内容を SSL によって暗号化するとともに、データ圧縮アルゴリズムによって圧縮することもできます。データ圧縮は、モデムや ISDN、PHS などの低速な回線を使用する際に、論理的にたくさんのデータ量を流す場合に有効に機能する場合があります。圧縮は暗号化と同時に使用することも可能です。データ圧縮については、「2.1.3 通信効率および安定性」 および 「4.4.16 データ圧縮オプション」 をお読みください。

VPN セッション内における仮想 Ethernet フレームの伝送

 

MAC アドレスとの関連付け

仮想 HUB は VPN クライアント接続元からの複数の VPN セッションを管理し、それらのセッションから仮想 HUB に対して送られている仮想の Ethernet フレームを受け取って、各フレームの宛先 MAC アドレスを識別して適切な別の VPN セッションに対して送り出します。この処理は、物理的なスイッチング HUB の内部で行われているレイヤ 2 の Ethernet フレームスイッチング処理 (パケット交換) と同等です。

仮想 HUB は物理的なスイッチング HUB と同様に、自動的に MAC アドレス学習を行い、学習した各 MAC アドレスを対応した VPN セッションに対して関連付けています。これにより、処理すべき Ethernet フレームが到着したとき、その Ethernet フレームの宛先 MAC アドレスを読み取って対応する適切な相手先 VPN セッションに対してスイッチングすることができます。この仮想 Ethernet フレームのスイッチング処理が仮想 HUB の最も重要な役割であり、PacketiX VPN による VPN 通信における最も本質的な部分です。

仮想 HUB が管理する MAC アドレステーブルは自動的に更新され、可能な限り常に実際のネットワークの状態を反映したものになっています。また仮想 HUB の管理者は、MAC アドレステーブルを表示したり、任意のエントリを自由に削除したりすることもできます。

仮想 HUB が新しい MAC アドレスを学習したり、MAC アドレステーブルデータベースを書き換えたりする仕組みやタイミングは、物理的な Ethernet スイッチング HUB と同等です。

仮想 HUB による VPN セッションと MAC アドレスの関連付け

 

別の VPN Server / VPN Client / VPN Bridge からのセッション

PacketiX VPN Server は、他のコンピュータで動作している (localhost で動作している場合でも問題ありません) PacketiX VPN プロトコルに対応したソフトウェアからの接続を受け付けます。これらのソフトウェアには、PacketiX VPN Server、PacketiX VPN Client および PacketiX VPN Bridge の 3 種類があります (今後、PacketiX VPN プロトコルに対応した新たなソフトウェアや専用ハードウェアが、ソフトイーサ株式会社またはサードパーティによって開発され提供される可能性もあります)。

別の VPN Server / VPN Client / VPN Bridge からのセッション

3 種類のソフトウェアからの VPN 接続はすべて PacketiX VPN プロトコルによって行われ、その通信内容や性質などはどのソフトウェアからのどのような目的である通信であるかを問わず同一です。

PacketiX VPN Client からの接続

PacketiX VPN Client からの接続は、一般的には仮想 HUB に接続しようとしている仮想 LAN カードからの接続である場合がほとんどです。つまり、VPN 通信を利用するエンドユーザーのクライアントコンピュータに VPN Client がインストールされており、その VPN Client の接続先として VPN Server を登録して接続を行った場合、そのコンピュータの仮想 LAN カードは VPN Server で動作している仮想 HUB に VPN 接続したことになり、例えば物理的なスイッチング HUB に LAN ケーブルで LAN カードを接続した場合と同じように通信ができるようになります。

また、特殊な利用方法としては、VPN クライアントコンピュータ側の仮想 LAN カードと、そのコンピュータに接続されている既存の物理的な LAN カードとの間をレイヤ 2 でブリッジ接続することが可能です。これには、オペレーティングシステムの持つブリッジ機能を使用することができます。SoftEther 1.0 ではこの方法で仮想 HUB と物理的な LAN との間のブリッジが行われることが多くありました。しかしながら、PacketiX VPN 2.0 では VPN Server または VPN Bridge のローカルブリッジ接続機能によってより簡単かつ高速にブリッジが可能になったため、この方法はそれほど頻繁に用いられません。

PacketiX VPN Bridge からの接続

遠隔地の拠点上で動作している PacketiX VPN Bridge から PacketiX VPN Server にカスケード接続することが可能です。また VPN Server 側と VPN Bridge 側の 2 つの仮想 HUB それぞれを、両側の拠点の既存の物理的な LAN にローカルブリッジ接続することによって、2 つの拠点を VPN 接続することができます。この方法は、拠点間接続 VPN においてよく用いられます。

PacketiX VPN Bridge については、「第5章 PacketiX VPN Bridge 2.0 マニュアル」 をお読みください。

PacketiX VPN Server からの接続

PacketiX VPN Bridge は PacketiX VPN Server の機能を一部制限しただけのソフトウェアであるため、上記の「PacketiX VPN Bridge からの接続」で解説したような接続方法は PacketiX VPN Server から別の PacketiX VPN Server へのカスケード接続の際も同様に機能し使用することが可能です。

 

VPN セッションの接続モード

上で解説した、別のコンピュータ上で動作する VPN Client / VPN Server / VPN Bridge などから VPN Server に対して接続される VPN 接続はすべて仮想 HUB に対する VPN セッションとして確立され、管理されます。

VPN Server は基本的にどのような PacketiX VPN プロトコルによる VPN セッションでも対等に取り扱い、VPN セッションの接続元の VPN ソフトウェアの種類や、VPN セッションの先のネットワークがどのようになっているかについて関心を持っている訳ではありません。

しかし、PacketiX VPN Server の VPN ネットワークの管理上の都合により、VPN セッションの接続元コンピュータの接続種類をその VPN セッションの目的に応じて 2 種類に分離し、差別化したい場合があります。そこで、PacketiX VPN では通常の VPN セッションに「接続モード」という概念を導入し、2 種類の接続モードを定義しています。

接続モードには「クライアントモード」と「ブリッジ / ルータモード」の 2 種類があります。

 

クライアントモードセッション

クライアントモードの VPN セッションは、主に VPN Client から VPN Server に対して接続される VPN セッションに対して適用されます。通常の VPN Client の使用方法は、エンドユーザーの遠隔地のクライアントコンピュータに VPN Client を導入し、仮想 HUB を作成してその仮想 HUB を VPN Server に対して接続するというもので、主にリモートアクセス VPN における VPN クライアントとしての利用方法です。

したがって、通常の VPN Client から接続され確立された VPN セッションでは、VPN Client 側では 1 つの MAC アドレスを持った Ethernet デバイスのみが VPN に接続されている状態であるはずです。つまり、VPN Client で接続に使用している仮想 LAN カードデバイスドライバが仮想 HUB に接続されているだけであり、その仮想 LAN カードに割り当てられた MAC アドレスが、当該 VPN セッションにおいてクライアント側に存在する唯一の LAN カードであるはずです。

しかし、VPN Client をインストールしたコンピュータを実際に使用するユーザーが、クライアントコンピュータ側の LAN カードを勝手に別の物理的な LAN カードにオペレーティングシステムの機能を使ってブリッジ接続したり、オペレーティングシステムの IP ルーティング機能を使って別の IP ネットワークに勝手に接続したりすることもできてしまいます。このような行為を VPN Client を持つユーザーが任意に行った場合、VPN 管理者の側では意図していないネットワークトポロジの変更がユーザーによって行われてしまい、VPN ネットワーク全体の統一性や管理性が損なわれてしまいます。

そこで、「クライアントモードセッション」(つまり VPN Client から接続された VPN セッション) においては、その VPN セッションのクライアント側での「レイヤ 2 ブリッジ」や「レイヤ 3 ルーティング」は原則として禁止されます。PacketiX VPN Server に接続した VPN Client のユーザーが勝手にクライアントコンピュータ側で仮想 LAN カードを別のネットワークに接続することができなくなるのです。これによりネットワークトポロジの変更や管理者が意図していないコンピュータの VPN への接続が防止できます。

ただし、VPN Client の接続設定の「高度な通信設定」において、接続モードとして「ブリッジ / ルータモード」を選択することにより、上記の制限は解除され、VPN Client 側でのブリッジやルーティングが可能になります。詳しくは 「4.4.17 接続モードの選択」 をお読みください。

PacketiX VPN Server の仮想 HUB ごとに登録するユーザーの設定値において、「セキュリティポリシー」の「ブリッジを禁止」および「ルータ動作を禁止」を有効にしていると、そのユーザーは接続モードを「ブリッジ / ルータモード」として VPN Server に接続することができなくなります (VPN 接続時にエラーが発生します)。セキュリティポリシーについては 「3.5.9 セキュリティポリシー」 をお読みください。

クライアントモードセッションとブリッジ / ルータモードセッション

 

ブリッジ / ルータモードセッション

VPN セッションが「ブリッジ / ルータモードセッション」で接続している場合は、上で解説した「クライアントモードセッション」における VPN 接続元側でのレイヤ 2 ブリッジやレイヤ 3 ルーティングを禁止するという制限が解除され、原則としてどのような通信でも行うことができるようになります。

PacketiX VPN Server または PacketiX VPN Bridge の仮想 HUB が別の仮想 HUB にカスケード接続する場合におけるセッションの接続モードは、自動的に「ブリッジ / ルータモード」となります。

PacketiX VPN Client から「ブリッジ / ルータモード」で仮想 HUB に接続するには、VPN Client 側で設定が必要です。詳しくは 「4.4.17 接続モードの選択」 をお読みください。

管理者が VPN Client での一般的な VPN 接続で利用するために作成したユーザーが、勝手に「ブリッジ / ルータモード」で仮想 HUB に接続できないようにするためには、前述のようにセキュリティポリシーを設定します。セキュリティポリシーについては 「3.5.9 セキュリティポリシー」 をお読みください。

 

モニタリングモードセッション

モニタリングモードは、VPN Client が VPN Server の仮想 HUB に接続する際に選択可能な接続モードです。

モニタリングモードで接続された VPN セッションは、接続先の仮想 HUB 内を流れるすべての Ethernet フレームをそのまま受け取ることができます。このモードは、仮想 HUB 内を流れる Ethernet パケットを傍受して、パケットキャプチャソフトウェアによってキャプチャしたり IDS や IDP などのセキュリティソフトウェアですべてのパケットを検査したりするために利用することができます。なお、モニタリングモードで仮想 HUB に接続しているセッションは、仮想 HUB 内のすべての Ethernet フレームを受け取ることはできますが、逆に Ethernet フレームを仮想 HUB に対して発信することはできません。

このモードを使用すると、一般的なレイヤ 2 インテリジェントスイッチング HUB に搭載されている「ポートミラーリング」や「ポートモニタリング」などの機能と同等のことを行えるようになります。

モニタリングモードセッション

 

ローカルブリッジセッション

ローカルブリッジセッションは、PacketiX VPN Server の仮想 HUB とそのコンピュータの物理的な LAN カードとの間で「ローカルブリッジ接続」を作成した際に確立されます。VPN Client / VPN Server / VPN Bridge からの PacketiX VPN プロトコルによるネットワークを経由した VPN 接続によって確立される通常の VPN セッションと異なり、ローカルブリッジセッションは実際の通信先は VPN Server が動作しているコンピュータの別のモジュールであるという点で「特殊なセッション」として分類されます。

ローカルブリッジ接続機能については、「3.6 ローカルブリッジ」 をお読みください。

 

カスケード接続セッション

カスケード接続セッションは、PacketiX VPN Server または PacketiX VPN Bridge の仮想 HUB が別のコンピュータ上で動作している PacketiX VPN Server の仮想 HUB に対してカスケード接続を行った場合に、カスケード接続元の側の VPN Server または VPN Bridge の仮想 HUB 内で生成される「特殊なセッション」です。

つまり、カスケード接続を行う場合ではカスケード接続を受けた側の仮想 HUB に通常のセッションである「ブリッジ / ルータモード」のセッションが作成され、カスケード接続を行った側の仮想 HUB には特殊なセッションである「カスケード接続セッション」が作成されることになります。

カスケード接続セッションについては、「3.4.11 カスケード接続機能」 をお読みください。

 

SecureNAT セッション

SecureNAT セッションは、PacketiX VPN Server または PacketiX VPN Bridge の仮想 HUB の機能の 1 つである「SecureNAT 機能」を有効にした場合に内部で自動的に作成される「特殊なセッション」です。SecureNAT 機能については、「3.7 仮想 NAT および仮想 DHCP サーバー」 をお読みください。

 

仮想レイヤ 3 スイッチセッション

仮想レイヤ 3 スイッチセッションは、PacketiX VPN Server の機能である「仮想レイヤ 3 スイッチ機能」を使用した場合に、仮想レイヤ 3 スイッチと仮想 HUB との間の接続のために内部で自動的に作成される「特殊なセッション」です。仮想レイヤ 3 スイッチ機能については、「3.8 仮想レイヤ 3 スイッチ」 をお読みください。

 

 

Copyright © 2004-2021 SoftEther Corporation. All Rights Reserved.
 Web サイトについて | 個人情報の管理 | SoftEther VPN プロジェクト | お問い合わせ

SSL 暗号化通信中