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 / 问题 / 490245
Accepted
Red Cricket
Red Cricket
Asked: 2013-03-22 12:42:04 +0800 CST2013-03-22 12:42:04 +0800 CST 2013-03-22 12:42:04 +0800 CST

为每秒响应和窗口绑定 DNS 速率限制和值

  • 772

在我的 DNS 服务器的 named.conf 中,我看到

    rate-limit {
            responses-per-second 5;
            window 5;
    };

这到底是什么意思?它会导致 DNS 客户端问题吗?这是配置太紧了吗?

domain-name-system
  • 5 5 个回答
  • 20804 Views

5 个回答

  • Voted
  1. Falcon Momot
    2014-03-30T20:09:57+08:002014-03-30T20:09:57+08:00

    您应该阅读BIND 9.9 的管理员参考手册。

    基本上,responses-per-second是每秒可以发送到一个单一目的地的相同回复的数量。定义很棘手。

    单个目的地是网络地址块,其大小在中配置ipv4-prefix-length或ipv6-prefix-length适用。因此,如果ipv4-prefix-length是 24,并且两者192.0.2.1都192.0.2.2在查询 DNS 服务器,它们将共享此配额并且只能在它们两者之间发送这么多查询。

    相同的回复是对特定 RRtype 的特定存在名称或不存在名称的查询的回复。以下查询都是不同的:

    IN A example.net.
    IN A www.example.net.
    IN AAAA example.net.
    IN A nonexistent.domain.example.net.
    

    但是,以下所有查询都是相同的(假设nonexistent.domain.example.net.etc. 名副其实):

    IN A nonexistent.domain.example.net.
    IN A nonexistent.domain2.example.net.
    IN SOA other.nonexistent.domain.example.net.
    

    window让事情更复杂一点。它是可以存储配额的秒数。乘以window和responses-per-second给出任何配额可以为正的最大值,或者用更基本的术语来说,即突发容量。

    举一个包罗万象的例子:

    您是 的非递归权威名称服务器example.net.。想象一下,在过去 10 秒内根本没有看到任何 DNS 流量,并且问题中的配置适用于全局。以下事件依次发生:

    1. 主机 198.51.100.1 发送 100 个查询IN NS example.net.。允许 25 个,其余 75 个将被忽略。
    2. 主机 198.51.100.1 发送 100 个查询IN A nonexistent.example.net.。允许 25 个,其余 75 个将被忽略。
    3. 主机 198.51.100.1 发送 1 个查询,IN MX nonexistent-domain.example.net. 由于已达到不存在域的限制,它将被忽略。
    4. 主机 198.51.100.1 发送 1 个查询IN A example.net.。这是允许的。
    5. 主机 192.0.2.1 到 192.0.2.50 各发送一个查询IN NS example.net.。其中 25 人得到回复,其余 25 人被忽略;198.51.100.0/24 的配额不适用于这些主机,但它们共享 192.0.2.0/24 的配额。
    6. 一秒钟过去
    7. 主机 192.0.2.26 到 192.0.2.50 重复他们的查询IN NS example.net.。其中 5 个得到回复,其余 20 个被忽略,因为每秒仅通过 5 个查询补充配额。
    • 13
  2. Best Answer
    skarap
    2013-05-12T22:59:44+08:002013-05-12T22:59:44+08:00

    它限制了单个 DNS 客户端在一秒钟内可以获得的相同响应的数量。该window 5选项允许突发 5*5 响应。

    “相同的响应”和“单一 DNS 客户端”在这里有点不明显,请阅读以下内容了解更多信息:http ://web.archive.org/web/20140209100744/http://ss.vix.su/~ vjs/rl-arm.html。

    一般来说,限制速率是一件好事 - 可能会在某天遇到 DOS 攻击时帮助您。对于大多数情况,默认值应该没问题。

    • 8
  3. Tiffany Walker
    2013-03-22T22:20:16+08:002013-03-22T22:20:16+08:00
    iptables -A INPUT -p udp --dport 53 -m recent --set --name dnslimit
    iptables -A INPUT -p udp --dport 53 -m recent --update --seconds 60 --hitcount 11 --name dnslimit -j DROP 
    

    IPtables 也可以工作。如果发现攻击,则将流量完全排除在服务之外。

    • 4
  4. Sandor Marton
    2013-05-13T05:19:13+08:002013-05-13T05:19:13+08:00

    我不认为限制速率是个好主意,问问你自己:你是否也对网络服务器响应进行速率限制?为什么您认为 DNS 响应不如网络服务器响应重要?
    即使您限制速率,5 个请求/秒听起来也很低。

    • 0
  5. Dale
    2020-11-15T21:02:05+08:002020-11-15T21:02:05+08:00

    我在遭受放大攻击的可操作 bind 9 服务器上有一个非常接近的配置(没有 Window 5 值)。我已经完成了 DNS 数据包捕获,并且服务器正确地回答了合法查询并且没有响应攻击查询。这是在大约 30 分钟的时间内捕获了 5000 个数据包。从我的角度来看,这些价值观已经完全挫败了攻击。

    • 0

相关问题

  • Solaris DNS

  • resolv.conf 在经过一段时间后被更改

  • 为什么有些网站的网址中没有“www”就无法显示?[关闭]

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

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

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

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

    • 9 个回答
  • Marko Smith

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

    • 3 个回答
  • Marko Smith

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

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +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