トップ 製品・サービス 導入事例 パートナー ダウンロード サポート 報道発表 企業情報 お問い合わせ
トップページ PacketiX VPN 2.0 Web サイト 製品概要 ローカルブリッジ接続機能Select Language:

 

ローカルブリッジ接続機能

ローカルブリッジ接続機能は、PacketiX VPN による VPN を接続する上でよく使用する機能です。ローカルブリッジ接続を用いて、仮想的なネットワークと物理的なネットワークを Ethernet のレベルで接続してください。ここではローカルブリッジの概念、設定方法および注意事項について解説します。

 

ローカルブリッジとは

ローカルブリッジ接続機能 (以下「ローカルブリッジ」) を使用すると、VPN Server または VPN Bridge 内で動作している仮想 HUB と、そのサーバーコンピュータ上に接続されている物理的な LAN カードとの間をレイヤ 2 で接続し、元々別々の Ethernet セグメントとして動作していた 2 つのセグメントを 1 つのセグメントに結合することができます。

ローカルブリッジにより、仮想 HUB に接続しているコンピュータと物理的な LAN に接続しているコンピュータの間で、互いに相手が物理的には別のネットワークに接続されているにもかかわらず、論理的には同一の Ethernet セグメントに接続されていることになり、Ethernet のレベルで自由に通信することができるようになります。

ローカルブリッジを使用すると、リモートアクセス型 VPN および拠点間接続型の VPN を簡単に構築することができます。詳しくは、「10.4 一般的なリモートアクセス VPN の構築」「10.5 拠点間接続 VPN の構築 (ブリッジ接続を使用)」 および 「10.6 拠点間接続 VPN の構築 (IP ルーティングを使用)」 をお読みください。

ローカルブリッジ機能

 

ローカルブリッジの設定と動作

ローカルブリッジを作成するために必要な権限

ローカルブリッジは VPN Server または VPN Bridge に物理的に接続されている LAN カード (Ethernet アダプタ) と仮想 HUB の組み合わせを指定して定義します。ローカルブリッジを新しく作成したり既存のローカルブリッジを削除したりすることができるのは、VPN Server 全体の管理者に限られます。仮想 HUB の管理者はその仮想 HUB に対してのローカルブリッジであっても任意に作成することはできません。

ローカルブリッジの動作

ローカルブリッジを定義すると、指定した仮想 HUB と物理的な LAN カードとの間で Ethernet パケットを送受信することができるようになります。ローカルブリッジで指定されている仮想 HUB 名が存在しなかったり、または物理的な LAN カードが存在しないかオペレーティングシステムによって無効化されてしまっている場合は、そのローカルブリッジ機能は自動的に停止します。ただし、停止する要因になっている状態が解消されることによって自動的に再開します。

新しいローカルブリッジの作成

ローカルブリッジを新規に定義するには、VPN サーバー管理マネージャの [ローカルブリッジ設定] ボタンをクリックします。すると [ローカルブリッジ設定] というダイアログボックスが表示されるので、[仮想 HUB] でローカルブリッジしたい仮想 HUB を選択し、[LAN カード] でその仮想 HUB とブリッジしたい LAN カード名を選択して [ローカルブリッジを追加] ボタンをクリックしてください。

vpncmd では、BridgeDeviceList コマンドおよび BridgeCreate コマンドで同様の操作が可能です。

なお、新しいローカルブリッジを作成する際に仮想 HUB 名を指定しますが、存在しない仮想 HUB 名やオフラインになっている仮想 HUB 名を指定してもエラーにはならずに、ローカルブリッジとして正しく登録されます。ただし、その名前の仮想 HUB の動作が開始するまではローカルブリッジの状態は [オフライン] になります。

ローカルブリッジは複数作成することができます。ただし、同一の仮想 HUB と物理的な LAN カードとの組み合わせを複数登録することはできません。

ローカルブリッジ設定画面

ローカルブリッジの状態

ローカルブリッジの状態は以下の 3 種類があります。

  • 動作中
    ローカルブリッジは正しく動作しており、仮想 HUB と物理的な LAN カードの間で Ethernet フレームを送受信しています。
  • エラー発生
    オペレーティングシステムに対して物理的な LAN カードにアクセスするように要求した結果、そのデバイスが存在しないなどのエラーが発生しています。
  • オフライン
    ローカルブリッジとして指定されている仮想 HUB が存在しないかオフラインです。

仮想 LAN カードとのローカルブリッジ

もし VPN Server または VPN Bridge をインストールしているコンピュータに VPN Client がインストールされており仮想 LAN カードがシステムに登録されている場合は、物理的な LAN カード一覧に仮想 LAN カードも表示されます。この場合、技術的には仮想 HUB と仮想 LAN カードの間でローカルブリッジを構成することは可能ですが、実際にはそのような構成を行うメリットはほとんどありません。

 

ローカルブリッジ用の LAN カードの準備

ローカルブリッジ用に新しい物理的な LAN カードを増設する

仮想 HUB と物理的な LAN カードとの間でローカルブリッジ接続を行うことによって、仮想 HUB および仮想 HUB にリモート接続した VPN Client や他の仮想 HUB がローカルブリッジ先の物理的なネットワークと同一セグメントとして直接通信することができるようになります。

この場合、ローカルブリッジ接続先として指定したい物理的な LAN が、その VPN Server または VPN Bridge が通常の通信 (つまり他の VPN ソフトウェアとの VPN 通信) に使用している LAN と同一である場合が多くあります。たとえば社内 LAN などの内部に VPN Bridge を設置し、別の場所にある LAN とインターネット経由で拠点間接続を行いたい場合、その VPN Bridge がインターネットにアクセスするために使用する LAN とブリッジ接続の対象となる LAN は同一の LAN であることになります。

このような場合は、物理的な LAN に対してローカルブリッジを行う際に使用する物理的な LAN カードとして、その VPN Server または VPN Bridge が VPN 通信のための物理的な通信を行う LAN カード自身を指定することも可能ですが、この場合は下記のような問題が発生します。

  • VPN Server または VPN Bridge が別の VPN Server とのカスケード接続などのための VPN 通信に使用しているフレームと、ローカルブリッジの対象となるフレームとを分離する作業が必要になり、このため CPU 時間が消費され、通信速度が低速になります。
  • 物理的な LAN カードに対して入力された Ethernet フレームを、オペレーティングシステム内で TCP/IP プロトコルスタックへのフレームバッファとローカルブリッジを行うために入力する際に必要となるフレームバッファの 2 つに複製しなければならないので、CPU 時間およびメモリ負荷が発生し、通信速度が低速になります。

したがって、物理的な LAN とローカルブリッジ接続を行う場合は、可能であれば VPN Server または VPN Bridge を動作させるコンピュータに物理的に新しい LAN カードを増設し、その LAN カードをローカルブリッジ専用として使用するべきです。ただし、コンピュータに空きの PCI スロットが 1 つも無いような場合や組み込みハードウェアで Ethernet ポートが物理的に増設できない場合は、この限りではありません。

ローカルブリッジ用 LAN カードの準備

ローカルブリッジ用の LAN カードではプロトコルスタックを使用しない

ローカルブリッジ用にコンピュータに用意したローカルブリッジ専用 LAN カードがある場合には、パフォーマンスを向上させるため、その LAN カードには TCP/IP プロトコルや他のプロトコルスタックなどを無効にすることを推奨します。ローカルブリッジ用の LAN カードの役割は仮想 HUB と物理的な LAN との間の Ethernet フレームの公開であり、仮想 HUB を動作させているオペレーティングシステムのプロトコルスタックがその LAN カードに対して介入する必要は全く無いからです。

Windows の場合は、TCP/IP プロトコルやその他のネットワークプロトコル、Microsoft ネットワーククライアントなどのファイル共有サービスなど、すべてのプロトコルやサービスなどをローカルブリッジ用の LAN カードから解除することができます。この設定を行うには、Windows の [ネットワーク接続] プロパティなどで LAN カードのプロパティを開き、すべてのプロトコルとサービスのチェックボックスを解除してください。

ローカルブリッジ用 LAN カードからプロトコルスタックのバインドを解除

なお、技術的な都合によってローカルブリッジ用 LAN カードのプロトコルスタックを無効化することができないような場合でも、TCP/IP プロトコルの設定を変更し、その LAN カードが DHCP サーバーから IP アドレスを取得するようなことがないように設定してください。この設定を行わなければ、ローカルブリッジ用の LAN カードが DHCP サーバーから 1 つの IP アドレスの割り当てを自動的に受けてしまったり、その結果ルーティングテーブルが崩れて VPN 通信が不安定になるなどの問題が発生することになります。

ローカルブリッジ用 LAN カードへ固定 IP アドレスを設定

Linux の場合は、ローカルブリッジ用 LAN カードに対して ifconfig コマンドなどで IP アドレス 0.0.0.0 を割り当てるなどの方法で同等の効果を得ることができます。

 

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

仮想 HUB にローカルブリッジが関連付けられている場合、その仮想 HUB のセッション一覧を表示するとローカルブリッジセッション (ユーザー名が "Local Bridge" のセッション) が存在していることがわかります。ローカルブリッジセッションは VPN Server が仮想 HUB と物理的な LAN カードとの間を接続するために仮想 HUB に対して自動的に作成する仮想的なセッションです。

ローカルブリッジセッションの状態表示画面

 

対応する LAN カードの種類

ローカルブリッジに使用する LAN カードの必要条件

ローカルブリッジ機能は、下記の条件を満たした LAN カードに対応しています。

  • オペレーティングシステムが Ethernet (IEEE802.3) デバイスとして認識することができるデバイスドライバを持ったネットワークアダプタ。
  • MTU (Ethernet ヘッダを含まない) として、1,500 バイトまでの送受信が問題なく行えるもの。
  • プロミスキャスモードで動作することが可能なもの。
  • ハードウェアおよびデバイスドライバの性能や FIFO バッファの容量が十分にあり、高負荷をかけてもソフトウェアまたはハードウェアがクラッシュしたり発熱などによって動作が不安定にならないもの。

推奨する LAN カード

ソフトイーサ株式会社では、社内での検証の結果、下記の LAN カードの性能が非常に高いことを認め、これらの LAN カードの使用を推奨しています。ただし、その他の LAN カードであっても一般的にローカルブリッジ対象として使用することは問題はありません。もしお使いの LAN カードが性能不足でローカルブリッジ時に十分なパフォーマンスを得ることができないような場合は、下記の LAN カードへの交換を検討してください。

製造元 製品シリーズ 通信規格
Intel Intel PRO シリーズ 100Base-TX
1000Base-T
1000Base-SX
1000Base-LX
Broadcom Broadcom NetXtreme シリーズ 100Base-TX
1000Base-T
3Com 3Com シリーズ 100Base-TX
1000Base-T

 

プロミスキャスモードに対応していない LAN カードの使用

プロミスキャスモードに対応していない LAN カード

一部の LAN カードや LAN カードドライバは、プロミスキャスモードに対応していない場合があります。VPN Server / VPN Bridge ではプロミスキャスモードに対応していない LAN カードを原則としてローカルブリッジのために使用することはできません。

なお、ほとんどの物理的な LAN カードはプロミスキャスモードに対応しているため、問題なく使用できます。

プロミスキャスモードに対応していない LAN カードには、代表的なものとして下記のようなものがあります。

  • 無線 LAN (IEEE802.11) 用の LAN カード。
  • その他プロミスキャスモードに移行することができないデバイスドライバを持った LAN カード。

プロミスキャスモード非対応 LAN カードを強制的に使用する方法

プロミスキャスモードに対応していない LAN カードを強制的に使用することが可能です。ただし、多くの制限事項が発生するためこの方法はお勧めできません。この方法は通常は使用せず、どうしてもプロミスキャスモードに対応していない LAN カードをローカルブリッジのために使用したい場合に適用してください。

この設定を行うためには、ローカルブリッジを定義したあと、VPN Server のコンフィグレーションファイルの LocalBridgeList ノード内の LocalBridge0 などの名前で定義される目的の LAN カード名が指定されているローカルブリッジ定義エントリ内の NoPromiscuousModetrue に書き換えてください。具体例は、下記のとおりです。

declare LocalBridgeList
{
	declare LocalBridge0
	{
		string DeviceName Intel(R)$20PRO/1000$20MT
		bool FullBroadcastMode false
		string HubName SoftEther$20Network
		bool MonitorMode false
		bool NoPromiscuousMode true
	}
}

 

タグ付き VLAN フレーム

PacketiX VPN ではタグ付き VLAN フレームの使用に対応している場合があります。ただし、対応状況はローカルブリッジに使用する LAN カードの種類やデバイスドライバの特性に依存します。また、タグ付き VLAN フレームを正しく扱うことができるかどうかについて、ソフトイーサ株式会社は保証していませんのでご注意ください。タグ付き VLAN フレームが流れているネットワークを仮想 HUB にブリッジ接続する場合は下記のようになります。

ローカルブリッジ用 LAN カードがタグ付き VLAN フレームに対応している場合

LAN カードのデバイスドライバなどの設定を行い、タグ付き VLAN に関する設定を行ってください。設定方法は LAN カードのハードウェアマニュアルなどを参照してください。

ローカルブリッジ用 LAN カードがタグ付き VLAN フレームに対応していない場合

LAN カードのハードウェアがタグ付き VLAN フレームに対応していない場合は、もしタグ付き VLAN フレームが LAN カードから入力された場合でも、タグ部分は通常の Ethernet フレームの一部としてソフトウェア的に読み取ることができます。このような場合は、PacketiX VPN はそのフレームが物理的に流れる Ethernet フレームをそのまま仮想化・カプセル化して VPN に流します。ただし、タグ付き VLAN フレームを含めてすべてのフレームは MAC ヘッダを含めて 1,514 バイトを超えることはできません。

 

仮想 HUB 内の通信内容を LAN カードにすべて出力するモード

ローカルブリッジをモニタモードに設定する方法

「3.4.10 モニタリングモードセッション通信」 で解説されているような機能を使用すると、仮想 HUB に VPN 接続したユーザーはその仮想 HUB 内を流れるすべての仮想 Ethernet フレームを受信 (傍受) することができます。これと同様の動作をローカルブリッジしている仮想 LAN カードに対して行うことができます。

ローカルブリッジ接続の定義で「モニタモード」を有効にすると、ローカルブリッジ接続している LAN カードからは、その仮想 HUB 内を流れるすべての Ethernet フレームが出力されます。ローカルブリッジ接続をモニタモードに設定する操作は通常は使用せず、またセキュリティ上危険なため VPN サーバー管理マネージャや vpncmd コマンドからは直接行うことができないようになっています。ローカルブリッジ接続をモニタモードに設定するには、ローカルブリッジを定義したあと、VPN Server のコンフィグレーションファイルの LocalBridgeList ノード内の LocalBridge0 などの名前で定義される目的の LAN カード名が指定されているローカルブリッジ定義エントリ内の MonitorMode true に書き換えてください。具体例は、下記のとおりです。

declare LocalBridgeList
{
	declare LocalBridge0
	{
		string DeviceName Intel(R)$20PRO/1000$20MT
		bool FullBroadcastMode false
		string HubName SoftEther$20Network
		bool MonitorMode true
		bool NoPromiscuousMode false
	}
}

モニタモードに設定した LAN カードの LAN ポートに別の機器を接続し、その機器で仮想 HUB を流れるすべてのパケットを傍受することができます。なお、モニタリングモード (「3.4.10 モニタリングモードセッション通信」 を参照してください) と同様に、パケットを発信することはできません。

モニタモードに設定した LAN カードの使用方法

仮想 HUB に対してモニタモードで設定してローカルブリッジ接続している LAN カードに、ネットワークを流れるすべての Ethernet フレームをキャプチャしてログとして保存する外付けハードウェアや IDS または IDP などのセキュリティ装置を接続することにより、仮想 HUB 内を流れるすべての通信内容をモニタリングすることができます。

この図は通常のモニタモードで接続した VPN セッションの図であるが、「モニタモード」に設定した LAN カードはこの図の「システム管理者」と同等に仮想 HUB 内のすべての Ethernet フレームを物理的に受け取れる

仮想 HUB 内を流れる仮想 Ethernet フレームの数がコンピュータや周辺デバイスの処理能力を超えているような場合やフレームバッファの空き容量が不足してしまった場合は、PacketiX VPN ソフトウェアはそのフレームを破棄してシステム全体の安定性を保とうとする場合があります。したがって、状況によってはすべてのフレームを受信できない場合があります。

 

tap デバイスの使用

Linux 版 VPN Server / VPN Bridge を使用している場合は、ローカルブリッジ先のネットワークデバイスとして、既存の物理的な LAN カードを指定するのではなく、新しい tap デバイスを作成してその tap デバイスに対してブリッジ処理を行うことが可能です。この場合、Universal TUN/TAP デバイスがカーネルに組み込まれており、/dev/net/tun ファイルとしてアクセスすることが可能である必要があります。

この機能によって生成された tap デバイスは、仮想 HUB に直接接続した仮想 LAN カードのように振舞います。tap デバイスは仮想ネットワークに関して十分高度な知識をお持ちの場合にのみ使用してください。

登録された tap デバイスの表示および IP アドレスなどの設定を行いたい場合は、ifconfig コマンドを使用します。tap デバイス名は Linux カーネルにおいて "tap_" という名前で始まるネットワークインターフェイスとして認識されます。

# ifconfig
tap_test  Link encap:Ethernet  HWaddr 00:AC:11:9F:E2:8F  
          inet6 addr: fe80::2ac:11ff:fe9f:e28f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:0 (0.0 b)  TX bytes:308 (308.0 b)

 

Windows におけるローカルブリッジの注意事項

Windows オペレーティングシステムでローカルブリッジ機能を使用する場合の注意事項は下記のとおりです。

  • ローカルブリッジ機能を使用するには、VPN Server / VPN Bridge をサービスモードとして動作させる必要があります (またはユーザーモードで起動する際は Administrators 権限が必要です)。
  • 一般ユーザー権限で VPN Server / VPN Bridge を起動している場合はローカルブリッジ機能は無効になります。
  • 古いバージョンの Windows (Windows 98 / Windows 98 Second Edition / Windows Millennium Edition / Windows NT 4.0 Workstation / Windows NT 4.0 Server / Windows NT 4.0 Server, Enterprise Edition) を使用している場合は、ローカルブリッジ接続を行う際に WinPcap ソフトウェアをインストールしなければなりません。VPN サーバー管理マネージャを使用している場合は、自動的に WinPcap のインストーラが起動してインストール処理が行われます。
  • Windows 2000 以降の新しい Windows では、WinPcap のインストールは不要です。PacketiX VPN はローカルブリッジ用のプログラムをカーネル内でその都度動作させてローカルブリッジに必要な処理を行います。
  • ハードウェアオフローディング処理をサポートしている LAN カードなどをローカルブリッジ接続に使用する場合は、ローカルブリッジ接続を構成してから一度コンピュータを再起動することを推奨します。再起動しない場合でもローカルブリッジは動作しますが、通信が不安定になる場合があります。このような場合は、コンピュータを再起動してください。再起動時にハードウェアオフローディング処理を無効化する設定が適用され、再起動後に安定して動作するようになります。
  • ローカルブリッジ先の LAN カード一覧として指定することができるデバイス名は、そのデバイスのハードウェアデバイスドライバが報告した名前が表示されます。なお、同一の種類のデバイスが 2 枚以上接続されている場合は、2 枚目以降のデバイス名の末尾に (2)、(3) などの名前が付き区別されます。この場合、どの LAN カード名が物理的のどの LAN カードに対応しているかは一般的に未定義ですが、一度正しく設定を行った後は通常はコンピュータを再起動してもデバイス順序が変わることはありません。

 

Linux におけるローカルブリッジの注意事項

Linux オペレーティングシステムでローカルブリッジ機能を使用する場合の注意事項は下記のとおりです。

  • ローカルブリッジ機能を使用するには、VPN Server / VPN Bridge をサービスモードとして動作させる必要があります (またはユーザーモードで起動する際は root 権限が必要です)。
  • 一般ユーザー権限で VPN Server / VPN Bridge を起動している場合はローカルブリッジ機能は無効になります。
  • Linux カーネルにネットワークアダプタへの低レベルアクセス用のソケットインターフェイス (Packet Socket と呼ばれる場合もあります) が組み込まれていない場合は、組み込む必要があります。なお、最近のほとんどの Linux カーネルでは問題ありません。
  • ハードウェアオフローディング処理をサポートしている LAN カードなどをローカルブリッジ接続に使用する場合で通信が不安定な場合は、ハードウェアオフローディング処理を無効にしてください。詳しくはハードウェアのマニュアルを参照してください。
  • Linux オペレーティングシステム内部での制限事項により、VPN 側 (仮想 HUB 側) からローカルブリッジしている LAN カードに割り当てられる IP アドレスに対して通信を行うことはできません。この制限は PacketiX VPN が原因ではなく、Linux の内部構造に原因があります。したがって、もし VPN 側 (仮想 HUB 側) から Linux でローカルブリッジに使用しているコンピュータ本体と何らかの通信を行いたい場合 (たとえば VPN Server / VPN Bridge サービスと HTTP サーバーサービスを両方動作させており、VPN 側からもサーバーサービスにアクセスさせたい場合) はローカルブリッジ用の LAN カードを用意して接続し、その LAN カードと既存の LAN カードの両方を物理的に同じセグメントに接続してください (この他の場合においても 「3.6.3 ローカルブリッジ用の LAN カードの準備」 で解説したように、ローカルブリッジに使用する LAN カードはそのための単独のものを用意することが推奨されています)。
  • Windows ではすべての LAN カードの名前としてデバイス名を指定することができますが、Linux では eth0、eth1 などのネットワークデバイス名を指定します。これらのデバイス名については、ifconfig -a コマンドで取得することができます。

 

 

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

SSL 暗号化通信中