NAT / CGNAT

なぜ対戦だけ
繋がらない?

実践編・図解つき

速度テストの数字はいいのに、対戦ゲームや通話だけ調子が悪い——それは「速さ」ではなく「繋がりやすさ」の問題。犯人はだいたい、NATまわりの4パターンのどれかです。

「速い」と「繋がる」は別の話

動画もWebもサクサクなのに、「対戦ゲームで特定の相手とだけ繋がらない」「Discordの通話に自分だけ入れない」「ポート開放したはずなのに効かない」——こういう症状は、回線の速さとはまったく関係ない場所で起きています。

原因は、動画やWebが「サーバーから受け取るだけ」の通信なのに対して、対戦や通話は相手と直接つながる通信(P2P)を使うから。P2Pは、お互いの「外に出る窓口」を教え合ってそこへ直接データを撃ち込む方式で、この窓口の仕組み=NATのタイプ次第で、成立したりしなかったりします。P2Pとホールパンチングの仕組み自体は仕組み編の記事で図解しています。

この記事では、「繋がらない」を引き起こす代表的な4パターンと、自分の家がどれに当てはまるかを自分で確かめる方法をまとめます。まずは自分の症状がどの犯人っぽいか、下の早見表で当たりをつけてください。

特定の相手とだけ繋がらない① or ②(相手側の場合も)
ポート開放が効かない④ → ② → ③ の順に疑う
通話に自分だけ入れない・声が届かない① or UDP遮断
自宅サーバー・外からVPNが繋がらない② or ③ or ④
会社・学校・公共Wi-Fiで対戦/通話が全滅施設側のUDP遮断(変更不可)
テザリング・モバイルホームルーターで対戦が不調①+②(仕様。固定回線が確実)
①シンメトリックNAT ②CGNAT ③v6プラス系 ④二重ルーター——それぞれ何者で、どう直すかは、このすぐ下から順番に図解します。
※「相手側の場合も」= P2Pは双方の環境で決まるため、自分が正常でも相手がパターン①②だと繋がらないことがあります。
つまずきの4パターン
1
シンメトリックNAT——窓口を毎回変えるタイプ

NATには「同じ発信元なら、通信相手が変わっても同じ窓口を使い回すタイプ(コーンNAT)」と、「行き先ごとに窓口を毎回変えるタイプ(シンメトリックNAT)」があります。P2Pは「教えてもらった窓口に撃ち込む」方式なので、窓口が毎回変わる後者だと相手の弾が届きません。

コーンNAT:誰と話すときも同じ窓口 あなたの ルーター 窓口5000 🧑 相手A 🧑 相手B 教えられた窓口5000に撃てば届く ○ シンメトリックNAT:行き先ごとに窓口が変わる あなたの ルーター 窓口5000 窓口5001 「窓口は5000だよ」と伝わる 🗄️ マッチングサーバー 🧑 相手 相手は教えられた5000に撃つ → 実際に開いている窓口は5001 → 届かない
起きやすい症状
特定の相手とだけ何度やっても繋がらない(相手側のNATも厳しい組み合わせ)/通話に自分だけ入れない・声が届かない/マッチングが遅い・ホストになれない

スマホのテザリングや、モバイル回線のホームルーターは仕様上ほぼ必ずこれです。固定回線では、一部のルーターの仕様や次のCGNATと重なって起きます。

2
CGNAT——プロバイダーの中の共有IP

CGNAT(キャリアグレードNAT)は、プロバイダーの中で複数の契約者が1つのグローバルIPを共有する仕組みです。あなたのルーターに届いているのはプロバイダーが内部用に振ったIPで、外から自分の家を直接指名する手段がなくなります

🏠 あなたの家 🏠 よその家 🏠 よその家 プロバイダーの局舎 ここで共有NAT(CGNAT) グローバルIP 1個を3軒で共有 🌐 インターネット 外からの呼び出し 「3軒のどこ宛?」が分からないので、外からの呼び出しは局舎で捨てられる → だからCGNATでは、家のルーターでポート開放しても届かない
起きやすい症状
ポート開放が設定しても一切効かない/自宅サーバー・外からのVPN接続ができない/P2Pの成功率が下がる(プロバイダー側NATがシンメトリック動作の場合はパターン1も併発)

これは家の設定では直せません。ルーターをいくらいじっても無駄なので、心当たりがあればプロバイダーの「グローバルIPオプション」を調べるのが近道です(CATVなら「グローバルIPを使いたい」とカスタマーセンターに伝えるのが早いです)。

3
v6プラス系のIPv4共有——ポート開放だけ制限あり

フレッツ光系(ドコモ光・ソフトバンク光など)で主流の「v6プラス」「transix」等のIPoE接続は、1つのグローバルIPv4アドレスを複数の契約者で分け合います。CGNATと違って見た目は普通のグローバルIPですが、使えるポート番号が自分に割り当てられた分(数百個)だけに制限されています。

1つのグローバルIP(例:203.0.113.5)のポート0〜65535番を、契約者で分け合う Aさんの分 あなたの分 例:10000〜10240番 Bさんの分 0番 65535番 ○ 自分の範囲内のポート 対戦・通話のP2Pはここで普通に成立する ✕ 80番・25565番など 範囲外の番号指定は使えない 自宅サーバー・番号指定のポート開放だけができない(対戦・通話は問題なし)
実害の範囲
対戦・通話のP2Pはほぼ問題なく通ります。困るのはポート開放を使う用途だけ:自宅サーバーを80番で公開したい、マイクラサーバーを25565番で立てたい——こういう「番号指定」ができません。契約がv6プラス系かどうかは、プロバイダーのマイページや契約書類の「IPoE」「v6プラス」「MAP-E」「DS-Lite」といった表記で確認できます。なぜこうなるのか・速さと両取りする対処法はIPv6の落とし穴の記事で詳しく図解しています。
4
二重ルーター——家の中でNATを2回通る

ONU一体型ルーターの下に市販ルーターを繋ぐと、家の中でNATを2回通る「二重ルーター」になります(ONUや一体型って何?という人は先にきほん編をどうぞ)。P2P自体は意外と通るのですが、UPnP(ゲームやアプリが自動でポートを確保する仕組み)が2段目まで届かず壊れ、ポート開放も2台両方に設定しないと効きません

💻 PC ルーター② 市販(NAT) ルーター① ONU一体型(NAT) 🌐 インターネット 「ポート開けて」(UPnP) ②は開ける ○ ①には伝わらない ✕ 外からの接続は①で止まる 直し方:手元側のルーター②(市販)をブリッジモードにして、NATを①の1回だけにする
起きやすい症状
ポート開放を設定したのに効かない/UPnP対応のはずのゲームでNATエラーが出る/オンライン対戦が「たまに」不安定

直し方は、手元側の2台目(あとから買い足した市販ルーター)をブリッジモード(アクセスポイントモード)に切り替えるのが基本です。回線側の1台目(ONU一体型)はひかり電話などの機能を抱えていてルーター機能を切れないことが多いので、触るのは2台目の方。Wi-Fiは2台目がそのまま担当してくれます。(どうしても市販ルーター側にNATをやらせたい上級者は、1台目のPPPoEブリッジ機能を使う方法もありますが、契約形態によっては使えません)

自分の家がどれか、確かめる方法

ルーターの管理画面でWAN側IPアドレスを1つ見るだけで、②と④はほぼ確定できます。

コマンド派の人へ(管理画面のパスワードが分からないとき)
Windowsのターミナルで tracert -d -h 3 8.8.8.8 を実行して、1行目と2行目を見てください。両方とも上の「④二重ルーター確定」に書いた範囲のアドレス(192.168.x.x10.x.x.x172.16.x.x〜172.31.x.x)で、応答が数ms以内なら、二重ルーターの可能性大です。
▼ ルーターが1台の家はこう見えます(例)
C:\Users\あなた> tracert -d -h 3 8.8.8.8 8.8.8.8 への経路をトレースしています (ホップ数は最大 3): 1 1 ms 1 ms 1 ms 192.168.11.1 ← 家のルーター(1台目) 2 12 ms 11 ms 12 ms 114.160.xx.xx ← 2行目でもう家の外(プロバイダー)=正常 3 13 ms 12 ms 13 ms 118.23.xx.xx
▼ 二重ルーターの家はこう見えます(例)
C:\Users\あなた> tracert -d -h 3 8.8.8.8 8.8.8.8 への経路をトレースしています (ホップ数は最大 3): 1 1 ms 1 ms 1 ms 192.168.11.1 ← ルーター②(市販) 2 2 ms 1 ms 2 ms 192.168.0.1 ← 2行目もまだ家の中のアドレス=二重ルーター 3 12 ms 11 ms 12 ms 114.160.xx.xx
※プロバイダーの網内(特にCATV網)は内部にこの範囲のアドレスを使うことがあるので、2行目の応答が5ms以上かかっているなら網内設備の可能性もあります。確定はルーター管理画面で。
確定したら:パターン別・次にやること

診断おつかれさまでした。自分の家のパターンが分かったら、次にやることはこれです。

② CGNATだった
家の設定では直せません。ルーターをいじる前に、プロバイダーの「グローバルIPオプション」を調べて問い合わせを(CATVなら「グローバルIPを使いたい」とカスタマーセンターに伝えるのが早いです)。→ 詳しくは上の②の章
④ 二重ルーターだった
2台目(あとから買い足した市販ルーター)をブリッジモード(アクセスポイントモード)に切り替え。Wi-Fiはそのまま2台目が担当してくれます。→ 詳しくは上の④の章
①っぽい(シンメトリックNAT)
買い替えの前に、まず環境の確認から。
(1) テザリング・モバイルホームルーターなら家側では直せません(キャリア側の仕様。ルーターを買い替えても無意味、固定回線化が唯一の道)
(2) 固定回線なら、上の「確かめる方法」でWAN側IPを見て②CGNATが併発していないか確認(②があるならルーター買い替えは無意味です。先に②の解決を)
(3) 自分のルーターが原因と絞り込めたら、管理画面でUPnPが有効か確認。ゲームの使うポートが分かるなら手動ポート開放でもOK
(4) それでも改善しなければ、最後の手段として機種の買い替えを検討 → 詳しくは上の①の章
③だった(v6プラス系)
対戦・通話は実はほぼ大丈夫。困るのは番号指定のポート開放だけなので、必要なら固定IPオプションやIPv4 PPPoE併用を検討。→ 詳しくはIPv6の落とし穴の記事
どれでもなかった
NAT以外が原因かもしれません。P2Pは相手側の環境で失敗することもあります(自分が正常でも繋がらない)。→ 仕組み編の後半へ
ちなみに:なぜこのサイトに「NAT自動診断」が無いのか

ブラウザからNATタイプを自動判定するサイトも存在しますが、ブラウザにできる検査には原理的な限界があり、いちばん人口の多いv6プラス系(パターン③)や二重ルーター(パターン④)を「問題なし」と誤判定してしまいます。当サイトは根拠を出せない数字や判定を見せない方針のため、確実に確かめられる方法(上のWAN IP確認)の解説に徹しています。

回線の「速さ」のほうも、測っておこう。
今すぐ測定