SYN洪泛攻击发生在TCP三次握手的第二次握手,此时客户端的连接信息被服务端记录在半连接表中(表的大小由listen第二个参数指定)。然后服务端会发送SYN+ACK两个报文给客户端,如果客户端迟迟不回应,那么这个半连接表里面的数据就会一直占用。如果表满了,那么服务端就不能和新的客户端进行连接握手了。 抵御SYN洪泛攻击的一种方法就是开启SYNCookies,这个会立刻清空半连接表里面的信息。然后在发送SYN+ACK报文的时候,Cookies会生成一个随机SYN来代替原来的SYN。然后客户端发来ACK请求,如果这个ACK和SYN匹配上了,就是握手成功。