私の会社ではパソコンに事前共有キーなどのVPN接続設定を行うことで、自宅のインターネットからでも社内ネットワークにアクセスできるようになっています。
この仕組みを導入してから5年程経過しており、一部ルーターの不具合で極端に速度が落ちたり、セキュリティの仕様で接続ができないといったケースもありましたが、概ねトラブルはなく使えていました。
ところが、ここに来てNURO光を使っている社員から接続ができないという問い合わせがありました。エラーの内容は下記の通りです。
リモートアクセスサーバーの名前を解決できなかったため、リモート接続は行われませんでした。
その社員は入社して初めて使用するということだったのでFWの設定かなと思い、プロバイダに接続方式を伝えたところ、ルーターの交換で対応してもらったとのこと。
その件はそれから連絡がないので無事に解決したようなのですが、別の社員も最近NURO光に切り替えてそれから使えなくなったらしく、プロバイダによるとMAP-E方式に対応している必要があるとかなんとか。
MAP-E方式とやらを初めて耳にしたので、どういったことが起こっているのか調べてみます。
MAP-E方式とは
こちらはNURO光が従来のデュアルスタック方式からMAP-E方式に切り替えたという案内です。2024年9月なので結構前ですし、よくここまでトラブルなくできていたなと。
MAP-E方式はIPv6を基本としつつ、IPv4のパケットも内包しているのでIPv6とIPv4の両方に対応できる接続方式で、IPv4 over IPv6トンネリング技術が使われています。
ただ、NURO光の案内にもある通り、PPTPやSCTPといった特定のプロトコルを利用するサービスや、特定ポートを使用するサービス、IPv4グローバルアドレスを共有するネットワークでは利用できないサービスなどは利用できなくなるととのこと。
VPNサービスの方はこの説明を根拠に使用できないと言っていて、NURO光側もMAP-E方式から従来の方式に戻すことはできないということで八方塞がりとなりました。対症療法としてモバイルルーター使って接続してくれと伝えました。
なぜL2TP/IPsecが使えないのか
Copilotに聞いてみました。
MAP-Eでは1つのグローバルIPv4アドレスを複数ユーザーで共有し、各ユーザーに使ってよいポート番号の範囲(ポートセット)が割り当てられます。範囲外のポートは外向き通信に使えません。
L2TP/IPsecだと、IKE (鍵交換) にUDP 500、NATトラバーサルにUDP 4500、暗号化された実データをESP (IPプロトコル番号 50) を主に使うのですが、割り当てられたポート番号の範囲にこれらのポート番号が含まれていないとIKEフェーズが成立せずにVPNセッションが張れず、ESP自体が通らない場合があります。
また、MAP-EではプライベートIPv4アドレスをパブリックIPv4アドレスに変換するNAT44を採用していることが多く、その先にプロバイダ側のCGN (共有IPv4+ポート制限) が必要な二段構成になっています。
一方で、IPsecとNATの併用は困難です。IPsecがIPヘッダを暗号化して保護する設計なのに対し、NATはIPヘッダを読み取り書き換える技術であるためです。これを解決するためにNATトラバーサルというIPsecの拡張技術がありますが、UDP 4500を使うためポートセットになければ使えません。
とりあえず根本的な解決には至りませんでしたが勉強になりました。
Copilotは下記のリンクを参考に回答していたようです。



コメント