SYN堆栈是否被Linux堆栈阻止?

时间:2016-05-19 11:57:00

标签: tcp linux-kernel scapy

我正在尝试将一个在Linux机器(内核3.16)上设置的SYN + FIN控制位的TCP段发送到另一个用于scapy的测试目的:

from scapy.all import *

sport = random.randrange(1024, 65535)
dport = 45000

pkt = IP(dst=X.X.X.X)/TCP(sport=sport, dport=dport, flags="SF")
send(pkt)

可以通过发送方上的wireshark查看该段,但是,它似乎没有发送到X.X.X.X,因为该计算机上的wireshark根本看不到该段。 Linux内核是否阻止发送SYN + FIN段(因为段中的这种控制位组合永远不会发生)?否则,这种行为可能是什么原因?如何实现发送SYN + FIN段?

1 个答案:

答案 0 :(得分:1)

一般来说,一个细分市场永远不会同时拥有SYN& FIN标志在违反TCP规则的同时设置。这实际上取决于操作系统,但TCP通常会发回RST。

关于此问题有一个类似的主题,请参阅What happens when SYN and FIN flags in TCP headers are both set to 1?