自宅ネットワークなのにポート解放が出来ない?

自宅ネットワークなのにポート解放が出来ない?


ネットワーク MAP-E IPv6 IPv4 NAT CGNAT DS-lite

前回、WireGuardを用いてVPNの構築を行いました。

V6プラス環境で割り当てされたポートを指定してポートマッピングしてあげる事で通信できるようにしてあげたのですが、実はインターネットの契約状況によって、ポートの許可が出来ないケースがあります。

それを少し解説していきます。

MAP-EとDS-lite

インターネットを契約する際にIPoE方式の回線で使われる分類としてMAP-EやDS-liteという形態があるのはご存知でしょうか。

ただ単にインターネットを利用したい人達にとっては、特に気にする事もないのですがネットワーク技術者にとっては理解しておく事で通信上の問題の切り分けがしやすくなります。

この2つの形態は一体なんなのかというと、簡単にいうとIPv4アドレスの枯渇を防ぐための手法です。

インターネットに接続するためには、プロバイダから世界中で重複しない唯一のグローバルIPアドレスを貰う必要があります。

IPv6という新しい形態のアドレスも生み出されましたが、元々作られていたアプリケーションやWebサイト、サーバーなどの機器類がIPv4にしか対応していないケースも非常に多いため、依然としてIPv4アドレスの需要は高いままです。

そこで生み出されたのがMAP-EとDS-liteという通信形態です。

この2つの通信形態はIPv4パケットをIPv6パケットの箱に包んであげる事で、IPv6回線でも問題なくIPv4パケットでの通信が出来るようになっています。

▫️MAP-E

MAP-Eとは、IPv4アドレスを複数のネットワークで共有して、通信そのものは割り当てされたポートで区分けする方法です。

一般的な意味で使われているNAT(NAPT)は、複数のプライベートIPアドレスが1つのグローバルIPに対して変換されます。ポート番号を同時に変換する事で、LAN内で複数の通信が発生してもちゃんと区別して通信が出来るという事ですね。

効率的にIPアドレスを利用出来ているかと思いきや、実は無駄が生じています。 1つのIPv4アドレスに対して利用できるポート数は65535とかなりの数があり、到底一つのネットワーク内で使い切れる量ではないという事です。

(厳密にいうとウェルノウンポートや予約ポートが存在するので利用できる範囲はもっと少ないですが)

そこで誕生したのがMAP-Eです。

ポートの利用できる範囲を制限して、1つのグローバルIPを色んな人と共有して使ってもらっています。

ですので、本来世界中に唯一の値であるはずのグローバルIPですが、この形態で契約をしていると自分と同じIPで異なる割り当てポートを持った人が他にも存在しているという事ですね。

また、MAP-Eの特徴として、「NATを行っているのは各家庭に設置されているルーター」という事です。 自分のネットワーク内でNAT変換作業が終わってから、IPv6パケットでカプセル化されてインターネットの世界に流れていきます。

mape

▫️DS-lite

続いてDS-liteです。

こちらも実は、①IPv4アドレスを複数のネットワークで共有している ②ポート番号で通信を区別している という点は実は同じです。MAP-Eと同じ理屈でIPv4アドレスを効率的に活用しています。

では何が大きく異なるのかというと、「NAT作業をプロバイダ側で行っている」という所です。

DS-liteはまず、内部ネットワークからインターネットへの通信が発生した際に、自分達のネットワークではNATをおこなわずに、IPv6の箱にIPv4パケットをそのまま包んで送付します。

パケットを受け取ったプロバイダは、そのままIPv4パケットだけを取り出してまとめてNATを行います。ここでのNATをCGNAT(キャリアグレードナット)といいます。

dslite

「NATされる場所が違うだけ?」「むしろ、プロバイダ側が処理を肩代わりしてくれるならDS-liteの方がお得では?」と思う方もいるかもしれません。

しかし、重大な落とし穴があります。

それは、CGNATされる環境ではポートの解放が自由に出来ないという事です。

以前行ったVPNの構築では、制限されているながらも利用可能なポートはルーターの管理画面から確認できたので、ポートを選び解放する事でVPNの構築を行う事ができました。

しかし、DS-lite方式ではそうはいきません。

プロバイダ側がCGNATの役割を担っているため、ポートの管理も完全にプロバイダが行っているのです。

自由に利用者側で5000番のポートを解放するといった利用は出来ない事になります。

「私はポート解放とかしないから関係ない」と思った方もいるかもしれませんが、実は通信上の制限も発生します。

それは、P2P方式(例:オンラインゲーム)との相性が最悪な事です。

ゲーム機には「NATタイプ」というネットの繋がりやすさを示す指標があるのですが、CGNATを経由すると、TypeDやType3といった厳しい判定が出やすくなります。

Nintendo SwitchやPlayStationのゲームで、なぜか自分だけマッチングが成功しない、エラーで毎回落ちるという症状が出ている場合は契約している回線がDS-lite方式ではないか疑った方がいいかもしれません。