動画もWebもサクサクなのに、「対戦ゲームで特定の相手とだけ繋がらない」「Discordの通話に自分だけ入れない」「ポート開放したはずなのに効かない」——こういう症状は、回線の速さとはまったく関係ない場所で起きています。
原因は、動画やWebが「サーバーから受け取るだけ」の通信なのに対して、対戦や通話は相手と直接つながる通信(P2P)を使うから。P2Pは、お互いの「外に出る窓口」を教え合ってそこへ直接データを撃ち込む方式で、この窓口の仕組み=NATのタイプ次第で、成立したりしなかったりします。P2Pとホールパンチングの仕組み自体は仕組み編の記事で図解しています。
この記事では、「繋がらない」を引き起こす代表的な4パターンと、自分の家がどれに当てはまるかを自分で確かめる方法をまとめます。まずは自分の症状がどの犯人っぽいか、下の早見表で当たりをつけてください。
※「相手側の場合も」= P2Pは双方の環境で決まるため、自分が正常でも相手がパターン①②だと繋がらないことがあります。
NATには「同じ発信元なら、通信相手が変わっても同じ窓口を使い回すタイプ(コーンNAT)」と、「行き先ごとに窓口を毎回変えるタイプ(シンメトリックNAT)」があります。P2Pは「教えてもらった窓口に撃ち込む」方式なので、窓口が毎回変わる後者だと相手の弾が届きません。
スマホのテザリングや、モバイル回線のホームルーターは仕様上ほぼ必ずこれです。固定回線では、一部のルーターの仕様や次のCGNATと重なって起きます。
CGNAT(キャリアグレードNAT)は、プロバイダーの中で複数の契約者が1つのグローバルIPを共有する仕組みです。あなたのルーターに届いているのはプロバイダーが内部用に振ったIPで、外から自分の家を直接指名する手段がなくなります。
これは家の設定では直せません。ルーターをいくらいじっても無駄なので、心当たりがあればプロバイダーの「グローバルIPオプション」を調べるのが近道です(CATVなら「グローバルIPを使いたい」とカスタマーセンターに伝えるのが早いです)。
フレッツ光系(ドコモ光・ソフトバンク光など)で主流の「v6プラス」「transix」等のIPoE接続は、1つのグローバルIPv4アドレスを複数の契約者で分け合います。CGNATと違って見た目は普通のグローバルIPですが、使えるポート番号が自分に割り当てられた分(数百個)だけに制限されています。
ONU一体型ルーターの下に市販ルーターを繋ぐと、家の中でNATを2回通る「二重ルーター」になります(ONUや一体型って何?という人は先にきほん編をどうぞ)。P2P自体は意外と通るのですが、UPnP(ゲームやアプリが自動でポートを確保する仕組み)が2段目まで届かず壊れ、ポート開放も2台両方に設定しないと効きません。
直し方は、手元側の2台目(あとから買い足した市販ルーター)をブリッジモード(アクセスポイントモード)に切り替えるのが基本です。回線側の1台目(ONU一体型)はひかり電話などの機能を抱えていてルーター機能を切れないことが多いので、触るのは2台目の方。Wi-Fiは2台目がそのまま担当してくれます。(どうしても市販ルーター側にNATをやらせたい上級者は、1台目のPPPoEブリッジ機能を使う方法もありますが、契約形態によっては使えません)
ルーターの管理画面でWAN側IPアドレスを1つ見るだけで、②と④はほぼ確定できます。
-
1まずルーターの管理画面のアドレスを調べます。Windowsのスタートボタンを右クリック→「ターミナル」で ipconfig と打つと、「デフォルト ゲートウェイ」の欄に出てくる番号がそれです(これが一番確実)。実際にはこんな画面が出ます:C:\Users\あなた> ipconfig Windows IP 構成 イーサネット アダプター イーサネット: 接続固有の DNS サフィックス . . . . .: IPv4 アドレス . . . . . . . . . . . .: 192.168.11.5 サブネット マスク . . . . . . . . . .: 255.255.255.0 デフォルト ゲートウェイ . . . . . . .: 192.168.11.1 ← これがルーターのアドレス目安として、主要メーカーの初期アドレスはだいたい決まっています:
・バッファロー → 192.168.11.1
・NEC(Aterm) → 192.168.10.1
・TP-Link → 192.168.0.1
・ASUS → 192.168.50.1
そのアドレスをブラウザに入力してアクセス(初期パスワードは本体裏のシールにあることが多いです)。 -
2「WAN」「回線情報」「インターネット」等の項目にあるIPアドレスを見る。
-
3そのWAN側IPアドレスを、次の表に当てはめます。
② CGNAT確定:
・100.64.0.0 〜 100.127.255.255(最初が「100.」で、2番目の数字が64〜127のもの。例:100.72.15.8)
④ 二重ルーター確定(このルーターの上にもう1台います):
・192.168.0.0 〜 192.168.255.255(「192.168.」で始まるもの全部。例:192.168.1.5)
・10.0.0.0 〜 10.255.255.255(「10.」で始まるもの全部。例:10.0.0.2)
・172.16.0.0 〜 172.31.255.255(最初が「172.」で、2番目の数字が16〜31のもの。例:172.20.0.3)
上のどれにも当てはまらない普通のIP → ②④ではありません。①はルーターの仕様書やNAT設定項目、③は契約内容(「v6プラス」等の表記)で確認を。
診断おつかれさまでした。自分の家のパターンが分かったら、次にやることはこれです。
(1) テザリング・モバイルホームルーターなら家側では直せません(キャリア側の仕様。ルーターを買い替えても無意味、固定回線化が唯一の道)
(2) 固定回線なら、上の「確かめる方法」でWAN側IPを見て②CGNATが併発していないか確認(②があるならルーター買い替えは無意味です。先に②の解決を)
(3) 自分のルーターが原因と絞り込めたら、管理画面でUPnPが有効か確認。ゲームの使うポートが分かるなら手動ポート開放でもOK
(4) それでも改善しなければ、最後の手段として機種の買い替えを検討 → 詳しくは上の①の章
ブラウザからNATタイプを自動判定するサイトも存在しますが、ブラウザにできる検査には原理的な限界があり、いちばん人口の多いv6プラス系(パターン③)や二重ルーター(パターン④)を「問題なし」と誤判定してしまいます。当サイトは根拠を出せない数字や判定を見せない方針のため、確実に確かめられる方法(上のWAN IP確認)の解説に徹しています。