我的服务器似乎遭到了 SYN 洪水攻击。速度介于 50-600MBit/s 之间,欺骗 IP。
数据包如下所示:
IP p.q.r.s.1234 > my.ser.vers.ip.80: Flags [S], seq 0, win 5840, length 0
显然p.q.r.s
是随机的。(是的,源端口始终是 1234)
虽然这本身并不足以填满我的链接,但响应也发挥了作用,机器变得相当慢。
丢弃 seq=0 的 TCP SYN 是否合理?
答案1
当然,您可以丢弃 seq=0 的 TCP SYN,但您只有 1/4294967296 的机会(多或少)或丢弃真正的连接......但:
实际的 TCP 序列号可能不是 0!
tcpdump
我不知道您正在使用什么工具(输出格式似乎与或tshark
/Wireshark都不太匹配),但和 Wireshark 实际上都记住了 TCP 流的状态并从和字段tcpdump
中显示的值中减去初始序列号,因此 0 表示“ISN 是什么”。seq
ack
请注意手册页中的此选项tcpdump
:
-S Print absolute, rather than relative, TCP sequence numbers.