ネットワーク N1 の IP1 のポート 1 から IP2 のポート 2 にストリーミングされた UDP パケット キャプチャがあります。これらのパケットを別のネットワーク N2 の IP3 のポート 3 から IP4 のポート 4 に再生する必要があります。
これを実行するにはどのソフトウェアを使用するか、またこれらのパケットを再生して N2 で再度検出/キャプチャできるようにするにはどうすればよいかを知る必要があります。
これまで、Colasoft Packet Player というプログラムを使用してこれらのパケットを厳密に再生しようとしましたが、あまりうまくいきませんでした。
答え1
tcppreplay の(https://tcpreplay.appneta.com/)を使用すると、おそらく1つのステップで必要な操作を実行できると思われます。tcprelat 編集プログラムですが、個人的にこのソフトウェアを実行したことはありません。
からtcpreplay 編集 概要:
tcpreplay は、長年にわたってかなり進化してきました。1.x の時代は、単にパケットを読み取って、それを回線に送り返すだけでした。2.x では、tcpreplay は大幅に強化され、さまざまな書き換え機能が追加されましたが、複雑さ、パフォーマンス、肥大化が犠牲になりました。現在、3.x では、tcpreplay は、無駄のないパケット送信マシンという原点に戻り、編集機能は tcprewrite と、その 2 つを組み合わせた強力な tcpreplay-edit に移行しました。
tcpreplay-edit には tcpreplay と tcprewrite の両方の機能がすべて含まれているため、tcpreplay-edit の使用方法については、それらの wiki ページを参照してください。
答え2
ビットツイスト(http://bittwist.sourceforge.net) なら、望みどおりのことができるはずです。
Bit-Twist を使用すると、キャプチャしたトラフィックをライブ ネットワーク上に再生成できます。パケットは tcpdump トレース ファイル (.pcap ファイル) から生成されます。Bit-Twist には、トレース ファイルの内容を変更できる包括的なトレース ファイル エディターも付属しています。
ここで最も興味深いのは、「トレース ファイル エディター」の部分です。
2 つのパスで変換する必要があると思います。1 つは IP アドレスを変更するパス、もう 1 つは UDP ポート番号を変更するパスです。どちらの順序でも実行できると思います。
bittwiste -I original.pcap -O changedip.pcap -T ip -s IP1,IP3 -d IP2,IP4
bittwiste -I changedip.pcap -O changedipandport.pcap -T udp -s Port1,Port3 -d Port2,Port4
IPアドレスとポート番号を入力する必要があります。例:
bittwiste -I original.pcap -O changedip.pcap -T ip -s 192.168.0.1,10.10.0.3 -d 192.168.0.2,10.10.0.4
bittwiste -I changedip.pcap -O changedipandport.pcap -T udp -s 12345,24680 -d 80,8080
元のキャプチャファイルに元のマシンのIPとポート番号のみが含まれている場合は、編集コマンドで古いIPとポート番号を指定しないことでこれを簡素化できます。例:
bittwiste -I original.pcap -O changedip.pcap -T ip -s 10.10.0.3 -d 10.10.0.4
bittwiste -I changedip.pcap -O changedipandport.pcap -T udp -s 24680 -d 8080
10.10.0.3:24680 から 10.10.0.4:8080 へのパケットを生成します。
changedipandport.pcap
ネットワークN2のマシンから、次の方法でファイルを再生できるはずです。Colasoft パケット プレーヤー(http://www.colasoft.com/packet_player) またはコマンドラインビットツイストプレーヤー、例
bittwist -i 1 changedipandport.pcap
ここでの「1」はデバイス 1 です。bittwist -d
デバイスを一覧表示するには、を使用します。
BitTwist プレーヤーには、Colasoft Packet Player ではできない、送信パケットの速度を乗数で変更する (例: 元の速度の 5 倍、または元の速度の 0.1 倍) という便利なオプションがあります。
私はこの方法を次のようにテストしましたワイヤーシャーク(http://www.wireshark.org)を使用して、iデバイスのTouchOSCから私のラップトップ(WiFi経由)にポート8000で送信されたOSCデータ(UDPパケット)をキャプチャします。ビットツイスト(エディタ)宛先IPアドレスを有線イーサネットアダプタのアドレスに変更し、UDPポートを8001に変更し、ビットツイスト(プレイヤー)にピュアデータ(http://puredata.info) パッチはポート 8001 でリッスンします。