如何查看一个DNS记录的生存时间(TTL)

1,974 阅读2分钟

如何使用Linux、macOS、*BSD或类Unix系统的命令行选项查看DNS记录的生存时间(TTL)?我怎样才能找到我的DNS TTL?

TTL是 "Time To Live "的首字母缩写。你可以为DNS记录设置TTL,定义解析器在查询过期前应该缓存多长时间的DNS查询。TTL通常用于减少权威名称服务器的负载,并加快客户的DNS查询。本页解释了如何使用Linux或Unix命令行选项查找DNS记录的生存时间(TTL)。

查出DNS记录的生存时间(TTL)

在你的Linux/MacOS/Unix桌面上打开终端应用程序。输入dig TYPE DomainNameHere NS1-AUTHNAME-SERVER-HERE并记下答案部分的TTL值。要直接从权威的DNS服务器上找到TTL值,在dig命令中传递+noauthority +noquestion +noadditional +nostats选项。在dig命令中传递+ttlunits选项,以人类可读的时间格式或单位显示TTL值。例如5m TTL意味着5分钟。让我们看看所有例子的细节。

如何查看Time-To-Live(TTL)DNS记录

dig命令的语法如下:

dig TYPE domain
dig TYPE domain auth-name-server-here
dig [options] TYPE domain auth-name-server-here

要使用本地DNS解析器检查codeclips.cc的TTL(结果可能被缓存),请运行:

dig A codeclips.cc

我如何使用权威的DNS服务器获得codeclips.cc的TTL?

首先,找到给定域名的NS。

dig +short NS codeclips.cc

输出如下内容:

shirt.dnspod.net.
excellent.dnspod.net.

现在,我们可以使用shirt.dnspod.net.excellent.dnspod.net.如下,以避免缓存问题。

dig A codeclips.cc @shirt.dnspod.net

TTL的常见DNS记录类型及示例

  • A或AAAA记录:IPv4或IPv6地址。
  • CNAME记录。Canonical Name或别名。
  • MX记录。邮件服务器/邮件交换器。
  • TXT 记录。用于各种目的,如描述 SPF 记录。
  • NS记录。权威的DNS。

我如何找到我的DNS TTL?

到目前为止,所有的例子都给出了dig的长答案。然而,如果你只需要TTL值,你可以试试下面的语法。

dig +nocmd +noall +answer +ttlid A codeclips.cc
dig +nocmd +noall +answer +ttlid AAAA codeclips.cc
dig +nocmd +noall +answer +ttlid MX codeclips.cc

原文:如何查看一个DNS记录的生存时间(TTL)