前回から引き続き、『Ping』コマンドについてです

『Ping』コマンドの使い方例

例3.適切なパケットのMTU値を探る

>ping -f -l "MTUサイズ" ”宛先IPアドレス"

よく拠点間でVPN接続したりすると、「つながっているけど、遅い」という事があります
原因はいろいろありますが、MTU値が影響しているケースがある

pingは適切なMTU値を探る場合に有効です


例えば、LAN内のMTU値をしらべる場合
まず、LAN(イーサネット)のMTU値を考えてみる

・イーサネットフレームのMTU値は1500byte
イーサネット1
・データ部の中に、IPヘッダ(20byte)、ICMPヘッダ(8byte)がある
・純粋なデータサイズは、1500-20-8=1472byte

<ping コマンドサイズ1472byte>
サイズ1472byteで、ゲートウェイにping。問題なし
df1

<ping コマンドサイズ1473byte>
サイズ1473byteで、ゲートウェイにping。
1byte大きくしただけで、分割できずpingが失敗します
df2

以上から、LANのMTUサイズは『1472byte』とわかります


例えば、インターネットアクセス時のMTU値をしらべる場合
おそらく、LANの中でMTU値を意識することはなく、意識するのはWANにアクセスする場合です

今度はインターネットアクセス時のMTU値を探ってみます
インターネットアクセス(PPPoE)のMTU値を考えてみる

・自宅はBフレッツですので、PPPoEフレームのMTUサイズは1454byteと決まっています
・データ部の中に、IPヘッダ(20byte)、ICMPヘッダ(8byte)がある
・純粋なデータサイズは、1454-20-8=1426byte

<ping コマンドサイズ1426byte>
サイズ1426byteで、GoogleDNS(8.8.8.8)にping。問題なし
df3

<ping コマンドサイズ1427byte>
サイズ1427byteで、8.8.8.8にping。
1byte大きくしただけで、分割できずpingが失敗します
断片化が必要とゲートウェイ機器(FortiGate)が、言ってます
df5

こんな感じです。

覚えておくと、「通信できない」や「遅い」時に、ネットワーク機器に設定する
適正なMTU値を測る事ができます。

次回はPingの結果について書きます