TTLとは何ですか?

2026年8月13日公開

← 用語集のすべての項目 「T」へジャンプ

「Time to Live(TTL)」とは、IPパケットヘッダーに含まれるフィールドの一種であり、パケットが破棄されるまでに通過できるルーターのホップ数を制限するものです。これにより、不安定なネットワークや設定ミスのあるネットワーク上で、パケットが永久にループし続けるのを防ぎます。また、この用語は、キャッシュされたレコード(最も一般的なのはDNS応答)の有効期限を示すタイマーを指す場合もあり、この時間が経過するとキャッシュはレコードを更新する必要があります。

主なポイント

  • TTLはルーターを経由するたびに1ずつ減算され、0になるとパケットは破棄されます。
  • IPv6では、このフィールドの名称が「Hop Limit」に変更されましたが、機能は従来と変わりません。
  • DNSリソースレコードには、リゾルバのキャッシュを制御するための個別のTTLが設定されています。
  • トレーサルートツールは、TTL値を徐々に増やしながらプローブを送信し、経路のホップをマッピングします。
  • Versa SD-WANおよびセキュリティポリシールールでは、TTL値に基づいてトラフィックを照合することができます。

このページの内容: その重要性仕組み種類TTL およびVersaよくある質問

TTLはなぜ重要なのでしょうか?

ホップ数の上限がなければ、ルーティングループ(設定ミスのあるルート、一時的なBGPフラップ、障害のあるフェイルオーバーパスなど)に巻き込まれたパケットは、無限に循環し続け、帯域幅とルーターのCPUリソースを消費することになります。TTLにより、すべてのパケットの有効期限が有限であることが保証されます。つまり、ルーティング状態がどれほど悪化しても、迷い込んだパケットは無限に蓄積されることなく、所定のホップ数以内に自動的に破棄されます。

TTLは、動作診断としても機能します。 ping そして traceroute 応答に含まれるTTL値を読み取って距離を推測し、ルーティングの問題を検出するため、SASE のクライアント接続性チェックを含むトラブルシューティングの出力には、常にTTL値が表示されます。DNSキャッシュに適用されるこの同じ有効期限の概念は、すべての運用者が直面するトレードオフを左右します。TTLを短くすると、リゾルバーは変更を迅速に反映できますが、権威サーバーへのクエリが増加します。一方、TTLを長くするとその負荷は軽減されますが、DNSの変更が伝播する速度が遅くなります。

TTLとは何ですか?

IPv4ヘッダーにおいて、TTLは送信ホストによって設定される8ビットのフィールドであり、オペレーティングシステムに応じて通常64、128、または255に設定され、パケットを転送する各ルーターで1ずつ減算されます。 ルーターがTTLを0に減算すると、そのパケットは破棄され、ほとんどの実装では、送信元にICMPの「Time Exceeded」メッセージが返されます。この単一のルールにより、配信不能なパケットが所定のホップ数を超えて残存することを防いでいます。

この考え方は、キャッシュされたデータにも当てはまります。DNSリソースレコードには、権威ネームサーバーによって設定された独自のTTL(秒単位)が付与されています。リゾルバーは、そのTTLが切れるまでキャッシュされた応答を提供し、その後、最新の値を取得するために再クエリを行います。これにより、各リクエストごとに完全なルックアップを行うコストをクライアントから切り離しつつ、応答が古くなる度合いを制限することができます。

TTLの種類

IPv4のTTLは、インターネットプロトコル(IP)のために定義された、当初の8ビットのホップカウントフィールドです。IPv6のホップリミットは、IPv6ヘッダーにおいて新しい名称で採用された同じメカニズムであり、8ビットのフィールドで、ホップごとに1ずつ減算されるという同じ意味を持ちます。「time to live(TTL)」という用語がもはや実時間タイマーを指さなくなったため、名称が変更されました。

DNSのTTLはホップカウントとは無関係です。TTLはゾーン所有者が設定するレコードごとのキャッシュ有効期限タイマーであり、リソースレコードセットごとに独立しているため、同じ名前に対するMXレコードとAレコードでも異なるTTLを持つことがあります。 主にBGPで使用されるTTLセキュリティ(GTSM)は、TTLが最大値に近くなければ、受信パケットをすべて拒否します。直接接続されたピアからのパケットのTTLはほとんど減少しないため、この仕組みにより、完全な認証なしに多くのホップ離れた場所からしか発信され得ない偽装パケットを排除することができます。

TTL &Versa

VOSのセキュリティアクセスおよびSD-WANポリシールールでは、パケットのTTL値に基づいてトラフィックを照合できます。SD-WANポリシールールの[Headers/Schedule]タブでは、TTL条件(1~255の値に対して「等しい」、「以上」、「以下」)が、IPバージョン、IPフラグ、およびDSCPと組み合わされ、そのルールが適用されるパケットが選択されます。サービスチェーンのルールにも同様のTTL条件および値フィールドが用意されているため、トラフィックは、すでに通過したホップ数に基づいて、サービスチェーンへ誘導することができます。

TTLは、日々のトラブルシューティングの場面でもよく登場します。 SASE クライアントの接続確認 ~に依存する ping そして route print 出力には、各応答行に応答したホストのTTLが表示されます。これは、往復時間やパケット損失と併せて、トラフィックが想定された宛先に到達していることを確認するための手っ取り早い指標となります。

よくある質問

TTLとIPv6のホップ制限の違いは何ですか?

これらは、名称は異なるものの、同じ仕組みです。IPv4ではこのフィールドを「TTL」、IPv6では「ホップ制限」と呼びますが、どちらも8ビットのカウンタであり、ルータを経由するたびに1ずつ減算され、カウントがゼロになるとパケットは破棄されます。

なぜDNSレコードには独自のTTLがあるのでしょうか?

DNSのTTLは、ホップ数ではなく、キャッシュの有効期限を示すタイマーです。これは、リゾルバーに対し、権威サーバーに再クエリを行う前にキャッシュされた応答をどのくらいの期間提供するかを指示するものであり、伝播速度と当該サーバーへのクエリ負荷とのバランスを調整する役割を果たします。

traceroute は TTL をどのように利用しているのでしょうか?

traceroute は、TTL を 1、次に 2、さらに 3 と順次設定して、連続してプローブを送信します。有効期限が切れたプローブを破棄した各ルーターは、ICMP「Time Exceeded」メッセージを返信し、1 ホップずつそのホップのアドレスを明らかにします。

パケットのTTLがゼロになった場合、そのパケットはどうなるのでしょうか?

TTLを0に減らすルーターは、そのパケットを転送する代わりに破棄し、通常は送信元にICMP「タイムアウト」メッセージを返します。これにより、障害が発生している、あるいは不安定な経路上でパケットが無限ループするのを防ぎます。

オペレーティングシステムは通常、どのようなTTL値を送信しますか?

一般的なデフォルト値は、64(LinuxおよびほとんどのUnix系システム)、128(Windows)、255(多くのネットワークアプライアンス)です。TTLはホップごとに1ずつ減算されるため、宛先で確認される値から、パケットが通過したルーターの数が推測できます。

TTLに関する詳細

さらに詳しく知りたい場合は、私たちが信頼している情報源を以下にご紹介します。

RFC 791: インターネットプロトコル RFC 1035: ドメイン名
パケットヘッダー内の「Time to Live」フィールドを定義している、IPv4の元の仕様書。 リゾルバのキャッシュを制御する、レコードごとのTTLフィールドを定義するDNS仕様。

TTLについて読んでいるなら、次はこれらもぜひチェックしてみてください。

インターネット制御メッセージプロトコル ドメインネームシステム ゾーン
TTL 値を観察・解釈するために最も一般的に使用されるツールである ping および traceroute の背後にあるプロトコル。 キャッシュされたレコードのそれぞれに、パケットのホップ数に基づくTTLとは別に、独自のTTLが設定されているネーミングサービス。 SD-WANおよびサービスチェーンのポリシールールにおいて、TTL条件と併せてソース/宛先構文が照合されました。
この記事は役に立ちましたか?
問題を報告する