本文へスキップ
totonoe.tech

ネットワークを整える

中級

MTU・MSSを整える。

= 一度に流せるデータの大きさの上限

ネットワークのどこの話? インターネットや VPN の経路で、1 回に運べるデータの大きさの話です。IP と TCP の境目にあたります。

① 重ねるほど使える大きさが縮む

回線の MTU と、重ねる包み紙を選ぶと、残る MTU と MSS を出します。MSS は TCP が 1 回に運べる中身の大きさです(MTU − IP ヘッダ − TCP ヘッダ)。

回線と包み紙を選ぶ 入力するそばから計算(会社のPCでも、入力は外に出ません)

使える MTU

—

MSS(IPv4 の TCP)

—

MSS(IPv6 の TCP)

—

  • PPPoE:PPPoE のヘッダ 6B + PPP 2B。家庭向けの回線で使われる
  • GRE:外側の IPv4 ヘッダ 20B + GRE ヘッダ 4B
  • IPsec(ESP・トンネルモード):暗号・認証の方式で 50〜73B ほどに変わる。ここでは目安として 60B
  • VXLAN:外側の Ethernet 14B + IP 20B + UDP 8B + VXLAN 8B
  • IPv4 と TCP のヘッダは各 20 バイト(IPv6 のヘッダは 40 バイト)として引いています。TCP オプション(タイムスタンプなど)があるとさらに減ります。

② 大きすぎるデータは何個に分かれる?

IPv4 は、MTU を超えるパケットを小分け(フラグメント)にして送れます。小分けの位置は「8 バイト単位」の番号(オフセット)で表します。

パケットの大きさと MTU 入力するそばから計算(会社のPCでも、入力は外に出ません)

#オフセット(8B単位)データ部全長MF ビット

MF(More Fragments)は「まだ続きがある」の印で、最後の 1 個だけ 0 です。データ部は最後以外 8 の倍数にそろえます。分割された荷物は、受け取り側が全部そろうまで組み立てられないため、1 個でも失われると全部やり直しになります。

③ 「VPN だけ一部のサイトが開かない」を再現する

DF ビット(分割禁止の印)つきの ping を、大きさを変えて試すと、経路の MTU が分かります。

定番の原因

TCP の通信は DF ビットを立てて送ります。途中に MTU の小さい区間(VPN など)があると、そこを通れない大きなパケットは捨てられ、ルーターが「大きすぎる」と ICMP(Type 3・Code 4)で送り主へ知らせます。送り主はこれを受けて小さく送り直します(これが PMTUD・経路 MTU 探索)。ところが、ファイアウォールが ICMP をすべて止めていると、この知らせが届かず、大きなパケットだけが永遠に消えます。小さい通信(接続の開始)は通り、大きいデータが必要な画面だけ開かない、という症状になります。

試す ping と経路 入力するそばから計算(会社のPCでも、入力は外に出ません)
Windows
Linux
macOS

手順:大きい値(1472 など)から始め、「分割が必要」と返ってきたら小さくしていき、通る最大値を探します。その値に 28(IP ヘッダ 20 + ICMP ヘッダ 8)を足したものが経路の MTU です。直し方:ICMP の Type 3 を通す、または VPN 装置で MSS を小さく書き換える(Cisco IOS のインターフェースでは ip tcp adjust-mss 1360 など)。

📘 CCNA との関係

MTU・MSS・PMTUD そのものは CCNA 200-301 の出題範囲の中心ではありません。ただし MTU の既定値 1500、IPv4 のフラグメント、ICMP のしくみ(ping・traceroute)、ヘッダ構造(TCP・IP)の理解に直結します。VPN は IPsec VPN、VXLAN は VXLAN のページも参照。

たとえると

宅配便の「箱の大きさの上限」です。普段は 1500 バイトの箱まで送れます。ところが VPN を使うと、荷物を別の箱で包み直すため、包み紙(ヘッダ)のぶん中身に入れられる量が減ります。上限を超えた荷物は、途中で小分けにされるか、「大きすぎます」と突き返されます。突き返しの連絡(ICMP)が途中で止められていると、送り主は理由が分からないまま、荷物が消えたように見えます。

CCNA の範囲外寄りですが、「VPN にすると一部のサイトだけ開かない」という実務で頻出する不具合の原因です。

このツールは、ネットワーク全体図のここ

  1. 自分の端末
  2. 家・会社の中
  3. 出入口
  4. 建物の外
  5. 相手のサーバー
  6. データセンター
  7. 見る・動かす

建物の外の道(WAN・インターネット)— 道を通れる荷物の大きさの上限(MTU)の話です。

建物の外の道は、全国の道路と運送会社の中継所のような場所です。OSI では第2層(データリンク)・第3層(ネットワーク)。

「ブラウザで URL を打ってからページが出るまで」の 7 番目(ルーティングで運ぶ)で活躍します。

前の段: NAT 次の段: HTTPS

このページに出てくる略語(7語)
  • MTU (Maximum Transmission Unit) — 1回で運べる荷物(パケット)の大きさの上限
  • MSS (Maximum Segment Size) — TCP で1回に運ぶデータ部分の大きさの上限(MTU から逆算する)
  • PMTUD (Path MTU Discovery) — 道の途中でいちばん小さい MTU を、送りながら探る仕組み
  • DF (Don't Fragment) — 「この荷物は分割しないで」と IP ヘッダーに付ける印
  • PPPoE (Point-to-Point Protocol over Ethernet) — イーサネットの上で ISP につなぐ接続方式。MTU が少し小さくなる
  • FTTH (Fiber To The Home) — 光ファイバーを家まで引き込む接続方式
  • GRE (Generic Routing Encapsulation) — 荷物を別の荷物の中に入れて運ぶトンネルの方式(暗号化はしない)

ネットワークの略語をすべて見る

ネットワークの全体図を見る

このツールについて

ネットワークに一度に流せるデータの大きさの上限が MTU です。VPN などで線を重ねるほど、使える大きさは小さくなります。

MTU から MSS を出し、VPN などを重ねると使える大きさが縮むしくみを図で確認。「VPN だけ開かないサイトがある」原因の ICMP と DF ビットは ping・traceroute とあわせて。

主な機能

  • MTU から MSS を計算(IPv4・IPv6)
  • PPPoE・GRE・IPsec・VXLAN を重ねる積み木の図
  • フラグメントの個数とオフセット(8B単位)
  • DFつき ping で経路 MTU を探す手順
  • ICMP遮断でPMTUDが働かない症状の再現

よくある質問

Q. MTU と MSS の違いは何ですか?

A. MTU は IP パケット全体の上限(既定 1500)、MSS は TCP が 1 回に運べる中身の上限です。MSS = MTU − IP ヘッダ 20 − TCP ヘッダ 20 で、IPv4 なら 1460 になります。

Q. VPN にすると一部のサイトだけ開かないのはなぜですか?

A. VPN の包み紙で MTU が小さくなるのに、ICMP が止められて PMTUD が働かず、大きなパケットだけが捨てられるためです。MSS を小さく書き換えるか ICMP Type 3 を通すと直ります。

Q. PPPoE の MTU はなぜ 1492 ですか?

A. PPPoE のヘッダが 8 バイトあり、1500 − 8 = 1492 になるためです。MSS は 1452 になります。

Q. DF ビットとは何ですか?

A. IPv4 ヘッダの「分割禁止」の印です。立っているパケットは小さくできない区間で捨てられ、ルーターが ICMP で知らせます。TCP は通常これを立てて送ります。

Q. IPv6 では途中で分割されないのですか?

A. されません。IPv6 では途中のルーターは分割せず、送り主が小さく送り直します。最小の MTU は 1280 バイトです。

入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。

続けて整える

totonoe.tech を運営する株式会社Koinobori は、法人向けの研修サービス「NOBORIBA®」も運営しています。 ここで手を動かした内容を、講師から教わる形の研修です。このページの道具は無料のまま、登録もいりません。

運営サイト

私たちが運営するサイト