Python scapy正在丢弃ipv6扩展头数据包
因此,我在linux中使用scapy,以便在成功开始3路TCP握手后向服务器发送IPv6 HTTP请求 如果没有扩展头(我使用ipv6),http请求将成功返回,但如果有扩展头,则不会得到响应。我怀疑服务器是否会丢弃数据包,因为作为我论文的一部分,我将数据包发送到世界顶级服务器(支持ipv6的前1000个服务器),以查看它们的兼容性。这可能是一个错误的配置 atm的格式为: 我创建了一个IPv6数据包/IPv6ExtHdrRouting() 长话短说,我使用了所有4个可用的扩展标题,但我没有得到回复,如果我没有使用,我会得到完整的回复。为什么我的包会掉下来 发送所有数据包时没有任何参数。如果这就是问题所在,您能否为每个扩展头显示一个初始化示例,以便获得响应 编辑: 我的代码相当复杂,在运行所有过程后,我会执行以下操作: site[:-1]是一个网站,即www.google.com ip是一个带有扩展头的ipv6地址 正如您所看到的,3路握手没有扩展头,当我执行HTTP请求时,我使用带有扩展头的IP 具有扩展标头的ip如下所示(没有较低级别的详细信息,如TCP等):Python scapy正在丢弃ipv6扩展头数据包,python,ipv6,scapy,Python,Ipv6,Scapy,因此,我在linux中使用scapy,以便在成功开始3路TCP握手后向服务器发送IPv6 HTTP请求 如果没有扩展头(我使用ipv6),http请求将成功返回,但如果有扩展头,则不会得到响应。我怀疑服务器是否会丢弃数据包,因为作为我论文的一部分,我将数据包发送到世界顶级服务器(支持ipv6的前1000个服务器),以查看它们的兼容性。这可能是一个错误的配置 atm的格式为: 我创建了一个IPv6数据包/IPv6ExtHdrRouting() 长话短说,我使用了所有4个可用的扩展标题,但我没有得到
在我们展示任何示例之前,您先展示您自己的示例代码如何?@JeremyVisser问题现在已用代码更新。
IPv6(dst=...)/IPv6ExtHdrHopByHop()
or
IPv6(dst=...)/IPv6ExtHdrHopByHop()/IPv6ExtHdrFragment()
destination=getIPv6Addr(site[:-1])
ip.dst=destination
syn = IPv6(dst=getIPv6Addr(site[:-1]))/TCP(sport=12345,dport=80, flags='S', seq=1000)#flag S is syn packet
syn_ack_rcv = sr1(syn,timeout=1)
my_ack = syn_ack_rcv.seq + 1
ack=IPv6(dst=getIPv6Addr(site[:-1]))/TCP(sport=12345,dport=80, flags='A', seq=1001, ack=my_ack)#flag S is syn packet
send(ack)
httpRequest = 'GET / HTTP/1.1\r\nHost:' +site[:-1] +"\r\n\r\n"
http=ip/TCP(sport=11235,dport=80,seq=1002, ack=my_ack)/httpRequest
answers = sr1(http,timeout=1)