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 / 问题 / 1046830
Accepted
Jonathan S. Fisher
Jonathan S. Fisher
Asked: 2020-12-19 14:44:05 +0800 CST2020-12-19 14:44:05 +0800 CST 2020-12-19 14:44:05 +0800 CST

在水平分割 DNS 的情况下,当查询 DNS 服务器不受其控制的域时,DNS 服务器的行为是否正确?

  • 772

因此,我们的云提供商之一在 VM 之间提供了一个低延迟、零评级的“内部网络”选项。内部网络上的接口位于 10.xxx IP 空间中。当我们的一台服务器查询内部网络上另一台服务器的主机名时,我们希望它解析为内部网络上的地址,而不是导致传输记帐的公共可路由地址。

我们已经实现了一个小型服务器来执行此操作,当源 IP 是 10.xxx IP 时,它将返回内部地址。

我们不想做的是让我们的内部服务器成为我们虚拟机的唯一主 DNS 服务器。我们会让它成为客户端列表中的第一个服务器,然后是一个公共 dns 服务,如 1.1.1.1。

因此,如果在内部 DNS 中查询 google.com(我们不拥有),我们应该返回给客户端的正确响应是什么?我们应该简单地忽略请求还是应该返回 NxDomain 响应?

感谢您的任何建议!

domain-name-system internal-dns tcpip split-dns
  • 1 1 个回答
  • 128 Views

1 个回答

  • Voted
  1. Best Answer
    Esa Jokinen
    2020-12-20T06:28:34+08:002020-12-20T06:28:34+08:00

    如果您将服务器用作递归服务器,它应该以从权威基础设施解析的正确回复进行响应。如果您返回NXDOMAIN,则 DNS 客户端信任答案,并且不会继续访问其他服务器。如果您不回复任何内容,那只会导致不必要的超时延迟。

    此外,DNS 客户端通常没有理解这种条件解析的功能,但 DNS 服务器有。因此,要考虑的一个选项是在将执行条件转发的每台服务器上安装本地 DNS 服务器。在这种情况下,您要配置的唯一 DNS 服务器resolv.conf将是localhostie 127.0.0.1。

    这些示例采用 BIND 配置格式,因为您没有在问题中指定您的风格。

    options {
        forwarders { 1.1.1.1; };
    }
    
    zone "example.com" {
        type forward;
        forward only;
        forwarders { 10.8.8.8; };
    };
    

    或者,如果与内部 DNS 服务器的连接不稳定,服务器还可以通过区域传输托管内部区域的副本:

    zone "example.com" { 
        type slave; 
        file "/etc/bind/db/example.com"; 
        masters { 10.8.8.8; }; 
    };
    

    自然,主服务器也应该允许传输。

    • 1

相关问题

  • 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