1.1 SoftEther VPN とは

    SoftEther VPN (パケティックス ブイピーエヌ) は、個人向け・家庭向けネットワーク、中小規模のビジネス用のネットワーク、および大企業やインターネットサービスプロバイダなどが必要とする広帯域および高い負荷が発生する高度なネットワークなどの、すべての範囲をカバーすることができる、安定性が高く拡張性および柔軟性に富んだ、次世代の VPN ソフトウェアです。

    ここでは、SoftEther VPN の全体的な概要、旧来の VPN プロトコルとの比較、および高度な機能に関して説明いたします。

    1.1.1 概歴

    SoftEther VPN は以前「SoftEther 1.0」 として開発・配布されていました。以前の SoftEther は筑波大学の学生である登 大遊の個人プロジェクトとして開発されていました。「SoftEther」は、Windows 上に仮想 LAN カードおよび仮想 HUB を実装することにより、簡易的なレイヤ 2 VPN を構築することができるソフトウェアであり、フリーウェアとして配布されていました。「SoftEther」は、その後、2003 年に経済産業省の情報処理推進機構の研究開発プロジェクトとなりました。

    SoftEther VPN(このマニュアルの対象である)は、「SoftEther」の次期バージョンとなるVPN ソフトウェアです。SoftEther VPN はフリーウエアとして、筑波大学の SoftEther プロジェクトとして現在研究開発されています。SoftEther VPN は 2013 年の中頃にオープンソース(GPL)ソフトウェアとなる予定です。現在、ソースコード中の日本語コメントを英語に翻訳している最中であり、翻訳完了後、ソースコードがリリースされます。

    1.1.2 VPN の仕組みと動作原理

    「VPN (Virtual Private Network)」 は、1998 年頃から普及し始めた技術です。VPN 技術を使用することによって、インターネットなどの既存の IP ネットワークの中に、安全が確保された仮想のネットワークを構築し、その仮想のネットワークの中で自由に通信を行うことができます。

    まず、一般的な VPN の仕組みについて解説します。

    トンネリングとカプセル化の処理

    VPN は「仮想ネットワーク」を構築するためのソリューションです。VPN では、既存の公衆 IP ネットワークの中の離れた 2 地点の間で仮想ネットワークを構築し、その中で自由な通信を可能とするために「トンネリング」と呼ばれる手法が使用されます。

    「トンネリング」技術では、本来 LAN ケーブルや光ファイバなどの物理的な通信媒体の中を流れるパケットを、直接物理的なネットワークに流さずに、一旦 TCP/IP パケットなどの別のプロトコルのデータとして「カプセル化」します。カプセル化する際に、同時に暗号化や電子署名などを付加することが可能です。カプセル化されたデータは、VPN 通信の起点と終点との間で「トンネル」と呼ばれるセッションを通じて伝送されます。通信相手は、受け取ったカプセル化されたデータを「カプセル化解除」して元の中身であるパケット本体を取り出します。もしカプセル化の段階で暗号化が行われている場合は、暗号化を解除する必要があります。また、電子署名が付加されている場合は電子署名の正当性を検査することによって、伝送途中にそのパケットの内容が改ざんされていないかどうかを調べることができます。

    VPN 通信を行おうとする場合、VPN 通信元のコンピュータと通信先のコンピュータとの間のデータは、上記のような方法を使ってカプセル化された状態でトンネルの中を流れるため、生のデータがネットワーク上を流れることはありません。1-1-2.png

    一般的な VPN の仕組みと動作原理

    通信内容の暗号化によるセキュリティの確保

    VPN を利用することによって得られるメリットのうちの 1 つが、「暗号化」によるセキュリティの向上です。

    通常、インターネットのように誰でも利用することができる IP ネットワークは、常に盗聴や成り済ましの危険にさらされています。また、専用線サービスや衛星リンクなどの高価な通信サービス・インフラを利用した場合でも、それらの回線に物理的に盗聴装置が仕掛けられていたり、通信事業者の技術者が悪意または好奇心からデータを盗み見たり、政府などによって通信内容がすべて傍受・解析されていたりする可能性があります。したがって、これらの WAN を経由した通信を行う場合には、通信内容を何らかの方法で暗号化することが推奨されています。

    1-1-3.png

    インターネット上の通信の危険性

     

    問題点として考えられるのは、既存のすべての通信アプリケーションやプロトコルが、暗号化をサポートしていないという現状です。たとえば、HTTP プロトコルには SSL で暗号化した HTTPS というプロトコルがありますし、SSH プロトコルは最初から暗号化されています。しかし、多くのインターネットベースのアプリケーションは暗号化機能を持っていないか、持っていても実装や暗号強度に問題を抱えているかも知れません。

    1-1-4.png

    暗号化されているパケットと暗号化されていないパケット

     

    これらの従来セキュリティが不十分な通信プロトコルをインターネットや専用線などの WAN 上でそのまま使用すると、データ内容が傍受されたり、書き換えられたり、不正侵入されたりする可能性があります。
    そこで VPN を利用することにより、基本的に IP または Ethernet を利用するほぼすべてのアプリケーションの通信を自動的に暗号化することで、セキュリティを大幅に向上させることができます。

    接続性の向上とネットワークの独立性の確保

    VPN を利用することによるもう 1 つの大きなメリットは、「接続性の向上」と「ネットワークの独立性」の確保です。

    インターネットなどの公衆 IP ネットワークは、原則として任意の IP アドレスのコンピュータから別の任意の IP アドレスのコンピュータに対して、任意の IP パケットを送信することができます。したがって、インターネット経由で通信を行おうとする場合、通信を行いたいクライアントコンピュータとサーバーコンピュータのうち、サーバーコンピュータに対して実際には意図していない別の悪意のあるコンピュータからのパケットが届いてしまうことになります。昨今、脆弱性のあるオペレーティングシステムや通信ソフトウェア、サーバーソフトウェアなどのセキュリティホールを突いたワームなどのパケットがインターネット上で出回っているため、それらに感染してしまう可能性もあります。このように、インターネットに直接接続したコンピュータは、本質的に安全でないため、ビジネスのための通信など重要な通信データを処理するコンピュータは、直接インターネットのグローバル IP アドレスを割り当ててインターネットに接続させることは推奨されていません。

    しかしながら、インターネットなどの公衆 IP ネットワークを経由して、離れた拠点間で通信を行う場合は、原則として少なくともどちらか一方がグローバル IP アドレスでポートを開き、通信を待機している必要があります。これは TCP/IP プロトコルを使う上で必須の事項です。したがって、離れた拠点同士のコンピュータ間で通信を行う際に VPN を使用しない場合は、両側のコンピュータ間で IP パケットの到達性を確保しなければなりませんが、その場合、前述のようなセキュリティ上の問題が生じてしまいます。

    1-1-5.png

    インターネット上で TCP/IP 接続を行う際には原則として少なくとも片方がグローバル IP アドレスを持ちポートを公開する必要がある

     

    VPN を利用することにより、これらの問題を簡単かつ確実に解決することができます。VPN は離れた拠点のコンピュータ同士の間に確立されるトンネル内を、「カプセル化したパケットが流れる仕組みで通信を行う」ということは前にも述べました。このトンネルを確立する際に、お互いのコンピュータの間でユーザー認証と呼ばれる本人確認を行い、認証が成功した場合にだけトンネルが確立されます。また、トンネルは一度確立されれば物理的なネットワーク通信が切れない限り常に維持され、またトンネルを流れるデータをすべて暗号化し電子署名を付加しておけば、そのトンネルとは関係ないインターネット上の別のコンピュータがそのトンネルの通信に割り込むことはできなくなります。

    このトンネリング技術によって、離れた拠点にある複数のコンピュータ同士、コンピュータとネットワーク、ネットワーク同士を VPN を用いて接続することにより、VPN によって構築した安全な仮想ネットワークを、セキュリティ上問題のあるインターネットなどの WAN 回線から理論上独立させることができるのです。

    1-1-6.png

    VPN の利用による悪意のある第三者による盗聴・改ざんの防止

    安価なインターネット接続を専用線の代わりに利用できる

    上記のような VPN の仕組みを活用することによって、旧来は高い利用料金が必要であった専用線サービスなどを利用することなく、専用線サービスよりもさらに強固なセキュリティで、任意の拠点のコンピュータ同士の通信をインターネットを経由して行うことができます。

    特に最近では、月額数千円程度で光ファイバーや ADSL 技術を用いたインターネット接続サービスが利用可能であるため、これらの安価なサービスを、専用線と同程度またはより安全な通信目的で利用することができます。

    本来インターネットは任意のコンピュータ同士が自由に IP で通信することができる公共のネットワークですが、VPN を用いることによって、そのネットワークの中で自社専用の仮想の通信網を成立させ、その中でインターネットの危険性に憂慮することなく安全かつ安定した独立のネットワークを構築することが可能です。

    1-1-7.png

    安価で高速なインターネット接続を専用線の代わりに利用

    1.1.3 旧来の VPN ソリューションの制限事項

    旧来より、いくつかの VPN のソフトウェアやハードウェア、ソリューションが存在しており、1998 年頃からさまざまな場所で、インターネット VPN 技術やそれを応用した技術が活用されるようになりました。たとえば、下記のような VPN プロトコルが、現在でもいくつかのネットワーク製品などに組み込まれ利用されています。

    • PPTP
    • L2TP / IPSec
    • vtun
    • OpenVPN
    • SSH によるポート転送
    • その他のマイナーな VPN 規格

    しかしながら、旧来の VPN プロトコルの多くには、下記に挙げるような制限事項が存在し、そのためさまざまな状況下において、制約付きの利用を行う必要があったり、利用できないといったことがありました。

    ネットワークゲートウェイ機器の通過の困難性

    多くの企業ネットワークや一部の家庭内ネットワークでは、NAT (IP マスカレード)、プロキシサーバーおよびファイアウォールなどの装置によって、社内ネットワークとインターネットとの間の分離を行い、IP アドレスの数を節約したりセキュリティを強化したりしています。これらの処理を行う機器を「ネットワークゲートウェイ機器」と呼びます。ネットワークゲートウェイ機器は専用装置 (アプライアンス) である場合も、Linux などをインストールした高性能のコンピュータである場合もあります。

    しかしながら、旧来の VPN プロトコルの多くは、これらのネットワークゲートウェイ機器を経由して通信することができません。その原因の一つに、多くの VPN プロトコルは通信パケットをカプセル化する際に、一般的な TCP/IP プロトコルではない特殊なプロトコルのヘッダを付加することが挙げられます。たとえば PPTP と呼ばれる VPN プロトコルの場合は GRE (Generic Routing Encapsulation) プロトコルと呼ばれる非常にマイナーなプロトコルを用います。また L2TP と呼ばれる VPN プロトコルの場合は IPSec の使用が必要であり、IPSec パケットのためのヘッダが付加されます。

    これら例のように、従来の VPN プロトコルの大半は、一般的な TCP/IP のコネクション指向通信モデルとは異なるアプローチにより VPN 通信を実現しているため、多くのネットワークゲートウェイ機器、特に NAT (IP マスカレード) や、ほぼすべてのプロキシサーバーおよびファイアウォールを越えて VPN 通信を行うことができません。

    したがって、従来の VPN プロトコルの大半は利用時に VPN 接続元のクライアントコンピュータと接続先の VPN サーバーコンピュータの両側のコンピュータにグローバル IP アドレスを割り当てる必要があるか、または非常に特殊なパケットの加工を行うことができるようにカスタマイズされたネットワークゲートウェイ機器を設置する必要があります。

     

    1-1-8.png

    旧来の多くの VPN プロトコルは NAT、ルータ、ファイアウォールなどを通過するのが困難

    VPN 内で通信できるプロトコルの制限

    旧来の VPN プロトコルの多くは、レイヤ 3 のプロトコル (IP レイヤなど) や、さらに上位レイヤのプロトコル (TCP レイヤやアプリケーションレイヤなど) を限定してカプセル化しトンネリングにより通信を行います。しかし、この方式では、VPN プロトコルが個別に対応していないプロトコルを VPN 経由で通信させることができません。

    たとえば、汎用機などで現在も使用されている特殊な制御用のプロトコルや、IPX/SPX および NetBEUI などのレガシープロトコルなどを VPN 経由で使用することができない場合が多く、既存のシステムの通信を専用線の代わりにインターネット VPN を用いて伝送することが困難です。

    1-1-9.png

    旧来の IP をカプセル化する VPN プロトコルは IP パケット以外のパケットの通信ができない

    IP ルーティングが必須

    旧来の VPN プロトコルのうち、レイヤ 3 (IP レイヤ) をカプセル化して通信を行う種類のプロトコルを用いて VPN を実現する場合は、基本的に下記の選択肢のうちいずれかを選択する必要があります。

    1. VPN に参加させるすべてのコンピュータに VPN クライアントソフトをインストールし接続させる。
    2. VPN に、拠点の既存のネットワークを接続し IP ルーティングする。

    1 の方法で VPN を構築する場合、VPN に接続する可能性があるコンピュータすべてに VPN クライアントソフトウェアをインストールしておき、VPN 通信を行う場合は VPN サーバーに対して接続操作を行うことで、VPN クライアントをインストールしたコンピュータ間でのみ自由な通信を行うことができます。しかしながら、この方法では VPN 通信を行いたいコンピュータの台数が増加する程、管理に手間が掛かります。また、VPN クライアントソフトウェアをインストールすることができないコンピュータや、その他のネットワークアプライアンスや、デジタル家電製品などのネットワークに対応した機器を VPN に参加させることができません。

    2 の方法で VPN を構築すると、VPN に接続した拠点のネットワーク内のコンピュータ同士が通信することができるようになります。また、VPN クライアントソフトウェアをインストールすることができないコンピュータや、その他のネットワークアプライアンスやデジタル家電製品などのネットワークに対応した機器も、自動的に VPN に参加していることになります。しかし、この方法のデメリットとして、VPN に接続する既存のネットワークと VPN による仮想の IP ネットワークとの間で IP ルーティングが必須となってしまうことが挙げられます。

    そのため、旧来の VPN プロトコルで、リモートアクセス型の VPN や拠点間接続型の VPN を実現する場合には、既存の IP ネットワークのルータなどのルーティングテーブルの設定変更など、既存のネットワークに関する大規模な設定変更作業が必要になってしまいます。

    1-1-10.png

    IP ルーティングに対応していない機器は旧来の IP ベースの VPN を経由して通信できない

    特定プラットフォームへの依存性

    旧来の VPN プロトコルの多くは、それぞれの VPN プロトコルが対応しているプラットフォームの範囲があまり広くないという問題がありました。また複数のプラットフォーム間で利用することができても、それぞれの実装の差異によって実用上の不具合が生ずることもありました。

    さらに、一部の VPN プロトコルは特定のネットワーク機器ベンダーのハードウェアを必要としているものがあったり、ベンダー間でプロトコルの互換性が低かったりしています。

    1-1-11.png

    異なるベンダの VPN 製品同士の通信が不能

    高いコストと低い性能

    VPN ソリューション以外のネットワークセキュリティソリューションを含めて、一般にネットワーク機器やセキュリティソフトウェアの価格は非常に高価です。しかしながら、現実的には高額なコストをかけて導入したネットワークやセキュリティの製品が、実は必要とされるパフォーマンスや機能の要件を満たしていなかったというようなことは頻繁にあることです。

    特に機能および性能の面では、従来の VPN では「セキュリティの確保」という要素が最も重要であり、「ネットワークの透過性」や「通信性能」はそれほど重視されていませんでした。その理由は、旧来の VPN プロトコルが登場し始めたころは、まだブロードバンドの普及率も低く、たかだか数 Mbps から数十 Mbps 程度の回線速度が、一般の企業や家庭で入手できる最も高速なインターネット接続回線でした。

    現在では一般家庭でも数 10Mbps ~ 100Mbps のブロードバンド回線、企業のバックボーンではギガビット規模のインターネット接続回線が、数年前と比較して極めて安価に入手可能です。これらの高速な物理回線を十分効率的に使用することができる VPN ハードウェアや VPN 製品はそれほど多くないか、あっても極めて高価なネットワーク専用機器に実装されている場合がほとんどです。

    旧来の VPN プロトコルの欠点を補う新しい VPN システムの必要性

    旧来の VPN プロトコルには、上記で挙げたような問題、およびその他のさまざまな問題が含まれています。したがって、これらの問題と制限事項を解消した、高性能で信頼性の高い、柔軟な VPN システムが必要とされていました。

    1.1.4 SoftEther VPN のメリットと特徴

    SoftEther VPN は、これまでに挙げたような旧来の VPN ソリューションのさまざまな制限事項を解消すると共に、新たに革新的な多くの新機能を搭載した VPN ソフトウェアです。

    SoftEther VPN の特徴

    SoftEther VPN を活用するだけで、これまで複数のネットワークセキュリティ製品やソフトウェアを組み合わせたり、プログラミングを行い独自のツールを開発したりしなければ解決できなかったような事項の多くを、簡単な操作で実現することができます。

    SoftEther VPN は、カプセル化およびトンネリングの通信をレイヤ 2、つまり Ethernet に設定しました。SoftEther VPN を使用すると、通常の LAN カード、スイッチング HUB およびレイヤ 3 スイッチなどのネットワークデバイスをソフトウェアによって仮想的に実現し、それらの間を TCP/IP プロトコルをベースとした「SoftEther VPN プロトコル」と呼ばれるトンネルで接続することによって、これまでの製品では不可能であった柔軟性が高い VPN を構築することができます。

    SoftEther VPN の動作原理や仕組みについては 「1.4 VPN の動作原理と通信方法」をお読みください。また、「10. VPN ネットワークの構成手順および構成例」において、実際に SoftEther VPN でさまざまなネットワークを設計、構築および運用する方法が解説されています。

    1-1-12.png

    SoftEther VPN における Ethernet 上の各種ハードウェアデバイスの仮想化

    Ethernet を仮想化することによるメリット

    SoftEther VPN は、旧来の VPN プロトコルの多くと異なり、レイヤ 2 (Ethernet) を VPN 通信の対象とします。つまり、旧来のレイヤ 3 を対象とした VPN プロトコルでは、トンネルの中をカプセル化された IP パケットが流れますが、SoftEther VPN はトンネルの中をカプセル化された Ethernet パケットが流れます。

    1-1-13.png

    拠点間接続 VPN を構成する場合の旧来の VPN プロトコルと SoftEther VPN の比較

    1.1.5 NAT、プロキシサーバーおよびファイアウォールの通過

    SoftEther VPN は、「VPN Server」と「VPN Client」または「VPN Bridge」との間で、「VPN セッション」と呼ばれるトンネルを確立することによって VPN 通信を行います。

    仮想的な Ethernet ネットワークである VPN セッション内を流れるパケットは、実際にはカプセル化され物理的な IP ネットワークを流れますが、その際 SoftEther VPN は、任意の Ethernet フレームを TCP/IP プロトコルにカプセル化します。この点が旧来の VPN プロトコルの大半にはない特徴です。

    また、SoftEther VPN では VPN 通信に任意の TCP/IP ポート番号を指定して使用することができます。デフォルトでは、8888 番と 443 番 (HTTPS 用) のポートが使用されるようになっています。TCP/IP ポート番号の指定についての詳細は 「3.3 VPN Server 管理」 をお読みください。

    VPN 通信をすべて TCP/IP で行うことによって、SoftEther VPN は大半のネットワークゲートウェイ機器を経由して VPN 通信を行うことができます。ほぼすべての種類の NAT、プロキシサーバーおよびファイアウォールを通過して VPN を確立することが簡単にできます。

    これにより、これまで NAT、プロキシサーバーおよびファイアウォールなどの設定が原因で VPN を利用することが困難な環境でも、SoftEther VPN を使えば安全かつ簡単に VPN 通信を行うことができます。

    特に、VPN を導入するたびに、既存のファイアウォールの設定に穴を開ける処理を必要としなくなったため、ネットワーク管理者の負担の軽減およびファイアウォールの設定変更によるネットワークセキュリティの低下の防止に役立ちます。

    また、VPN Client をインストールしたノート PC を携帯すれば、外出先の駅や空港、ホテルなどの無料のインターネット接続スポットなどを経由して、社内 LAN に安全にリモートアクセスすることができます。多くの無料のインターネット接続スポットには NAT やファイアウォール、トランスペアレントプロキシサーバーなどが導入されているため、旧来の VPN プロトコルを利用することができない場合が多いですが、SoftEther VPN であれば安心して使用することができます。

    1-1-14.png

    SoftEther VPN による NAT、プロキシサーバーおよびファイアウォールの通過

    1.1.6 安定性とセキュリティ

    前述のように、SoftEther VPN は VPN 通信において TCP/IP プロトコルのみを使用し、任意の Ethernet フレームをトンネリングすることが可能です。この際、SoftEther VPN は VPN 通信を行う際に、すべてのデータを「SSL (Secure Socket Layer)」と呼ばれるインターネット業界標準の暗号化プロトコルによって暗号化します。この際、システム管理者が希望する任意の暗号化アルゴリズムと電子署名アルゴリズムが使用されます。詳しくは、「3.3 VPN Server 管理」 をお読みください。

    SoftEther VPN では、通信の暗号化だけではなく、ユーザー認証やサーバー認証に関するセキュリティも強化されています。企業などで使用される Radius サーバーや NT ドメイン / Active Directory などを用いたユーザー認証や、X.509 と RSA を使用した証明書認証にも対応しています。その他、一部の高セキュリティが必要とされる用途で利用されているスマートカードにも対応しました。詳しくは 「1.5 セキュリティの強化」 をお読みください。

    VPN 通信において実際に物理的な IP ネットワーク上を流れ、ユーザー認証などのセキュリティチェックや VPN 通信パケットの伝送などに使用されるプロトコルを「SoftEther VPN プロトコル」と呼びます。SoftEther VPN プロトコルはすべての通信内容を SSL で暗号化するだけでなく、VPN Server と VPN Client や VPN Bridge との間で確立される SSL のコネクションを複数本同時に確立したり、一定間隔でタイミングをずらして再接続したりすることによって、一定期間で TCP/IP コネクションが切断されてしまうような一部の特殊なネットワーク機器を経由しても安定して通信を行うことができます。また、パケットロス率の高い電話回線や、一部の ADSL、PHS あるいは無線 LAN などの環境で、安定した VPN 通信を行うことができます。詳しくは、「4.4 VPN Server への接続方法」 などをお読みください。

    1-1-15.png

    SoftEther VPN プロトコルによるユーザー認証

    1.1.7 高速な通信スループット

    旧来の VPN プロトコルの多くは、セキュリティの確保のみに注力しているため、実際に VPN 通信を行った場合の通信スループットが高くない傾向が見受けられます。

    SoftEther VPN は、ISDN や PHS などの低速回線から、現在最も普及している 100Mbps および 1.0Gbps の高速回線上においても十分なパフォーマンスを発揮できるように最適化されています。たとえば、現在では安価に入手できる Pentium 4 2.8GHz 程度の性能のコンピュータを VPN Server にした場合でも、数百 Mbps のスループットが余裕で発揮できます。

    また、以前いくつかの論文などで論じられていた、TCP/IP プロトコルを VPN におけるトンネル通信に使用した場合の再送発生によるスループットの低下および著しい遅延の発生などの問題を、複数の TCP/IP コネクションを VPN Server と VPN Client または VPN Bridge 間で確立して並列に通信する技術によって改善しています。詳しくは、「4.4 VPN Server への接続方法」 をお読みください。

    1.1.8 高度な機能と拡張性

    旧来の VPN 製品では、VPN 通信の実現のみを行うものが多く、たとえば VPN 通信の内部でパケットフィルタリングを行ったり、VPN 内を流れるすべてのパケットをログに保存したり、高い柔軟性を持ったセキュリティポリシーを適用したりするといった高度な機能を持っているものは非常に少ないのが現状でした。

    SoftEther VPN は VPN Server や VPN Client などのソフトウェア内部には非常に高度な機能が実装されています。たとえば、下記に挙げられるような機能を簡単に設定して利用することができ、VPN 通信の制限やネットワーク管理およびその他の目的で活用することが可能です。

    • SoftEther VPN プロトコルの通信パラメータの柔軟な調整
    • VPN サーバーの動作ログやすべてまたは一部のパケットの内容のログへの保存
    • 高度なセキュリティ機能
    • VPN 通信のモニタリング
    • クラスタリングによる大規模環境への対応
    • 柔軟なユーザー認証
    • レイヤ 3 スイッチング機能、仮想 NAT および仮想 DHCP サーバー機能
    • 管理の自動化
    • その他

    上記の機能に関する詳細は、この章の他の項目や 「 2. SoftEther VPN 全般マニュアル」、「3. SoftEther VPN Server マニュアル」、「 4. SoftEther VPN Client マニュアル」 などに詳しく記載されています。

    また、SoftEther VPN は上記の大半の機能を特定のハードウェアに依存することなく、ソフトウェアとして実装しています。SoftEther VPN の内部のプログラムの構造は精細にモジュール化されており、今後新しい機能を追加することも容易であり、ハードウェアベースの VPN ソリューションと比較しても、より高い拡張性を持っています。

    1.1.9 プラットフォームへの非依存性と移植性

    SoftEther VPN は現在さまざまなプラットフォーム上で動作するよう、各種のオペレーティングシステムや CPU の組み合わせに対応しています。一部の制限事項を除き、SoftEther VPN は Windows、Linux、FreeBSD、Solaris および Mac OS X などにおいてプラットフォームや CPU の種類に依存しない同一の動作を行います。

    SoftEther VPN のプログラムコードは移植性の高い C 言語で記述されており、またそのプログラミングにおいては特定のオペレーティングシステムに依存しないように十分配慮して実装されています。SoftEther VPN は、現在 「仕様」 で示されている動作環境をサポートしていますが、今後さらに様々なオペレーティングシステムや CPU、ハードウェアに対応していくことが可能です。また、ルータやファイアウォールなどのネットワークアプライアンスへの組み込みも容易に行うことができます。

    これらのさまざまな環境で動作する SoftEther VPN 同士は、インターネットを経由して、互いに確実に相互接続することができます。したがって、SoftEther VPN を用いた VPN を構築しておけば、将来 SoftEther VPN をサポートする機器やシステムが増えた場合に、それらのシステムとの間の相互接続性が技術的に維持されることになります。