はい、そのレコードの有効期限が切れるまでの秒数があります(権限のあるネームサーバーに問い合わせていない場合)。CNAMEには明らかにリダイレクトのレベルがあるため、この場合にそれが指すAレコードのTTLも同様に重要です。
数秒待ってからローカルネームサーバーで再度digを実行すると、TTL数が(およそ)待機した秒数だけ減少することがわかります。0に達すると、更新されるか、ネームサーバーが何らかの理由でゾーンを更新する場合があります。
上記のように、キャッシュされたエントリを持つネームサーバーに対して実行されるdigと、そのエントリに対して権限を持つネームサーバーには違いがあります。
(以下で使用する例では、出力を簡潔にするために+noauthority
+noquestion
&+nostats
フラグを使用しています)。
次のクエリの違いに注意してください。
$ dig +noauthority +noquestion +nostats stackoverflow.com @ns2.p19.dynect.net.
; <<>> DiG 9.7.0-P1 <<>> +noauthority +noquestion +nostats stackoverflow.com @ns2.p19.dynect.net.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50066
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; ANSWER SECTION:
stackoverflow.com. 432000 IN A 69.59.196.211
したがって、上記のクエリでは、stackoverflow.comに対して権限を持つネームサーバーをクエリしています。flags
セクションに気付いた場合は、これが信頼できる回答(つまり、キャッシュされていない)であることを示すaaフラグに特に注意してください。
$ dig +noauthority +noquestion +noadditional +nostats stackoverflow.com
; <<>> DiG 9.7.0-P1 <<>> +noauthority +noquestion +noadditional +nostats stackoverflow.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43514
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 4
;; ANSWER SECTION:
stackoverflow.com. 246696 IN A 69.59.196.211
上記のクエリでは、aaフラグはありません。TTLはクエリとクエリの実行中に減少し続けます。これは、基本的に私が以前話していたカウンターです。