10.3 コンピュータ間 VPN の構築 - SoftEther VPN プロジェクト

10.3 コンピュータ間 VPN の構築

    ここでは、「コンピュータ間 VPN」の構築方法について解説します。

    10.3.1 VPN Server の設定

    「コンピュータ間 VPN」を構築するためには、1 台の VPN Server を設置し、正しく設定します。コンピュータ間 VPN は、VPN Client をインストールしたクライアントコンピュータ間で VPN 通信を可能にするという最も簡単な接続方法であるため、構築するにあたって特別に難しい箇所はありませんが、以下の点について留意する必要がある場合があります。

    固定 IP アドレスを使用する方法

    仮想 HUB に接続する VPN Client の仮想 LAN カードは、通常の物理的な LAN カードと同様に設定することができます。最も簡単な接続方法では、仮想 HUB に接続した複数台の VPN Client に対して、重複しないように手動で固定プライベート IP アドレスを割り当てていきます。 たとえば、10 台のコンピュータを仮想 HUB に接続するような場合は、192.168.1.1, 192.168.1.2, ~ 192.168.1.10 といったように同一の IP ネットワークに属する複数の IP アドレスを割り当てることによってお互いに通信することができます。

    APIPA (Automatic Private IP Addressing) について

    Windows 98 以降のオペレーティングシステムや、最近の MacOS には、「APIPA」(プライベート IP アドレス自動割り当て機能) が実装されています。この機能は、LAN カードがネットワークに対して接続されており、また IP アドレスを DHCP サーバーによって自動的に割り当てる設定になっている状態にもかかわらず、一定期間 (1 分程度) 待機しても DHCP サーバーからの IP アドレス割り当てが行われなかった場合に、その LAN カードに対して 169.254.0.1 ~ 169.254.255.254 までの IP アドレスをランダムに割り当てる機能です。

    Windows や MacOS に搭載されている APIPA 機構により、仮想 LAN 内に DHCP サーバーが存在していない場合でも、自動的に仮想 LAN カードに IP アドレスが割り当てられます。APIPA によって一時的に自動的に割り当てられた IP アドレス同士の間では、一応は IP 通信ができます。ただし APIPA によってアドレスが割り当てられた状態では、安定した使用ができない場合がありますので、このような場合は固定で IP アドレスを割り当てるか、以下の方法によって DHCP によって正式に IP アドレスを割り当ててください。

     

    DHCP サーバーによって動的に IP アドレスを割り当てる方法

    VPN Server では、仮想 HUB に対して VPN Client が接続した際に、自動的に IP アドレスを割り当てるように設定することが可能です。仮想 HUB も、通常の LAN と同様に独立した 1 つの Ethernet セグメントですので、そのセグメント内に DHCP サーバーが存在している場合、そのセグメントに接続しようとしたクライアントコンピュータの仮想 LAN カードが、DHCP サーバーによる IP アドレスの割り当てを受けるように設定されていれば、それらの仮想 LAN カードは自動的に IP アドレスの割り当てを受け、IP 通信を行えるようになります。

    もし既存の DHCP サーバーソフトウェア (例えば Windows 2000 Server や Windows Server 2003 に付属している DHCP サーバーサービスや、市販またはフリーウェアの DHCP サーバーソフトウェアなど) を使用することができる場合は、これらの DHCP サーバーソフトウェアを有効にしたコンピュータに VPN Client と仮想 LAN カードをインストールし、仮想 HUB に対して接続しておくことによって、その仮想 HUB 内のコンピュータは、自動的にその DHCP サーバーソフトウェアからの DHCP プロトコルによる IP アドレス割り当てを受けることが可能になります。

    また、これらの DHCP サーバーを別途用意することが困難な場合や、より簡易的な DHCP サーバーを仮想 HUB 内で動作させたい場合は、VPN Server に搭載されている「仮想 DHCP サーバー機能」を用いてその仮想 HUB によって構成される仮想レイヤ 2 セグメントに接続したクライアントコンピュータに対して DHCP プロトコルにより IP アドレスを配布することができます。そのためには、VPN Server の仮想 HUB の SecureNAT 機能を有効にし、その SecureNAT 設定のうち「仮想 DHCP サーバー機能」のみを使用し「仮想 NAT 機能」は使用しないようにします。SecureNAT 機能の詳しい設定方法については、「3.7 仮想 NAT および仮想 DHCP サーバー」 を参照してください。

    10.3.2 ネットワーク構成

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

    10-3-1.png

    ネットワーク構成

     

    上記のネットワークでは、グローバル IP アドレスを持つ VPN Server 内に 1 つ仮想 HUB を作成し、その仮想 HUB に対してリモートから 5 台の VPN Client が接続し、それらの 5 台のコンピュータの間で自由で安全な通信ができるようになっています。また、各 VPN Client の仮想 LAN カードには 192.168.1.1, 192.168.1.2, 192.168.1.3, 192.168.1.4, 192.168.1.5 の 5 個の IP アドレを固定で割り当てています。

    10.3.3 遠隔地からの VPN 接続と通信のテスト

    ping コマンドによる通信チェック

    VPN Server に仮想 HUB を設置し、適切なユーザー認証設定を行った後、各クライアントコンピュータに VPN Client をインストールし、それらのクライアントから仮想 HUB に接続してみてください。

    複数のクライアントコンピュータが仮想 HUB に接続している状態で、各クライアントコンピュータから、別のクライアントコンピュータの仮想ネットワーク内における IP アドレスに対して「ping」コマンドなどで通信チェックを行ってみることにより、正しく VPN 接続が機能しているかどうかを試験できます。

     

    C:\>ping 192.168.1.3
    Pinging 192.168.1.3 with 32 bytes of data:
    Reply from 192.168.1.3: bytes=32 time=2ms TTL=128
    Reply from 192.168.1.3: bytes=32 time=2ms TTL=128
    Reply from 192.168.1.3: bytes=32 time=1ms TTL=128
    Reply from 192.168.1.3: bytes=32 time=2ms TTL=128
    Ping statistics for 192.168.1.3:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milliseconds:
        Minimum = 1ms, Maximum = 2ms, Average = 1ms
    C:\>
    なお、各クライアントコンピュータにパーソナルファイアウォール機能などがインストールされていて、ICMP パケットを正しく扱うことができない状態の場合は、ping コマンドによる接続チェックが行えない場合がありますのでご注意ください。

    Windows ファイル共有の使用テスト

    VPN 内部では、「Windows ファイル共有機能」を使用して、安全にファイル共有を行うことができます。
    Windows ファイル共有機能が正しく動作しているかどうかを確認するには、コンピュータで適当な共有フォルダを作成し、別のコンピュータから VPN 経由でその共有フォルダにアクセスしてみてください。

    なお、Windows は同一のレイヤ 2 セグメント内であれば、名前解決を NetBIOS over TCP/IP によってブロードキャストで行うことができます (DNS や WINS は必要ありません)。したがって、VPN で正しく接続が行えている場合は、たとえば Windows の「ファイル名を指定して実行」などで \\コンピュータ名 と入力することによって、そのコンピュータの共有フォルダを開くことができます。もし名前解決が正しく動作しない場合は、\\IPアドレス と入力することによってそのコンピュータを開くこともできます。

     

    10-3-2.png

    [ファイル名を指定して実行] でコンピュータを指定

     

    10-3-3.png

    VPN 経由でアクセスした共有フォルダ

     

    なお、各クライアントコンピュータにパーソナルファイアウォール機能などがインストールされていて、Windows ファイル共有のためのプロトコル (SMB や ICFS など) を正しく扱うことができない状態の場合は、ファイル共有が行えない場合がありますのでご注意ください。このような場合は、VPN 側のネットワークに対して、パーソナルファイアウォール機能を無効にしてください。

     

    参考リンク

    PC 間 VPN

    banner1_1.jpg

    SoftEther VPN を使用すると、数台のコンピュータによって構成されるアドホック VPN を構築することができます。どんなに距離が離れていても、コンピュータ間で簡単に LAN 用のプロトコルを相互通信できます。