Как воспроизвести сетевой трафик протокола PGM с помощью tcpreplay?

Я хочу многоадресную передачу по сети на определенный IP-адрес назначения многоадресной рассылки. Во входном файле pcap доступны пакеты протокола PGM.

Я выполняю следующие шаги tcpreplay для многоадресной передачи файла pcap по сети.

  1. Перезаписать MAC-адрес назначения и источника в файле pcap

    tcprewrite --enet-dmac= Mac-адрес назначения --enet-smac= Исходный адрес Mac --infile= input.pcap --outfile= output.pcap

  2. Получите файл кэша, который используется при перезаписи IP-адресов.

    tcpprep --auto = bridge --pcap = output.pcap --cachefile= input.cache

  3. Перепишите IP-адреса

    tcprewrite --endpoints= IP-адрес назначения многоадресной рассылки: IP-адрес интерфейса источника --cachefile=input.cache --infile=output.pcap --outfile=newoutput.pcap

  4. Наконец многоадресная рассылка newoutput.pcap.

    sudo tcpreplay --mbps = 2.0 --intf1 = eth0 newoutput.pcap

Но на шаге 1 я сталкиваюсь со следующей ошибкой -

Предупреждение в строке tcprewrite.c:post_args() 225: testsg.pcap был захвачен с использованием моментального снимка 9216 байтов. Это может означать, что вы урезали пакеты.

В другую сторону я пытаюсь захватить, используя следующую команду -

tcpdump -n "IP-адрес получателя многоадресной рассылки хоста dst и номер порта получателя порта dst"

Но даже один пакет не перехватывается на другой стороне.

Ранее я отправлял UDP-протокол захвата файла pcap и в это время я получаю все пакеты правильно.

Теперь я не могу понять, что является проблемой, связанной с пакетами PGM, и почему эти пакеты не перехвачены на другой стороне. Как я могу успешно воспроизвести этот сетевой трафик в сети, используя IP-адрес назначения для многоадресной передачи?

1 ответ

Первая "ошибка" на самом деле является предупреждением. Мы видели много файлов pcap со снимком 9216 с пакетами, которые были усечены. Вы можете загрузить файл в Wireshark и убедиться, что он в порядке.

Вы убедились, что на шаге № 2 режим автоматического моста работает правильно? Используйте tcpprep -S для проверки.

"Другая сторона" подключена напрямую через коммутатор или виртуальную машину?

MAC-адрес сервера на "другой стороне" уже правильный? Если нет, то это, вероятно, проблема.

Другие вопросы по тегам