ども。こんばんは。
MTUの話です。
職場ではネットワークのトラブルを聞きつける度に「MTUが大っきいんじゃない?」と詳しく聞く前に口にしますが、たまに当たるから馬鹿にできないんですよね。しかもMTU(MSS)周りって気づきにくいことが多いので、とりあえずどんなトラブルでもMTUを疑うようにしています。
※もちろん切り分けはOSI参照モデルの物理層から順番に!
【関連】
くどいほどにMSSとかMTUの話
FortiGateをリプレイスしまして、何故かPS4がPlaystation Networkにサインインできないという事象が発生しました。
ネットワーク診断をやってみると、インターネット接続は成功するのにPlaystation Netowrkだけ失敗する状況です。
PS4は、固定IPアドレスのInterlink回線から、Virtual IPでスタティックNATをしています。
SD-WAN Rulesで、出口はPPPoEにしてるんですけどねー。
FortiGate リプレイス前は、こんなトラブルなかったのですが、MTUを1454に設定したら直りました。
FortiGate側のPPPoE Status ReportはMTU 1454をちゃんとひろってるのになー。なんでPS4側で調整しないとだめなんだろ。
もしかして、SD-WANインターフェース関連・・・?なのか・・・?
FortiOS 6.2の問題なのかSD-WAN利用時の問題なのかは不明です・・・。
以下おまけです。IPoE(OCNバーチャルコネクト)側はどうなってるのかmacOSで調べてみました。macOSでDFを有効にしたMTUの調査用Pingコマンドはこんな感じです。
# ping -D -s 1432 8.8.8.8 -c 1
PING 8.8.8.8 (8.8.8.8): 1432 data bytes
76 bytes from 8.8.8.8: icmp_seq=0 ttl=53 time=56.544 ms
wrong total length 96 instead of 1460— 8.8.8.8 ping statistics —
1 packets transmitted, 1 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 56.544/56.544/56.544/0.000 ms
1432(MTU 1460)が最大です。IPv6でカプセル化してるしこんなもん?なのかな?
念の為、インターリンク回線に収容しているLinuxでもチェックしました。
# ping -c 1 -s 1426 -M do 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 1426(1454) bytes of data.
76 bytes from 8.8.8.8: icmp_seq=1 ttl=54 (truncated)— 8.8.8.8 ping statistics —
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 5.724/5.724/5.724/0.000 ms
想定通り、MTU 1454(1426にICMPヘッダとIPヘッダを加えた値)ですね。
ブラウザでお手軽に調べるのは以下のサイトが便利です。
http://www.speedguide.net/analyzer.php
ではでは。またの機会に。
FortiOS 6.2.5で直った模様。