DNS灰色列表和长时间的重试间隔 – 标准做法?

我公司的ISP已经实施了我所称的DNS“灰名单”(或者他们有一个configuration问题) – 他们阻止了在最近60次尝试查询的[parsing器IP,服务器IP]对之间的入站DNS查询秒。 因此,如果第一个查询失败,那么只要上次尝试的时间less于60秒,进一步的查询就会成功。 我假设这是为了隐藏主机扫描,假设合法的parsing器将重试查询。 他们甚至可能会阻止所有UDP数据包来对付端口扫描,但是我还没有find一种方法来testing这个。

事实certificate,Cisco IronPort设备通常具有超过60秒的重试间隔。 (尝试每个辅助DNS服务器15秒,然后在重试主服务器前60秒)我的公司无法接收大多数使用IronPort设备的组织的电子邮件。

我的感觉是,至less有一种行为是错误的。 所以我的问题是:

1)DNSparsing器的build议重试间隔是多less? 你能引用一个RFC或其他来源,还是事实上的行业标准?

2)DNS或UDP是“灰名单”的标准做法吗? 参考文献?

编辑 – 一些额外的背景细节:

我公司的DNS服务器都受到影响,我们的ISP的主名称服务器也受到影响。 他们的辅助名称服务器(实际位于其networking之外)以及受影响主机上游的名称服务器不受影响。 我们还有第二个ISP,通过这个路由进入的DNS查询不会被阻止。 我们的外部防火墙上的数据包跟踪显示,我们回答所有收到的DNS查询 – 丢弃的查询不会传送到我们的networking。 我提出这个问题的主要目标是制定一份标准文件,向我们的ISP(或不太可能的思科)表明他们的行为已经被破坏,需要修复。

DNS服务器分为几个不同的组别:

  • 权威的服务器
  • 公共recursor
  • 非公共recursor

在这些情况下,试图隐瞒它们的存在是没有意义的。 权威的DNS服务器必须是可公开访问的,以便完成他们首先设置的任务。 如果你试图隐藏它的存在,公共的回报是毫无意义的。 如果你运行一个不应该公开的recursor,那么就不要试图隐藏它,只要阻止未经授权的客户IP对它的请求。

从你的问题,这听起来像你问的DNS服务器是权威的你的区域。 所以我认为这是一个权威的DNS服务器。

权威的DNS服务器和公共recursors从任意的客户端IP地址接收查询,这意味着他们可能被用于放大攻击。

不幸的是,DNS协议并没有很好的保护这种攻击。 你描述的行为可能是一个非常糟糕的尝试,以防止这种攻击。

有一些DNS服务器可以防止放大攻击,而不会像描述的那样影响很多。

  • 不发生攻击时不要应用对策。 而是查找攻击可能导致的ICMP错误响应,并在检测到可能的攻击时采取对策。
  • 不要放弃请求,而是发送一个没有回答的答复部分,并设置截断的位。 这将导致任何适当的DNS客户端使用TCP重试。
  • 由于TCP更能抗欺骗,因此可以发送回复而不用担心放大攻击。
  • 记住通过TCP成功查询的IP地址。 这些可以被允许在未来通过UDP进行查询。

我在这里描述的并不是一些正式的最佳实践,就我所知,最好的办法就是像今天看到的那样,用DNS协议来防止放大攻击。 我不知道这种方法的任何实际实施。