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 / 问题 / 31992
Accepted
GetFree
GetFree
Asked: 2009-06-26 18:37:59 +0800 CST2009-06-26 18:37:59 +0800 CST 2009-06-26 18:37:59 +0800 CST

DNS 循环中 IP 地址的实际限制是多少?

  • 772

我目前正在运行一个站点,其流量现在分布在 7 个镜像服务器之间(使用 DNS 循环)。但考虑到持续增长的大量流量,很快将需要更多镜像。

使用轮询 DNS 时,与给定域名关联的 IP 地址数量是否有任何实用的推荐限制?

另外,当镜像数量较多(例如超过 10 或 20 个镜像)时,您会推荐哪种解决方案?

谢谢。

domain-name-system load-balancing traffic
  • 5 5 个回答
  • 5083 Views

5 个回答

  • Voted
  1. Best Answer
    James F
    2009-06-27T00:49:07+08:002009-06-27T00:49:07+08:00

    要记住的一件事是,默认情况下,DNS 查找使用 UDP。如果响应大于单个数据报所能容纳的大小,则返回可容纳的数据,并在标头中设置 TC(截断)位。

    请求者可以选择使用返回的内容,或使用 TCP 重新尝试查询。

    缓存 DNS 服务器不应该缓存截断的响应,因为它们不知道返回的记录集有多完整(响应没有说“我给你 28 条记录中的 12 条”)。

    因此,最大记录数是您可以在 UDP 数据报中粘贴多少的一个因素。请记住,响应需要包括权限部分,其大小将根据区域的 SOA 记录而有所不同。

    如果您使用 CNAME 记录,这也会增加响应的大小,因为您会返回 CNAME 和指向的事物的 A 记录。

    最好的办法是使用 dig 或“host -v”来处理不同数量的 A 记录,以查看查询何时超过 UDP 响应的最大大小。

    • 10
  2. Mike
    2009-06-26T19:19:08+08:002009-06-26T19:19:08+08:00

    没有硬性限制,但大多数站点运行的镜像不超过 5 或 10 个。如果站点在地理上是分开的,那么通过 DNS 循环进行镜像是最有用的,这样除了负载共享之外还有冗余。

    随着镜像数量的增加,使用 DNS 轮询作为负载分担的效率会降低,因为 DNS 轮询不考虑需要更多资源的不同请求。最好使用前端负载平衡根据 CPU 负载和服务器可用性来分配工作负载,这也将简化维护,因为服务器可以立即关闭而无需更改 DNS,从而导致客户端尝试从缓存的 DNS 记录中访问已关闭的服务器.

    • 8
  3. UltimateBrent
    2010-01-09T21:38:06+08:002010-01-09T21:38:06+08:00

    我迟到了这个问题,但我认为提及你可以做的实际限制会很好。我知道没有理论上的限制,但有几个 ISP 不会超过 36。实际上,如果你包含更多,它不仅不会包括额外的服务器,他们会完全忽略你。Verizon 和 Comcast 是我遇到的两个问题,但我相信其他人也会受到影响。

    也就是说,如果您有足够的流量来保证 36 个镜像,请不要使用循环 DNS。

    • 3
  4. Andrew McGregor
    2010-01-09T22:07:52+08:002010-01-09T22:07:52+08:00

    如果您有很多服务器,也许最好的答案是像 Akamai 一样使用任播 DNS 服务器和轮询。换句话说,该区域的 DNS 服务器分布在网络周围,都具有相同的 IP 地址,并且在网络上最近的服务器上路由点客户端。每个服务器都以循环方式回答可能服务器的完整列表的一个子集。

    • 2
  5. Chopper3
    2010-01-10T01:14:02+08:002010-01-10T01:14:02+08:00

    我们做了一些非常相似的事情,但我们使用硬件负载平衡器(Cisco ACEs btw),这样唯一的限制是子网大小(如果有的话)。

    • 1

相关问题

  • 使用 IIS7 请求路由和负载平衡模块进行负载平衡

  • 动态更新 /etc/resolv.conf 中列出的解析器

  • 内部名称解析

  • 软件http负载均衡器?

  • 上线的第一天:如何不杀死您的网站

Sidebar

Stats

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

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

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

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

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

    • 3 个回答
  • Marko Smith

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

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +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