NetDiag+

iPhone で Path MTU を調べる方法

よくある方法は、固定サイズで ping を打ち、応答が返るまでサイズを下げていくやり方です。確かに使えますが、時間がかかり、間違いも起きやすく、そもそも iOS には実行するターミナルがありません。ここでは30秒で済む方法を紹介します。

30秒でできる手順

  1. NetDiag+ を開き、診断 → Path MTU に進みます。
  2. 既定のホストのまま(または任意のホストを入力して)探索をタップします。アプリは「フラグメント禁止」ビットを立てて二分探索を行い、ICMP の応答を読み取ります。
  3. 推奨値がバイト単位で1つ表示され、検出された接続タイプ(PPPoE、光、5G、トンネル)も併記されます。値をコピーして、ルーターの MTU 欄 — または VPN クライアント — に入力してください。
App Store でダウンロード

無料 · 25のツール · 買い切りで広告を削除 · サブスクなし

よくある MTU 値(参考)

MTU代表的なケース
1500Ethernet, cable, fiber, most Wi-Fi
1492PPPoE (DSL)
1480GRE / IPIP tunnel
1472largest ping payload that fits in 1500 (1500 − 28)
1420WireGuard over IPv4
1400OpenVPN (typical)
1280IPv6 minimum — most routers refuse anything lower

パソコンから測る場合

同じ二分探索を手作業で行います。ペイロード1472バイトから始めて ping が失敗しなくなるまで下げ、そこに28バイト(IP 20 + ICMP 8)を足すと MTU になります。

macOS / Linux

ping -D -s 1472 1.1.1.1

Windows

ping -f -l 1472 1.1.1.1

実際によく届く質問

ルーターで MTU を変更できません

代わりに端末側で MTU を設定してください(macOS、Windows、Linux のネットワーク設定)。あるいは VPN クライアント側で設定します:WireGuard は MTU、OpenVPN は tun-mtu を使います。プロバイダーに変更を依頼する、提供された機器をブリッジモードにして自分のルーターを使う、という手もあります。

なぜ自分の DNS サーバーではなく公開ホストをテストするのですか?

Path MTU が測るのはインターネットまでの経路で、DNS リゾルバまでの経路ではありません。DNS を変えても結果は変わりません。特定の経路を試したい場合は、探索を始める前にそのホストを入力してください。

各プローブ行は何を意味しますか?

1行が1つのテストパケットです。緑は通過、オレンジは経路上のルーターが「大きすぎる」と判断したことを示します。推奨値は通過した最大のパケットで、必要な数値はそれだけです。

結果が1280未満です。これは普通ですか?

まれです。ほとんどのルーターは1280〜1500しか受け付けません。1280 は IPv6 に必要な最小 MTU だからです。極端に低い値は通常、携帯キャリアがテストパケットをフィルタしているか、トンネルが大きなオーバーヘッドを加えていることを意味します。数値を信じる前に別のホストで再測定してください。

クラウドゲームで MTU が低すぎると言われます

Boosteroid や GeForce NOW などは概ね1452バイト以上を要求します。まず実際の値を測ってください。要求値を下回る場合、制限はたいていキャリアのトンネルか PPPoE のオーバーヘッドにあり、ルーターの設定では事業者が提供する上限を超えられません。

数値が分かったら、次は入力先の話です。 主要ルーターで MTU 欄が隠れている場所 →