ネットワークインターフェイスからパケットをキャプチャし、それらを変更し、変更されたパケットをローカルディスク(出力ファイル)に書き込むソフトウェアを開発しようとしています。
出力ファイルを開くと、行った変更がコミットされていないことがわかります。たとえば、IPパケットをキャプチャし、送信元IPアドレスを0.0.0.0に変更しました。その後、変更したパケットを出力ファイルに保存しました。出力ファイルを開くと、送信元IPアドレスが変更前と同じであることがわかりました。
if (packet instanceof TCPPacket) {
try {
((IPPacket)packet).src_ip = InetAddress.getByName("0.0.0.0");
} catch (UnknownHostException e) {
e.printStackTrace();
}
System.out.println(packet);
outputFile.writePacket(packet);
}
私は何が欠けていますか?