DNS中的SOA记录是什么?

发布时间 2023-04-19 15:08:16作者: GaoYanbing
作者:点探索
链接:https://www.zhihu.com/question/35428551/answer/152941883
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

我来回答一下吧。

SOA 这种记录是所有区域性文件中的强制性记录。它必须是一个文件中的第一个记录($ORIGIN 和 $TTL 会在它之前指定)。

开始权限记录的看起来像这样:

domain.com.  IN SOA ns1.domain.com. admin.domain.com. (
                                            12083   ; serial number
                                            3h      ; refresh interval
                                            30m     ; retry interval
                                            3w      ; expiry period
                                            1h      ; negative TTL
)

我来解释一下各部分分别表示什么:

  • domain.com.:这是区域的根。这表明该区域文件用于 域名。通常,你会看到这个用 @ 代替,它只是一个占位符,表示我们之前学到的 $ORIGIN 变量的内容。
  • IN SOA:”IN” 部分表示互联网(它会出现在许多记录中)。 SOA 是表示这是开始权限记录。
  • ns1.domain.com.:这定义了该域的主名称服务器。名称服务器可以是主服务器或从服务器,如果配置了动态 DNS,就像这里,则一个服务器需要是 “主服务器”。如果你未配置动态 DNS,那么这只是你其中一个主名称服务器。
  • admin.domain.com.:这是这个区域文件管理员的邮箱地址。邮箱地址的 @ 这里用一个 . 代替。如果你的名字中也有 . 它会用 \ 代替。(比如 your.name@domain.com 变成 your\
  • 12083:这是区域文件的序列号。每次编辑区域文件时,必须增加此序列号以使区域文件能够正确传播。从服务器将检查主服务器的区域序列号是否大于它们在系统上的序列号。如果是,它请求新的区域文件,如果不是,它继续服务原始文件。
  • 3h:这是区域的刷新间隔。这是从服务器向主服务器轮询检查区域文件是否变更之间等待的时间量。
  • 30m:这是此区域的重试间隔。如果从机在刷新周期结束时无法连接到主机,则它将等待此时间并重试轮询主机。
  • 3w:这是到期时间。如果从服务器在此时间内无法与主服务器联系,则它不再作为此区域的权威来源的返回响应
  • 1h:这是名称服务器在此文件中找不到所请求的名称时缓存找不到结果的时间量。

具体可以看 DNS A CNAME MX PTR 等记录有什么区别

 
 

SOA,是起始授权机构记录,说明了在众多 NS 记录里哪一台才是主要的服务器。在任何DNS记录文件中,都是以SOA ( Startof Authority )记录开始。SOA资源记录表明此DNS名称服务器是该DNS域中数据信息的最佳来源。

SOA记录与NS记录的区别:NS记录表示域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析;SOA记录设置一些数据版本和更新以及过期时间等信息。