手当たり次第に書くんだ

飽きっぽいのは本能

VyOS TCP MSS 調整 – PPPoE / VPN 経路で考える

VyOS で TCP MSS を調整する設定例です。MSS は TCP SYN で通知される値であり、PPPoE や VPN のようにオーバーヘッドが増える経路では、フラグメント回避のために調整が必要になることがあります。

この記事は、現在の主軸である VyOS 1.5 で読むことを前提に、過去の VyOS 1.4 以前の記事内容も整理しています。TCP MSS 調整 の考え方自体は大きく変わりにくい一方で、細かなコマンド、表示、既定値は利用している ISO や環境で確認してください。

MSS の基本

MSS は TCP のペイロード最大サイズです。MTU から IP ヘッダと TCP ヘッダを差し引いた値として考えます。UDP や ICMP には直接関係しません。

項目意味
MTUL2/L3 上で運べる最大フレーム/パケットサイズ
MSSTCP ペイロードとして送れる最大サイズ
PMTUD経路 MTU を検出する仕組み

設定例

configure
set policy route inside rule 3000 protocol 'tcp'
set policy route inside rule 3000 tcp flags 'SYN'
set policy route inside rule 3000 set tcp-mss '1414'
commit
save

確認

show configuration commands | match 'tcp-mss'
sudo tcpdump -ni eth1 'tcp[tcpflags] & tcp-syn != 0'

設計上の注意

  • MSS 調整は TCP SYN に対する補正であり、すべての通信を直接小さくする設定ではない。
  • PPPoE、VPN、トンネル、IPsec など、ヘッダオーバーヘッドが増える経路で検討する。
  • 値は固定の暗記ではなく、MTU、経路、実際のパケットキャプチャで確認する。

まとめ

MSS 調整は「なんとなく小さくする」設定ではありません。PPPoE、VPN、トンネル、IPsec などでヘッダオーバーヘッドが増える場合に、パケットキャプチャで SYN の MSS を確認しながら調整します。

VyOS TCP MSS 調整 – PPPoE / VPN 経路で考える

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る