如何配置EDNS_0

如何配置EDNS_0,第1张

使用 Windows 界面

打开 注册表编辑器。

警告

编辑注册表不当可能会严重损坏您的系统。在更改注册表之前,应备份计算机上任何有价值的数据。如果在应用了手动更改之后遇到问题,那么还可以使用“最后一次正确的配置”启动选项。

在注册表编辑器中,定位到以下注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters

添加下列 DWORD 项:

EDNSCacheTimeout

要更改缓存超时,请键入一个 3600(1 小时)与 15724800(182 天)之间的值(秒)。

在同一注册表子项(参数)中,添加下列 DWORD 项:

EnableEDNSProbes

要将 DNS 服务器配置为只在包含 OPT 资源记录的 EDNS0 请求响应中包含 OPT 资源记录,请键入 0x1 (DWORD)。

重新启动 DNS 服务器。

注意

XOX

XOX

注册表项 EDNSCacheTimeout 的值确定 DNS 服务器将保存其他 DNS 服务器(它们已对 OPT 资源记录的查询做出响应)支持的 EDNS 版本信息的时间。

使用命令行

打开 命令提示符。

键入以下某项:

dnscmd ServerName /Config /EDNSCacheTimeout Value

dnscmd ServerName /Config /EnableEDNSProbes Value

值 描述

dnscmd 指定命令行程序的名称。

ServerName 必需。指定 DNS 服务器的 DNS 主机名。还可以键入 DNS 服务器的 IP 地址。要在本地计算机上指定 DNS 服务器,还可以键入句点 (.)。

/Config 必需。指定命令配置 DNS 服务器。

/EDNSCacheTimeout 必需。指定 DNS 服务器记住远程服务器报告的 EDNS 参数的时间长度。

/EnableEdnsProbes 必需。指定 DNS 服务器是否探测其他 DNS 服务器以确定它们是否支持 EDNS。

Value 必需。对于 /EDNSCacheTimeout,请键入一个 3600(1 小时)与 15724800(182 天)之间的值。

对于 /EnableEDNSProbes,请键入 1 将 DNS 服务器配置为探测其他 DNS 服务器并确定它们是否支持 EDNS。键入 0 将 DNS 服务器配置为不探测远程服务器以了解它们是否支持 EDNS。如果键入 0,并且其他服务器要求,DNS 服务器会继续使用 EDNS。

注意

XOX

XOX

XOX

要查看该命令的完整语法,请在命令提示符下键入:

dnscmd /Config help

如欲了解当前注册表设置的信息,请键入下列命令之一:

dnscmd /Info /EDNSCacheTimeout

dnscmd /Info /EnableEDNSProbes

DNS(Domain Name System)“域名系统”,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,提供的服务是用来将主机名和域名转换为IP地址。这是互联网上最广泛使用的协议之一,开发与 1980 年代

DNS使用UDP作为传输层协议,但在某些情况下可以切换到TCP。 因此,使用UDP时,DNS消息的大小限制为512字节。 基本DNS消息以固定的12字节标头开头,后跟四个可变长度的部分:

DNS的开发是为了适应80年代的速度和流量,因为只有少数参与研究和开发的精英才能访问互联网。然而,自从速度,流量以及更重要的是互联网结构的方式以来,已经发生了很多变化。我们已经从集中式服务器架构走了很长一段路 - 互联网现在已经分发并服务于全球受众。

从上面的DNS消息结构中可以看出,当前表单中的DNS消息没有足够的空间来添加更多信息。在此背景下,增强DNS协议以满足新的要求变得至关重要。因此,提出了DNS的扩展机制,即EDNS。在较高的层面上,EDNS允许我们克服DNS标头中几个标志字段,返回码和标签类型的大小限制。它还允许将DNS消息大小从512字节扩展(当UDP用作传输协议时),而无需切换到TCP。

这个增强版的DNS如何使内容交付网络能够为最终用户提供高性能?

内容传送网络(CDN)确保最终用户从地理位置靠近它们的服务器提供服务。 这通常以两种方式完成 -

Catchpoint中的DNS体验测试可用于了解属于第一类的CDN使用的DNS解析过程。 此测试类型还有助于监视CDN网络上DNS服务器的性能和可用性。

随着公共DNS递归解析器(如Google DNS和Open DNS)以及使用集中式DNS解析器基础结构的ISP的出现,最终用户和递归解析器在拓扑上接近的假设不再有效。 例如,Open DNS解析器在印度尚未出现,因此如果最终用户使用Open DNS解析器,则可以在新加坡( https://www.opendns.com )中对Open DNS解析器进行DNS查询。 / data-center-locations /)。 影响 - 增加了往返时间和延迟。 由于距离或跳数的增加,丢包百分比也可能增加。

下图说明了使用Open DNS解析程序时的解析过程:

为了克服上述问题,递归解析器可以将edns-client-subnet(ECS)EDNS0选项传递给转发解析器,中间名称服务器,最终传递给权威名称服务器。 然后,权威的名称服务器使用ECS作为最终用户网络位置的提示,并提供地理上感知的答案。

下图说明了传递edns-client-subnet选项时DNS解析逻辑的更改:

EDNS为依赖DNS的CDN节省了一天,并确保它们符合改进的性能承诺。

支持使用ECS EDNS0选项的方法由Akamai等CDN,Dyn和NS1等DNS提供商以及Google DNS等公共DNS解析器提供。 使用DNS测试和高级设置来传递客户端子网信息,可以确保他们所依赖的网络基础架构能够很好地利用DNS协议的最新增强功能。

如果您对以下任何一点的回答为“是”,则应在DNS监控策略中包含DNS测试,并在其中传递EDNS客户端子网:

您有使用公共DNS解析器的用户抱怨DNS问题。

您使用CDN并查看用户始终路由到远程CDN服务器。

您将名称服务器域提供给公共DNS解析器以进行白名单以支持EDNS客户端子网。生日攻击和缓存污染是与使用EDNS客户端子网相关的两个安全问题。白名单可确保递归解析程序仅将ECS发送到列入白名单的权威名称服务器,反之亦然。

您在启用ECS支持后会看到DNS时间上升。 DNS解析过程通过一堆解析器和服务器 - 存根解析器,转发解析器,递归解析器,中间服务器和权威服务器。由于EDNS相当新,因此并非所有组件都支持它,导致重试和增加DNS时间。如果解析器支持,则解析器将在其请求中添加ECS选项。如果支持,服务器将使用ECS选项进行响应。否则,它会忽略该选项。

您会看到相同的CDN服务器IP被返回到最终用户的广泛网络,并且服务器已经过载。使用ECS时,DNS条目将缓存在查询中包含的客户端子网中。如果客户端子网足够通用以服务大量IP,则可以为其提供相同的CDN服务器。

从监控的角度来看,始终必须考虑协议的最新变化和增强。采用增强功能的策略以及测试和监控采用的平台也是至关重要的。快乐监控!

英文原文: https://blog.catchpoint.com/2017/05/03/should-cdns-be-thankful-for-edns/


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11488732.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存