【问题标题】:Check if dns-zone exists on specific nameserver检查特定名称服务器上是否存在 dns-zone
【发布时间】:2020-03-10 04:19:18
【问题描述】:

如果我正确理解了以下 Linux 命令,则查询只会从给定的名称服务器开始,但如果在那里找不到 dns-zone,它会将请求发送到 tld-nameserver。

dig mydomain.example @ns.mynameserver.example

我的问题是,如果我的域名服务器上不直接存在 dns 区域,我也会收到响应。有没有办法在没有直接访问权限的情况下检查给定名称服务器上是否存在 dns-zone?

【问题讨论】:

  • SO 是专为专业和热情的程序员准备的问答页面。
  • @Cyrus 而你是在暗示我不是那些东西?
  • 这是暗示你的问题与软件开发无关,最好放在Unix & Linux Stack Exchange
  • @Cyrus 好吧,公平的游戏,你是对的,但是在 SO 上发布了大量与 DNS 甚至 Bash 相关的问题。不过感谢您的提示 - 下次我有问题时会考虑它。

标签: bash dns nameservers dig


【解决方案1】:

我想我已经找到了我(相当愚蠢的)问题的答案:

我可以从我的名称服务器开始挖掘 ns 记录:

dig NS mydomain.example @ns.mynameserver.example +short

如果响应包含 ns.mynameserver.tld,则 dns-zone 存在于该名称服务器上。这样,如果域中实际使用了其他名称服务器,如果 ns.mynameserver.tld 上存在 dns-zone,我会返回 ns.mynameserver.tld。

如果您发现我的解决方案有任何问题,请随意添加任何内容。

【讨论】:

  • SOA 将是查询该需求的更好的记录类型。此外,您需要确保在回复中获得“AA”(权威答案)标志,因为区域的权威名称服务器应该启用它。但是您需要删除 +short 才能看到它。您还应该使用+norecurse 进行查询,以确保在发送查询时激活没有递归标志,这是一种保障。 +aaonly 相同
猜你喜欢
  • 2010-09-09
  • 2017-09-01
  • 2014-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-08
  • 2014-02-11
  • 2021-04-07
相关资源
最近更新 更多