Linuxで実行されているいくつかのアプリケーションをテストするには、Linuxの着信パケットとして特定のインターフェイスにいくつかのL2パケット(カスタマイズ)を挿入する必要があります。
役立つライブラリ(Python推奨)/例はありますか?Scrapyライブラリをざっと見ていたのですが、パケットを送信パケットとしてのみネットワークに挿入できるように見えますか?
Linuxで実行されているいくつかのアプリケーションをテストするには、Linuxの着信パケットとして特定のインターフェイスにいくつかのL2パケット(カスタマイズ)を挿入する必要があります。
役立つライブラリ(Python推奨)/例はありますか?Scrapyライブラリをざっと見ていたのですが、パケットを送信パケットとしてのみネットワークに挿入できるように見えますか?
ネイティブLinuxbridgeモジュールを利用できる場合は、この方法で使用できます。橋を作る
brctl addbr <brname>
次に、仮想ethペアを作成します(デフォルト名veth0は、veth1)。vethsは接続されたL2デバイスです
ip link add type veth
ifconfig veth0 up
ifconfig veth1 <some_ip> up
次に、特定のインターフェイスを追加します。たとえばeth0、ペアの片側vethをこのブリッジに追加します。
brctl addif <brname> eth0
brctl addif <brname> veth0
これにより、これら両方のインターフェイスがブリッジに追加されます。これで、トラフィックを送信すると、 (通常のL2スイッチ機能に基づいて)トラフィックを送信veth0できるようになります。eth0トラフィックを送信するには、両方が内部で接続されているため、トラフィックを送り込むveth0必要があります。veth1だから、あなたが使いたいとしましょうtcpreplay、ただやってください
tcpreply -i veth1 yourpcap.pcap
どうなるか教えてください