Pythonでpcapファイルを解析しようとしています。私の目標は、TCP または UDP ファイルのタイプと、それらの開始/終了時刻を引き出すことができるようにすることです。特定のパッケージで使用すると役立つ可能性のあるアドバイスや、それらのドキュメント、またはそれを書く際の一般的なアドバイスはありますか?
質問する
116127 次
2 に答える
20
私はpython-dpktを使用します。ここにドキュメントがあります。
申し訳ありませんが、これが私が知っているすべての方法です。
#!/usr/local/bin/python2.7
import dpkt
counter=0
ipcounter=0
tcpcounter=0
udpcounter=0
filename='sampledata.pcap'
for ts, pkt in dpkt.pcap.Reader(open(filename,'r')):
counter+=1
eth=dpkt.ethernet.Ethernet(pkt)
if eth.type!=dpkt.ethernet.ETH_TYPE_IP:
continue
ip=eth.data
ipcounter+=1
if ip.p==dpkt.ip.IP_PROTO_TCP:
tcpcounter+=1
if ip.p==dpkt.ip.IP_PROTO_UDP:
udpcounter+=1
print "Total number of packets in the pcap file: ", counter
print "Total number of ip packets: ", ipcounter
print "Total number of tcp packets: ", tcpcounter
print "Total number of udp packets: ", udpcounter
アップデート:
于 2013-08-15T17:01:40.397 に答える
10
scapyから始めたいと思うかもしれません。
于 2013-08-15T16:50:56.757 に答える