根据长度阻止数据包

根据长度阻止数据包

我可以阻止长度大于 X 的数据包(特别是 UDP)吗?我受到来自大量 IP 地址的超大 UDP 数据包的攻击。我在攻击端口上合法使用 UDP 数据包,但任何超过一定大小的数据包对我来说都是恶意的。

我在 Windows Server 2008 上,没有硬件防火墙。

谢谢。

答案1

Windows 本身并不支持此功能。

您的选择是:

  • 获取硬件防火墙
  • 有些软件防火墙(如 Zone Alarm)会在数据包长度超过报告的长度时丢弃数据包。但我不知道有哪个 Windows 软件防火墙可以做到这一点。

答案2

您可以通过以下两种方式之一进行操作:

  • 在应用程序中,通过查看读取数据包的大小,如果数据包太大则不对其进行任何处理。这不会为您节省任何网络流量,但可以避免花费 CPU 周期来处理无效数据包。
  • 在上游(尽可能上游)安装一个合适的防火墙并在那里进行过滤。您的服务提供商应该能够提供合适的服务(可能需要付费)。这样会更好,因为它不会堵塞过滤设备和您的服务器之间的网络链接。

尝试使用基于 Windows 主机的防火墙来实现这一点可能是可行的,但并不是特别有效——与仅在应用程序中丢弃数据包相比,阻止主机上的数据包并不会节省太多资源。

相关内容