AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 489432
Accepted
TryTryAgain
TryTryAgain
Asked: 2013-03-20 14:49:04 +0800 CST2013-03-20 14:49:04 +0800 CST 2013-03-20 14:49:04 +0800 CST

当正向查找区域不包含请求的子域时如何使用外部 DNS 转发器

  • 772

使用 Windows 2008 R2 DNS:

我们有一个正向查找区:

somerealdomain.com

us-wil    |    A    |    10.10.0.1
us-chi    |    A    |    10.10.0.2
us-day    |    A    |    10.10.0.3
us-sea    |    A    |    10.10.0.4
us-sf     |    A    |    10.10.0.5
us-ny     |    A    |    10.10.0.6
give      |    A    |    10.10.0.7
me        |    A    |    10.10.0.8
test      |    A    |    10.10.0.9

如果我NSLookup对其中任何一个执行操作,它们显然会正确指向内部 IP。

现在,如果我希望使用我们的转发器 8.8.8.8、8.8.4.4 等提供的外部 DNS 解析任何不存在的子域,我该如何实现?比如说,我想解析 get.somerealdomain.com,它不包含在正向查找区域中,但可以在公共 DNS 服务器上解析?

我需要这个,所以如果有人搜索我们未包含在我们的正向查找区域中的子域,它将从公共 DNS 服务器出去并解析。我假设默认情况下会发生这种情况,就像我们没有为其写入记录的任何其他域一样,但是因为我们将 somrealdomain.com 作为正向查找区域,任何没有写入记录的子域都会死掉而不是询问外部域名系统。为什么?我该如何解决这个问题?

domain-name-system
  • 3 3 个回答
  • 9220 Views

3 个回答

  • Voted
  1. Dusan Bajic
    2013-03-22T11:22:06+08:002013-03-22T11:22:06+08:00
    1. 删除 somerealdomain.com 区域
    2. 创建 us-wil.somerealdomain.com 区域
    3. 将 A 记录添加到 us-wil.somerealdomain.com 区域并将主机名留空(使用内部 IP 地址)。
    4. 对所有内部主机名重复步骤 2 和 3
    • 3
  2. Best Answer
    isedev
    2013-03-20T15:35:47+08:002013-03-20T15:35:47+08:00

    DNS 要求给定区域只有一个实例(区域可以由多个权威服务器提供服务,但只允许区域的一个实例)。您根本无法让 DNS 服务器先查询本地转发区域(即本地定义的主区域或从区域),然后在找不到匹配条目时查询另一个 DNS 服务器。您正在有效地覆盖本地服务器上 somerealdomain.com 的定义(就它而言,该区域的公共版本不存在)。

    有许多可能的解决方法。如果您有权访问公共区域文件(直接或通过区域传输),则合适的脚本可以使用未在本地覆盖的公共条目回填您的本地区域。这不是微不足道的,需要一些深入的知识。

    另一种方法是在您的 DNS 服务器前面放置一个过滤 DNS 代理——这种用于渗透测试的 DNS 代理可以配置为根据查询的内容(或直接伪造答案)将查询转发到不同的 DNS 服务器——这是实际上你在做什么)。

    最后,您可以使用 DNS 缓存,例如 dnsmasq(与过滤 DNS 代理的原理相同)- 有关详细信息,请参阅此答案。

    • 2
  3. lmickh
    2013-03-20T15:33:54+08:002013-03-20T15:33:54+08:00

    通常子域是从更高域指向的。您的 DNS 服务器认为它是 somerealdomain.com 的权威。当收到对 subdomain.somerealdomain.com 的请求时,它会检查自己的记录并说“那不存在。我应该知道我是父亲”。

    您需要一条记录来指向您的子域的 DNS 服务器。通常这涉及将子域(或子区域)委托给另一个 DNS 服务器。我相信您在 DNS 控制台中右键单击域并选择“新委派”。也可以使用 dnscmd 命令完成。

    • 0

相关问题

  • Solaris DNS

  • resolv.conf 在经过一段时间后被更改

  • 为什么有些网站的网址中没有“www”就无法显示?[关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve