我的机器每秒被数千个数据包淹没。它们不会占用太多带宽(1gbit 中为 60mbps),但它们会占用负责处理网卡中断的 CPU,从而严重损坏系统。ksoftirqd 达到 100%,机器几乎无法访问。我该如何处理这种攻击 - 抛出大量随机数据包?有没有办法以某种方式调整处理服务器中断或将其分发到其他 CPU 上?
我的网卡使用NAPI,linux内核是2.6.31.5
答案1
您需要联系上游提供商,让他们阻止、过滤或以其他方式阻止来自此 DDOS 的数据包到达您。当它们到达您的服务器时,您实际上无能为力。
您可以尝试使用 iptables 来阻止源 IP 地址,但当 iptables 实际查看数据包并决定丢弃它时,很可能已经造成了(计算)损害。
编辑:
您的评论对我来说毫无意义。您的 DDOS 是由大量或特制的数据包(或两者)引起的,由于中断切换而导致过多的计算开销。它们是来自一个还是几个来源?让您的上游提供商丢弃来自该来源的数据包?利润!如果它们永远不会到达您的机器 - 它们首先就不会造成问题。一旦数据包已经到达,您就无法在主机上施展任何魔法来阻止这种情况发生。您需要丢弃数据包前它们到达您的机器。请联系您的服务提供商或托管公司。