Dotcom-Monitor 用户可以广泛控制如何执行 DNS 分辨率以执行其监控任务。 根据广泛的用户反馈,四个不同的 DNS 选项可用于监视任务。

设备缓存

设备缓存是默认选项,意味着在监视之前的任务(设备缓存)期间检索到的缓存名称服务器 (NS) 地址将最初用于监控。 如果设备缓存没有所需的地址,则将从根 DNS 服务器对地址进行自动查询。 设置此选项后,Dotcom-Monitor 将解析设备检查每个实例的主机名一次。 因此,如果同一设备中的一个或多个任务中存在对同一主机名的引用,则 DNS 查找将发生一次,然后在签入该设备的持续时间内缓存。

大多数检查都相当快,在一分钟内执行,因此没有理由每隔几秒解析同一主机。 此选项的缺点是性能数据可能因同一设备中的任务而异。 如果在同一主机上的同一设备中监视两个 URL,则第一个 URL 将始终变慢,因为它将包括 DNS 查找时间,而第二个 URL 将使用缓存的 DNS IP 地址,DNS 解析将非常快。

这种类型的缓存对于只有具有相同DNS 解析模式的任务是常见的。

非缓存

非缓存意味着将不使用设备缓存(上述任务的缓存),因此每个新执行都需要向 DNS 根服务器单独查询。 此选项可用于确保统一时间,因为每次都会执行 DNS 查找。 但是,非缓存选项可以显著增加 DNS 服务器上的负载,并增加监视任务的响应时间。

此选项不适用于基于浏览器的 BrowserView 或 UserView 监视平台,因为在检查后的几秒钟内解析相同的主机名数百次是不切实际的。 例如,假设同一服务器上具有许多元素的网页都具有与根服务器不同的 DNS 分辨率。 在此类方案中,每次检查解决一次就足够了。

TTL 缓存

TTL 缓存意味着在监视之前的任务(设备缓存)期间形成的 NS 缓存最初将用于监视。 如果设备缓存没有所需的地址,则将从本地 DNS 服务器对地址进行自动查询。 此选项最好模拟真实用户体验。

请务必注意,如果设置了 TTL 选项,并且指定的 DNS 服务器出现故障,则 Dotcom-Monitor 可能无法在 TTL 过期之前检测到故障(这可能需要数天或数周的时间)。 仅当监视正确的 DNS 解析不是优先级时,才建议使用此选项。

这种类型的缓存对于只有具有相同DNS 解析模式的任务是常见的。

外部 DNS 服务器

外部 DNS 服务器意味着指定的 IP 地址将被视为 DNS 服务器地址,并轮询 NS 数据。 例如,如果您知道大多数客户使用公共缓存服务(如 Google(8.8.8.8、8.8.4.4)或 Cloudflare(1.1.1.1),这在特定情况下很有用。 在这种情况下,您可以将 DNS 服务器设置为 Google 的 IP 之一。 只要指定的 Google DNS 提供有效的响应,Dotcom-Monitor 就不会检测到 DNS 错误,即使负责域的 DNS 服务器无法正常工作。

另一种情况是,如果您知道负责名称解析的服务器,并且不关心整个 DNS 链解析。 在这种情况下,您可以指定用于 DNS 解析的 DNS 服务器。 此选项还可以提供更好的 DNS 解析时间,因为 Dotcom-Monitor 不必从根服务器传播查找,并可以直接转到正确的 DNS 服务器。 但是,此选项可能无法检测到所有与 DNS 相关的问题。

每个单独的地址创建不同的缓存。 因此,例如,如果一个设备下的两个任务具有不同的外部 DNS(不同的 IP),则将存在两个不同的缓存。

  • DNS 监控基础知识

    DNS 代表什么?

    域名系统是现代互联网环境的基本技术之一,因为有关请求主机 IP 地址的信息是收到互联网上任何请求响应的先决条件。 IP 地址本身是一个数字值,如”100.123.145.167″,对于普通互联网用户来说,这是很难记住的。 互联网上的所有 IP 地址都是唯一的数字值。 除了复杂的结构外,互联网上主机的 IP 地址并不总是稳定的,例如,在更改主机时可以更改。 因此,为了使网络地址更舒适地用于普通互联网用户,引入了域名系统 (DNS)。 人类不是使用数字 IP 地址,而是使用字母域名访问连接到 Internet 的资源(计算机、Web 服务器、其他设备)。

    DNS 将客户要求的象征性域名翻译到服务于此域区的服务器的 IP 地址。 DNS 使用名为 DNS 服务器的专用主机来存储资源的记录并处理 DNS 请求。 DNS 服务器可以独立解决与其责任范围相关的网络地址,或转发对其未服务于 DNS 查找链沿线 DNS 服务器的区域的请求。

    负责将客户端(例如浏览器)的 DNS 请求传递给其他 DNS 服务器以满足客户端的 DNS 查询的 DNS 服务器称为 DNS 递归服务器或 DNS 递归服务器。 DNS 查询通常以 DNS 递归器开头。 通常,ISP 的 DNS 服务器充当 DNS 递归解算器。

    存储 DNS 资源记录并可以在不将请求重定向到其他 DNS 服务器的情况下将必要的 IP 地址返还给客户端的 DNS 服务器称为权威 DNS 服务器。 权威的 DNS 服务器通常是 DNS 查找链末端的服务器。

    除了 DNS 递归解算器和权威的 DNS 服务器之外,DNS 查找过程还涉及另外两种类型的中间服务器 – 根名服务器将 DNS 请求发送到服务主机名称最后一部分的更特定的位置和顶级域服务器(例如,.com、。uk 等)。

    DNS 分辨率在 Web 浏览器中的工作原理

    在浏览器中输入 URL 后,浏览器将使用互联网服务提供商的 (ISP) DNS 服务器查找托载所请求网站的服务器的 IP 地址。 这些 DNS 服务器的地址通常由托管提供商在连接时发送,或必须在 IP 连接参数中手动指定。 换句话说,当您将域名(例如google.com)输入浏览器的地址栏时,会向自动为您的 Internet 连接安装的本地 DNS 服务器生成解析器请求,或者您已指定用于 Internet 连接。

    收到请求后,本地 DNS 服务器在其缓存中查找有关将域映射到 IP 地址的信息,如果找不到所需的 IP 地址,则请求将传递给当前可用的根 DNS 服务器之一。 简单地说,本地服务器可能没有其缓存中所需的信息,但它可以与其他 DNS 服务器通信。

    当浏览器等待响应时,本地 DNS 服务器会联系世界主要服务器 ( Root DNS 服务器 ) 并要求google.com的 IP 地址。根 DNS 服务器仅存储域区域的 DNS 服务器的参考信息。因此,根 DNS 服务器不知道所请求域的 IP 地址,但存储负责所请求域区域内所有域的 DNS 服务器的 IP 地址,因为google.com这些是.com域区的 DNS 服务器。

    本地 DNS 服务器接收这些 DNS 服务器之一的 IP 地址,并尝试在该服务器上查找请求的 IP。 此 DNS 服务器也不知道 Google 的 IP 地址,但它知道google.com的参考信息由 NS 记录中注册该域名的权威 DNS 服务器托管。

    本地 DNS 服务器接收.com域中这些 DNS 服务器之一的 IP 地址,并将 DNS 请求传递给权威的 DNS 服务器。此权威的 DNS 服务器存储所需的 IP 地址并将其发送到本地 DNS 服务器。

    本地 DNS 服务器接收正确的 IP 地址,并将所请求的主机名的 IP 地址传递给浏览器。

    浏览器获得google.com IP地址,直接连接到其服务器并加载网站。

    一般来说,DNS 查找过程非常快,用户不会注意到是否对整个 DNS 查找链进行了调查。

    监控的 DNS 错误

    如上所述,DNS 服务器可以在执行递归式查询期间按顺序查询其他 DNS 服务器,并暂时存储缓存内存中响应中包含的信息。 在这种情况下,DNS 服务器无需重新请求域的 IP 地址,只需使用已缓存的相应地址即可。 资源记录的 TTL 字段中指定了将此类信息存储在缓存中的最大允许时间。 DNS缓存是黑客用来将流量重定向到黑客网站的漏洞之一。 这种类型的欺诈涉及在 DNS 服务器缓存中欺骗 IP 地址,称为 DNS 缓存中毒。

    此外,DNS 服务器攻击(如 DNS 隧道、DNS 放大攻击、DDoS 攻击或各种类型的硬件/网络故障)可能导致 DNS 中断,并对 Web 服务的性能产生负面影响。

    带网络监控器的 DNS 监控

    如果攻击者更改了您的 DNS 设置,则必须是通知您的第一个人。 Dotcom-Monitor 提供 DNS 监控工具,可用作保护 DNS 设置的主动措施。 当系统检测到您的主机名被解决到其他 IP 地址比您指定或在执行 DNS 查找时发生的其他问题时,将生成错误,并将警报通知发送到指定的通知地址。 因此,在用户被引导到网络钓鱼和恶意软件网站之前,您可以立即对威胁做出反应。