我继承了一个局域网,实际上没有对本地资源进行名称解析...即所有用户手动输入 IP 地址以访问打印机和网络共享。也没有 LDAP 服务器或域......工作站只需连接到网络而无需身份验证。DHCP 通过核心交换机处理...... DNS 设置也由同一个核心交换机分发。目前,DNS 分配是这样的,按以下顺序:
10.1.1.50 / old Pentium III Windows 2003 box running DNS service- 128 MB RAM
169.200.x.x / ISP
4.2.2.2. / the well known public one
局域网上有几千个客户端....大部分活动是网页浏览(这是一个教育设置)。
首先,服务器似乎在完成这项任务时动力不足……然而,当客户端进行网上冲浪时,几乎没有缓慢……
一个频繁使用的 DNS 服务器应该有多少马力?
我还听说使用 4.2.2.2 是个坏主意……因为它被过度使用了……
最后,首先列出强大的外部 DNS 服务器是否有意义?(谷歌的 8.8.8.8 似乎是一个合乎逻辑的候选者)
当您外包给另一家公司时,尤其是免费的公司,您可能会考虑他们从中得到了什么。Google 从事信息业务,他们正在了解您(或您的用户)流量模式的另一个方面。
如果我在一所使用谷歌名称服务的大学里,我会很快提出隐私问题。
有些东西最好保留在内部,DNS 解析似乎就是其中之一。如果您无法或不愿意运行像BIND这样的稳定服务器,请购买设备来进行本地 DNS 解析。
小型站点的 DNS 可以在非常小的机器上运行,但我不会启用 DNSSEC。:)
我在一所大学工作,我们将内部 DNS 服务器用于仅限内部条目,除此之外,所有查找都转发到 Google 的 8.8.8.8/8.8.4.4 没有任何问题。
由于该服务器显然没有受到压力,我倾向于认为没有理由改变任何东西。您所描述的网络确实不需要内部 DNS,并且没有它甚至可能会减慢(简单地说?)学生的黑客攻击尝试,因为不会立即明显看出什么机器做什么。
由于您根本没有表明当前系统无法完美运行,因此实际上不需要更改任何内容。
关于
为什么这是合乎逻辑的?为什么不直接使用 ISP 的 DNS 或其他未经过滤的来源?
我会更进一步并删除 4.2.2.2,因为它被客户击中的可能性很小。毕竟,2003 年的机器和 ISP 的 DNS 都必须关闭才能发生这种情况。如果您真的觉得需要第三个 DNS 源,请改为添加 ISP 的辅助源。
如果您设置本地 DNS 服务器,即使您仅将其用作代理 DNS 服务器(例如,您的所有客户端计算机都对您的本地 DNS 服务器进行查找,这也然后在您选择的公共/ISP DNS 上进行查找,然后缓存答案)。为什么你会得到更快的响应?ping 10/100/1000 Mbit 网络上的主机,并将结果与通过 1/2/8/10 Mbit 互联网连接 ping 公共 DNS 服务器进行比较。我的猜测是,您将立即从本地 DNS 基础设施中受益,而这不会花费您太多。
如果您还将它用于本地主机名解析,那么您将受益于网络上的主机更容易记住、有意义的主机名。
使用内部 DNS 服务器的原因:
我几乎没有听说过 4.2.2.2,但这就是我所听到的。
我建议您至少为拥有数千个客户端的大型网络使用两台 DNS 服务器。如果(或者更确切地说,当)ONE DNS 出现故障时,我不想成为你……
如果您正在寻找同样的简单性并且不想自己托管,那么我建议您查看OpenDNS,您甚至可以在其中设置一些您可能想要在教育网络上进行的过滤(色情等)。特别是在教育网络上。
当然,我肯定会使用 Google 的 8.8.8.8 AND 8.8.4.4 而不是 4.2.2.2。
那台Win2003服务器是否用于其他用途?我会核对它,在您选择的 Linux/BSD 发行版上折腾并在其上安装 DNSMasq。
好吧,设置一个马力更大的 dns 服务器可能是有意义的。您可以在 Windows 2003 DNS 属性上使用 dns 调试日志记录 DNS 请求,以查看您获得的 DNS 流量。对于内部请求,您可以将本地记录上的 TTL 设置为较高的值以减少请求数。也许3600秒?
如果外部请求是列出供客户端询问的第一个 DNS 服务器,则外部请求将被缓存在内部服务器上。我相信根据 DNS 服务器设置,如果在内部服务器上找不到它,该服务器会将客户端推荐给可以回答的服务器,或者它会递归请求 - 获得答案,然后将其传递给客户端.
值得一读,因为您的网络可用性和稳定性可能会通过能够使用主机名而不是 IP 来获取内部资源而增加,但要有用,它确实需要仔细配置。
出于性能原因,本地 DNS 很难被击败。如果您不需要自己的服务器进行本地名称解析,那么 IMO 的第二个最佳选择是使用您的 ISP 提供的 DNS 服务器,原因很简单:理论上您无法比通过您的 ISP 进行更快的 DNS 解析,因为请求任何其他公共 DNS 服务器(如 8.8.8.8 或 4.2.2.2)无论如何都会通过您的 ISP 服务器。(很明显,您的 ISP 错误配置了 DNS 设置,但我假设它按预期工作)。
当任何应用程序尝试解析主机名时,首先操作系统会尝试使用内部缓存来解析它,如果缓存不可用,则会联系 DNS 服务器。通过使用dig,您可以绕过操作系统的缓存,直接查询您的或任何随机 DNS 服务器,并查看使用该 DNS 服务器解析所需的时间。
例如,如果我想
google.com
使用 ISP 提供的 DNS 服务器进行解析:解决它需要 9027 微秒。如果我运行 10 次,我会在 9-10 毫秒范围内获得一致的值。现在,如果我尝试使用 google 的 DNS 服务器:
它花了 30024 微秒。如果我使用他们的服务器进行挖掘,我会得到 20 到 60 毫秒的值,这比使用本地 ISP 提供的 DNS 服务器更糟糕。我的物理位置距离谷歌总部几英里,也许我处理 8.8.8.8 的本地点也不是那么远,但对于远离 8.8.8.8 的人来说,差异会更糟。
如果您有本地 DNS 服务器(您的路由器可能有),那么:
它花了 9368 微秒,因为我的路由器没有 google.com 的缓存,必须联系我的 ISP 来解决它。但是,如果我现在第二次运行它,我总是会得到始终小于 1 毫秒的缓存结果:
很难击败这种表现。
总的来说,按性能排序:
操作系统缓存是最快的(可能需要一微秒或更短的时间来解决它),因为不涉及网络请求
解析时间为 0.5-1ms 的本地 DNS 服务器
您的 ISP 的 DNS 服务器(可以是任何东西,假设 10 毫秒)
任何其他 DNS 服务器应该粗略地增加处理从您的 ISP 服务器到其他 DNS 服务器的请求所需的额外时间,最多可能是 20 到 60 毫秒。
那么,什么时候你会使用 8.8.8.8,第 4 个性能选项超过第 2 个?
当您的网络配置错误或您不知道您的 DNS 服务器的 IP 时,您可以简单地使用 8.8.8.8 作为快速修复。
将其用作辅助备份 DNS 服务器。
如果您的主 DNS 服务器过滤某些域(在某些国家/地区阻止访问某些站点),请使用它。
当您使用内部 DNS 时,使用内容交付网络的引用更有可能使用离您较近的服务器,而当您使用 8.8.8.8 时,CDN 将选择离 8.8.8.8 服务器所在位置更近的服务器。