Я пытаюсь разработать программное обеспечение, в котором я собираю пакеты из своего сетевого интерфейса, меняя их, и записывая измененные пакеты на мой локальный диск (в выходной файл).Сохранение локально измененного пакета
Вещь, когда я открываю выходной файл, я вижу, что изменения, которые я сделал, не были выполнены. Например, , я захватил 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);
}
Что мне не хватает?
Где и как вы его изменяете? Я не могу себе представить, почему вы думаете, что любой может решить проблему на основе этого фрагмента кода. Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). –
Я изменяю его в строке кода: ((IPPacket) пакет) .src_ip = InetAddress.getByName ("0.0.0.0"); – Mark268
Выводит ли вывод 'println', что вы действительно изменили' src_ip'? Если это так, вам нужно предоставить более подробную информацию о остальной части вашего кода, особенно 'writePacket'. – Lilienthal