Colasoft CapsaでTTL値を利用して、ネットワークを診断

TTLとは

TTL (Time To Live) はIPパケットヘッダ内の重要なパラメータであり、TTL値により、現在IPレイヤのステータスを判断できます。 TTLは、ネットワーク上の滞在時間の長すぎるパケットをドロップすべきかどうかという指令をルータに伝えることができます。

TTLが本来は時間範囲を定義するために設計され、その時間範囲を超えるとパケットがドロップされることになりますが、実際にはパケットがルータを経由した際に、TTL値から少なくとも1が差し引かれたため、通常の場合、TTL値はパケットがドロップされるまで経由したルータの数を意味しています。TTLは0になると、ルータはパケットをドロップし、パケットの送信元へICMPメッセージを送信します。

さまざまな原因により、特定の時間帯にパケットはデスティネーションへの送信は失敗になることがあります。たとえば、ルーティングテーブルの配置は間違いであれば、パケットエンドレスループが発生する可能性があります。解決策は時間を置いてからパケットをドロップし、送信元にメッセージを送信し、パケットを再送するかどうかということを決定させます。この状況が発生すると、パケットはルーティングテーブルに誤って設定されたルータにより再送されます。パケットはルータによってドロップされ、ネットワークに伝送エラーが発生する際に、再送される毎に、TTL値が0になるまで1が差し引かれます。

デフォルトTTL値は、オペレーティングシステムと伝送プロトコルの違いに応じて変化します。一般的なオペレーティングシステムにあるTCPとUDPのデフォルトTTL値は下図にリストされています。

f:id:lanseisei:20160906162652p:plain

Colasoft CapsaでパケットのTTL値を参照して伝送エラーを解析

伝送エラーがネットワークに発生した際にColasoft CapsaネットワークアナライザーでパケットのTTL値を参照し、ルータ配置の誤りまたは、上記に掲載されている他の可能な理由により、エラーをもたらすかどうか判断できます。

それではColasoft CapsaでパケットのTTL値を確認してみましょう。

f:id:lanseisei:20160906162555p:plain

上図のとおり、TTL値は128です。上記リストのTTL値により、パケットは送信元からディスティネーションマシンまで経由したルータ数は255-128=127で、伝送状況は正常であることが判明できます。

注意事項:
1.パケットが経由したルータ数を確認するために、ソースデバイスのデフォルトTTL値からキャプチャしたパケットのTTL値を差し引けばいいです。
2.ソースデバイスのデフォルトTTL値が知らない場合、パケットのTTL値より大きく、しかもパケットのTTL値に最も接近するデフォルトTTL値を使えばいいです。
3.TTLフィールドのサイズは1バイトであるため、TTLのピーク値は255です。

キャプチャされたパケットのTTL値は小さすぎなら、ネットワークに伝送エラーが存在する可能性があることを表明します。TTL値をチェックすることで、ネットワークは正常であるかどうか判断できます。

Colasoft Capsaお試し版ダウンロードアドレス:http://www.colasoft.com/jp/download/download-capsa-ent.php