比较python中的数据包端口号

时间:2017-01-19 05:06:15

标签: python scapy

from scapy.all import *
def print_summary(pkt):
     for i in pkt:
          sport=[pkt[TCP].sport]
          if (sport[i]!=sport[i+1]):
             packet=sport
             print packet    

sniff(offline="/root/ip2.pcap",prn = print_summary)     

1 个答案:

答案 0 :(得分:0)

您可以使用rdpcap读取.pcap文件,创建列表,并在检查端口号是否已存在后将其附加到列表中。

from scapy.all import *

pcap = rdpcap('test_pcap.pcap')
ports = []

for pkt in pcap:
    if pkt.haslayer(TCP):
        if pkt.sport in ports:
            pass
        else:
            ports.append(pkt.sport)

print(ports)