Как отправить перехваченные пакеты в другое место?
У меня есть несколько пакетов данных, захваченных с помощью tcpdump в файле pcap. Теперь я хочу отправить эти пакеты в другое место назначения. как мне этого добиться?
2 ответа
Вам нужно использовать инструмент, способный воспроизводить файлы pcap. Никакой особой хитрости к этому. Примером будет tcpreplay. Простой поиск "replay pcap file" превратит еще больше великолепных инструментов в самую последнюю секунду, когда вы нажмете "ввод" в выбранной вами поисковой системе.
Я хотел перехватить некоторые SNMP-ловушки и оставить их для тестирования моего приложения позже. Поэтому я не хочу генерировать ловушки каждый раз, когда хочу протестировать свое приложение. Я хотел бы опубликовать, как я это сделал. Надеюсь, это может кому-то помочь.
1) Захват одного пакета с целевым хостом 192.168.159.149 и портом 1620 и сохранение его в файл
tcpdump -n -c 1 -s 0 dst host 192.168.159.149 and port 1620 -w snmp.pcap -i eth0
2) Чтение захваченного пакета
tcpdump -r snmp.pcap -X
3) Изменение IP-адреса назначения, MAC-адреса и контрольной суммы
tcprewrite --infile=snmp.pcap --outfile=snmp2.pcap --dstipmap=192.168.159.149:192.168.159.150 --enet-dmac=00:0c:29:d6:0f:61 --fixcsum
4) Воспроизведение
tcpreplay --intf1=eth0 snmp2.pcap