DNS A 记录和通配符子域的顺序

Bas*_*asj 3 domain-name-system a-record nameserver

我已阅读多个通配符 dns 条目并了解通配符 DNS 条目的限制/缺点,但我对注册商列出的顺序有疑问:

example.com        A      192.0.2.1    (1)
test.example.com   A      192.0.2.2    (2)
*.example.com      A      192.0.2.3    (3)
test2.example.com  A      192.0.2.4    (4)
Run Code Online (Sandbox Code Playgroud)

更确切地说:

  • 我是否正确地认为 (3) 不会影响 (1),因此唯一的 A 记录example.com是 (1)?

  • 规则 (2) 是否会被规则 (3) 覆盖,或者这两个规则都适用test.example.com(因此该子域有两条 A 记录)?

  • 由于(4)列在(3)之后test2.example.com,这是否意味着只有一条A记录( 192.0.2.4)或两条A记录( 和192.0.2.3) 192.0.2.4

Stu*_*ggi 7

  1. 通配符不适用于域的根记录,因此 (1) 将是唯一的 A 记录example.com
  2. 关于通配符的关键点是它们仅适用于其他不存在的子域,因此任何对test.example.com和的查询test2.example.com将分别由 (2) 和 (4) 回答。
  3. 正如我上面所说,通配符不适用于明确声明的子域,因此它并不重要,但 DNS 通常不关心区域中记录的顺序(有一些例外,例如 SOA 记录应该在哪里,和循环赛记录)。

总而言之,只有当查询进来时,假设foobar.example.com它才会与您的通配符记录匹配。