2021/8/23 SoftEther VPN 関係の学術実験サービスのシステム障害について

    2021 年 8 月 23 日 (月) 8:45 頃から 10:55 頃までの間、SoftEther VPN プロジェクトにおいて学術実験目的で運用している以下のサービスに障害が発生していました。

    本件につきまして、これらの学術実験サービスを利用されている方々にご迷惑をおかけして、誠に申し訳ございません。このページでは、障害の状況と、今後同様の状況が発生した際の回避策をお知らせします。

    なお、今回の障害により影響を受けるのは、上記の学術実験サービスを利用して VPN 通信を実現されているユーザーに限られます。

    SoftEther VPN Server オープンソース版、または SoftEther VPN Server オープンソース版をもとに開発された製品版 PacketiX VPN Server を、これらの学術実験サービスの中央サーバに依存しない方法で使用する VPN 通信は影響を受けません。

    発生原因について編集部分

    上記の学術実験サービスが参照している DDNS データベースのサーバを収容するネットワークスイッチが停電の際に故障し、これを参照しているサービスが動作できなくなったことが原因です。

     

    今回の障害の影響範囲について

    今回の障害により、オープンソース版「SoftEther VPN Server」をご利用の方、および、SoftEther VPN Serverを元に製品化されている製品版「PacketiX VPN Server」をご利用の方のうち、上記 3 種類の学術実験サービスのいずれかを利用されて通信をされている方に限り、これらのサービスの仲介を受けた通信を行うことができないという影響が発生していました。これらの学術実験サービスは、無償・無保証のサービスであり、「PacketiX VPN Server」製品に含まれるものではありませんが、PacketiX VPN Serverにはこれらのサービスを利用するクライアント機能が含まれています。

    これらの学術実験サービスの一部のユーザの皆様のうち一部の方々には、これらの学術実験サービスを商業用途などの高い安定性が求められる用途に使用されている方もいらっしゃるかも知れません。しかし、これらの学術実験サービスを商業用途などの高い安定性が求められる用途に使用されることは、禁止されていませんが、今回のような障害が発生した場合にその安定性が損なわれる問題が発生します。

    オープンソース版「SoftEther VPN Server」または製品版「PacketiX VPN Server」を使用して、商業用途などの高い安定性が求められる用途のために、外部要因による影響を受けない安定した VPN を構築されたい場合は、以下の回避策を参考としていただき、これらの学術実験サービスに依存しないような設定を行っていただくことをお勧めします。

    回避策について

    NAT トラバーサルサービスまたは VPN Azure サービスを経由して通信をすることができない原因およびその回避策編集部分

    VPN サーバとなっているコンピュータが、NAT やファイアウォールの背後に設置されており、NAT やファイアウォールにおけるポートの外部に対する開放を行っていない場合、問題が発生します。

    オンラインマニュアルの共通事項の説明のとおり、通常、VPN サーバとなっているコンピュータを、外側がグローバル IP アドレスを持った NAT や、ファイアウォールの内側のプライベート IP ネットワーク上に VPN Server を設置する場合は、NAT やファイアウォールの設定を変更して、特定のポート番号に対する TCP/IP 接続のみ、プライベート側の VPN Server をインストールしたサーバーコンピュータに転送するように設定する必要があります。

    通常、学術実験サービスである NAT トラバーサルサービスまたは VPN Azure サービスを利用されていた場合は、上記のような NAT またはファイアウォールの設定が正しく行われていない場合でも、NAT トラバーサルサービスまたは VPN Azure サービスを経由してインターネット上から VPN サーバに接続をすることができる場合があります (この際、Windows 版の GUI クライアントでは、NAT トラバーサルサービスは恒久的な安定動作に耐えることができないため、本来の手法である NAT やファイアウォールにおけるポート開放を行うよう促すメッセージが表示されます)。

    しかし、NAT トラバーサルサービスまたは VPN Azure サービスに今回のような障害が発生している場合は、NAT トラバーサルサービスまたは VPN Azure サービスを経由して、NAT やファイアウォールの背後にある VPN サーバがインターネット側からの接続を受け入れることができません。

    解決策としては、以下の 2 つの方法があります。

    • NAT トラバーサルサービスまたは VPN Azure サービスに関する障害が発生するまで待つ (障害が回復すれば、自動的に接続できる状態となります。しかし、今後もこれらのサーバに対する外部からの到達性は、NAT トラバーサルサービスまたは VPN Azure サービスに依存することとなり、再び障害が発生すると、再度、通信に影響が発生することがあります)。
    • オンラインマニュアルの手順どおり、VPN サーバとなっているコンピュータを、外側がグローバル IP アドレスを持った NAT や、ファイアウォールの内側のプライベート IP ネットワーク上に VPN Server を設置する場合、NAT やファイアウォールの設定を変更して、特定のポート番号に対する TCP/IP 接続のみ、プライベート側の VPN Server をインストールしたサーバーコンピュータに転送するように設定する。これにより、NAT トラバーサルサービスまたは VPN Azure サービスに依存することはなくなりますので 障害が発生している場合でも、影響を受けることなく通信が可能です。

     

    SoftEther Dynamic DNS (DDNS) サービスを使用して通信をすることができない原因およびその回避策

    DDNS サービスは、VPN サーバを非固定の IP アドレス上で動作させる際に便利です。

    ドメイン名が *.softether.net の DDNS サービスは、学術実験目的で無償かつ無保証で提供されております。今回のケースのように本 DDNS サービスに障害が発生している場合は、その間、ドメイン名が *.softether.net の DDNS ホスト名を使った名前解決ができなくなります。

    一時的な解決策としては、以下のような方法があります。

    • SoftEther Dynamic DNS (DDNS) サービスに関する障害が発生するまで待つ (障害が回復すれば、自動的に接続できる状態となります。しかし、今後もこれらのサーバに対する外部からの到達性は、DDNS サービスに依存することとなり、再び障害が発生すると、再度、通信に影響が発生することがあります)。
    • VPN クライアント側で、VPN サーバの DDNS ホスト名の代わりに、IP アドレスを指定する。
    • SoftEther Dynamic DNS (DDNS) 以外の他の DDNS サービスを利用する。

    恒久的な対策としては、以下のような方法があります。

    • VPN Server で固定 IP アドレスを使用する。
    • VPN Server で非固定の IP アドレスを使用したい場合は、複数の DDNS サービスを組み合わせて利用し、冗長性を確保する。冗長性の確保の方法としては、単に DDNS サービスを複数利用しておき、障害発生時には接続元の側で切替える方法のほか、独自のドメインの CNAME レコードを作成し、いずれかの DDNS サービスのホスト名を指定しておいた上で、一方の DDNS サービスで障害が発生した場合には、正常動作している別の DDNS サービスのホストを CNAME レコードで指し示すようにする。

    上記学術実験サービスについて (ご注意・免責事項)編集部分

    以下の 4 つの学術実験サービスは、学術研究を目的として、無償かつ無保証で提供されている、開発途上のサービスです。

    これらの学術実験サービスのクライアント機能は、SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品に組み込まれています。

    これらの学術実験サービスを商業用途などの高い安定性が求められる用途に使用されることは、禁止されていませんが、今回のような障害が発生した場合に安定性上の問題が発生するなどのリスクがあります。商業用途などの高い安定性が求められる用途においては、上記の回避方法などにより、これらの学術実験サービスに依存せずに VPN 接続が行われるように対策されることをお勧めします。

    しかし、これらの学術実験サービスは SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品の一部ではありません。これらの学術実験サービスを経由すれば、NAT やファイアウォールの背後にある VPN サーバに、NAT やファイアウォールの設定を変更することなく接続することができますが、これらの学術実験サービスに今回のような障害が発生している期間中は、このような接続ができなくなります。

    このように、これらの学術実験サービスに依存する形で VPN を構築している場合は、これらの学術実験サービスに今回のような不可避な障害が発生した場合は、毎回、このような VPN 通信も影響を受けることになります。

    SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品は、自前で設置する VPN Server のほかは、いかなる中央サーバサービスにも依存しない VPN を構築することができるソフトウェアです。SoftEther VPN オープンソースソフトウェアまたは PacketiX VPN 製品は、上記に記載した回避策により、これらの学術実験サービスに依存することなく VPN 通信を実現することが可能です。