TTL 【Time To Live】 生存時間
ルーティングにおけるTTL
IPネットワークにおけるIPデータグラムのTTLは、ネットワーク上での最大転送回数を表す。最大255までの整数が設定され、ルータなどの機器(ホップ/hop)を一回通過するごとに値が1減少する。TTLが0になったパケットはその場で破棄され、破棄通知が送信元に送られる。
宛先までの転送回数に上限を設けることで誤設定などによるパケットの無限ループを防止することができる。値は送信元ホストが自由に設定できるが、ネットワーク上の距離が遠い場合はある程度大きい値を設定しないと先方にたどり着く前に破棄されてしまうことがある。
当初は秒単位など実時間による記述を意図していたため、このような名称になっているが、実用上、経過時間を測定・記録することは困難なことから、代替の目安としてルータの通過回数を用いることになった。IPv6では同様の設定値を実態に即して「ホップリミット」(hop limit/ホップ制限)と呼んでいる。
DNSレコードのTTL
ドメイン名を管理するDNS(Domain Name System)では、ドメイン情報のキャッシュを保持する期間をTTLという。DNSでは、あるドメインについての情報を管理する権威DNSサーバの負荷を軽減するため、外部からその情報を問い合わせるDNSサーバは結果を手元の記憶装置に残し、以降の問い合わせには手元のデータを回答する。
この一時的な複製データ(DNSキャッシュ)の残存期間がTTLで、取得からTTLで示される時間が経過したキャッシュは破棄される。同じ情報が再度問い合わせされたら再び権威DNSサーバへ問い合わせを行い、最新の内容をキャッシュする。
TTLは秒数で記述され、慣例として一般的には「86400」(24時間)に設定することが多い。ドメイン名とIPアドレスの対応関係を変更する場合などには、事前にあえてこれより小さな値を告知しておいて頻繁な再確認を促す場合もある。「0」を指定するとキャッシュ禁止を意味する。