at_takuya.sasaki
2015年4月1日 13時56分
以前、tcpdumpでArmadillo-840が受信したパケットをキャプチャする方法をご紹介しました。
Armadillo-840でtcpdumpを使う
このキャプチャしたデータを再送するためのツールに、tcpreplayというものがあります。
今回、こちらを使って見ましたので、ご紹介します。
1. ATDE5を起動する
パケットを再送信するのは、ATDE5からにしますので、ATDE5を用意します。
以下を参照してください。
http://manual.atmark-techno.com/armadillo-810/armadillo-810_product_manual_ja-1.4.0/ch04.html#sct.before-work.setup-atde5
2. libpcap-devのインストール
以下のコマンドで libpcal-devパッケージをインストールします。
atmark@atde5:~$ sudo apt-get install libpcap-dev
3. tcpreplayのインストール
以下のコマンドで tcpreplayパッケージをインストールします。
atmark@atde5:~$ sudo apt-get install tcpreplay
4. 再送する
キャプチャしたパケットを再送するだけでしたら、以下のコマンドで可能です。
atmark@atde5:~$ sudo tcpreplay -i eth0 dump.cap
tcpreplayの詳細は、以下が詳しいようです。
http://tcpreplay.jp/
5. キャプチャファイルのMACアドレスを書き換える
送信先がキャプチャしたArmadilloと同一であればよいのですが、異なるArmadilloの場合に、送信先のMACアドレスを書き換えたい
ことがあるかもしれません。
その場合、tcprewriteというコマンドが使えます。以下は送信先のMACアドレスを変更して、dump_mac.capというファイルに保存しています
atmark@atde5:~$ tcprewrite --enet-dmac=xx:xx:xx:xx:xx:xx --infile=dump.cap --outfile=dump_mac.cap
以上