ほとんどのPythonスニッフィングモジュール(pcapy、winpcapy、pypcap、scapy、socket)を試しました。Pythonのスニッフィングモジュールを使用してパケットを失った
私は常にパケットの一部を失ったのと同じ問題を抱えています(約1%〜10%)。
しかしWiresharkと同時に、tcpdumpパケットは失われません。多分パフォーマンスですか?または、マルチプロセスで何かをしようとしますか?このコードから
ほとんどのPythonスニッフィングモジュール(pcapy、winpcapy、pypcap、scapy、socket)を試しました。Pythonのスニッフィングモジュールを使用してパケットを失った
私は常にパケットの一部を失ったのと同じ問題を抱えています(約1%〜10%)。
しかしWiresharkと同時に、tcpdumpパケットは失われません。多分パフォーマンスですか?または、マルチプロセスで何かをしようとしますか?このコードから
from scapy.all import *
from scapy.layers import http
def http_header():
do something
packet=sniff(prn=http_header,store=0)
store 0
は問題です。それは基本的に処理するパケットはできるだけ早く、バッファリングしないでください。 sniff(prn=http_header)
と同じコードを実行してもパケットを破棄しません。
あなたの答えをありがとう、私は(prn = http_header)鼻でそれを試してみるが、それはまだ失われ、私はPythonのプロセスメモリリークを発見した、実際には、私は長い時間プログラムを実行します。だから私はそれが必要です。 – Poisonx
収集するコードを入力してください。パケット損失は、scapyがどのように設定されているかによって異なります。 – StephenG
ok.i www.secdev.org/projects/scapy/のサンプルコードを使用しています。 from scapy.all import * from scapy.layers import http def http_header ): 何かをする; パケット= sniff(prn = http_header、store = 0) と、どのように設定されたscapyを確認できますか? thx! – Poisonx