Мне нужно сделать несколько проверочных тестов нового обработчика каналов, который я сделал. У меня есть некоторые данные pcap, которые я собрал из производственной сети, и я хотел бы, чтобы мой обработчик каналов разработки подключился к «воспроизведению» этих данных и сравнил результаты.
Мой pcap:
У меня есть приложение prod, которое подключается к каналу данных, TCP-подключение к внешнему серверу позволяет звонить, предполагая, что это 123.456.789.1:1234. Затем этот внешний сервер отправляет данные в мое приложение, и почти нет связи между клиентом и сервером. Сервер просто отправляет данные клиента, пока клиент не прекратит работу. У меня есть pcap всех пакетов, отправленных на и с порта 1234. Я получил этот pcap, отразив рабочий порт (SPAN) на коммутаторе и подключив tcpdump к интерфейсу, подключенному к зеркальному сетевому порту. Когда я смотрю на PCAP в Wireshark, он содержит все данные, которые я ожидал.
Моя проблема:
Я никоим образом не сетевой инженер, и я не уверен, как я могу использовать этот pcap для тестирования своего приложения. Я хотел бы «воспроизвести» этот поток из pcap и подключиться к нему с моим приложением для разработки, чтобы проверить, что данные обрабатываются так же, как и при подключении prod.
Я хотел бы, чтобы некоторые «воспроизводили» данные, отправленные с 123.456.789.1:12344 на 127.0.0.1:1234, а затем подключились к 127.0.0.1:1234 с помощью моего приложения dev. Я посмотрел на tcpreplay, но из документов, которые я не могу понять, может ли он это сделать, у меня возникает ощущение, что они не обрабатывают данные сеанса tcp, и я мог бы сделать это, если бы это был поток UDP, но tcpreplay может не выступать в качестве внешнего сервера. Я прочитал это неправильно или есть другой инструмент, который позволит мне сделать это?
Спасибо!
Возможно, вы захотите использовать netcat, если вы просто хотите вернуть некоторые данные в ваш инструмент, и вам все равно, что этот инструмент отправляет.
Это можно сделать, извлекая необработанные данные, отправленные вашим инструментом, из файла pcap (этот инструмент может быть полезным), а затем добавив это в netcat.
Других решений пока нет …