如何获取使用Scapy收到的最后一个数据包的信息

时间:2016-03-12 11:42:26

标签: python packet scapy packets

我正在使用Scapy的srp1()将pcap文件重播到设备,如下所示:

for p in rdpcap(pcapfile):
    ...
    rcv = srp1(p, 'eth0')
    print rcv[IP].len
    print rcv[TCP].seq
    ...

当设备发送1个数据包时,我可以得到IP.lenTCP.seq,但是当它发送2个数据包时,我只能得到第一个数据包的信息,而我需要第二个数据包的信息之一。

我哪里出错了?

1 个答案:

答案 0 :(得分:2)

Scapy's user manualScapy's API documentation都声明valgrindsrp1()的变体,它只返回构成已发送数据包答案的第一个数据包。

因此,请尝试使用srp()代替srp(),如下所示:

srp1()