Сохранение захваченного пакета в формате TCPDump (Java)
Я хочу сохранить захваченный пакет в формате TCPDump. Я использую Java с библиотекой JPCap. Однако я не могу использовать функцию JpcapWriter.writePacket(), она выдает ошибку JVM. Это код, который вызывает ошибку JVM: captor=JpcapCaptor.openDevice(interfaceList[interfaceNumber], 65535, true, 20); captor.setFilter("ip and tcp",true);
JpcapWriter writer=JpcapWriter.openDumpFile(captor,"pass.txt");
for(int i=0;i<10;i++){
//capture a single packet
Packet packet=captor.getPacket();
//save it into the opened file
writer.writePacket(packet);
}
writer.close();
Есть ли другой способ сохранить его в файл в формате TCP?
1 ответ
Можете ли вы объяснить, как вы вызываете метод для написания пакета. Обычный способ записи пакетов -
JpcapCaptor captor=JpcapCaptor.openDevice(device[index], 65535, false, 20);
JpcapWriter writer=JpcapWriter.openDumpFile(captor,"filename");
for(int i=0;i<10;i++){
Packet packet=captor.getPacket();
writer.writePacket(packet);
}
writer.close();
Это сохраняет пакеты формата TCPDump.