我在 Debian 服务器上运行一个应用程序,它使用 IPv4 和 UDP 进行数据通信。
我想暂时阻止所有往返时间超过 140 毫秒的客户端。不幸的是,我无法直接在应用程序中实现这样的规则。
是否可以为此创建 iptables 规则?
答案1
IPtables 无法做到这一点。IPTables 无法看到数据包的 rtt。标准 UDP 数据包不包含发送时的时间戳,而且您无法确保该客户端上的时钟与您自己的时钟同步。
您的应用程序必须通过向客户端发送带有嵌入时间戳的数据包来处理此问题,等待客户端回复,并将时间戳与当前时间进行比较。这种级别的行为超出了 IPTables 的能力范围。