Security 当使用原始套接字进行TCP通信时,防止内核接收传入的数据包

Security 当使用原始套接字进行TCP通信时,防止内核接收传入的数据包,security,sockets,testing,iptables,Security,Sockets,Testing,Iptables,我正在运行一些需要使用非标准TCP套接字的安全测试,以生成正常TCP堆栈不会遵循的行为。我使用原始套接字来生成这样的流量 当接收到来自另一个端点的应答时,内核不知道TCP连接并发出重置。为了防止这种情况发生,通常的解决方案是定义一个iptables规则来删除所有传出重置(例如iptables-A OUTPUT-p tcp-dport 50000-tcp flags RST-j DROP) 然而,在我的特殊情况下,重置也是测试期间生成的有效段。我需要的是一种从该连接中过滤出所有段的方法,这样内核T

我正在运行一些需要使用非标准TCP套接字的安全测试,以生成正常TCP堆栈不会遵循的行为。我使用原始套接字来生成这样的流量

当接收到来自另一个端点的应答时,内核不知道TCP连接并发出重置。为了防止这种情况发生,通常的解决方案是定义一个iptables规则来删除所有传出重置(例如iptables-A OUTPUT-p tcp-dport 50000-tcp flags RST-j DROP)

然而,在我的特殊情况下,重置也是测试期间生成的有效段。我需要的是一种从该连接中过滤出所有段的方法,这样内核TCP堆栈就不会涉及,并且可以访问原始套接字中的所有段。 有什么办法可以做到这一点吗?这在iptables中是可能的吗

提前谢谢
Luis试图使用主机的IP地址并对抗Linux的TCP/IP堆栈,这是自找麻烦


相反,我将使用一个单独的IP地址,将其路由到tun设备,并从tun设备获取原始IP数据包,而不是使用原始套接字(可以从中获得一些连接tun设备的示例代码)。这样,Linux TCP/IP堆栈就不会妨碍您(除了路由pupos)。

使用tub设备的问题是,流量将在机箱内部,我需要从外部测试盒测试到被测系统。出于这个原因,我需要一种从测试仪盒生成这些TCP段的方法,包括重置。