Как я могу проверить многоадресную UDP-связь между двумя серверами?

19

У меня есть два сервера в одной подсети. У меня установлено приложение, которое использует многоадресный UDP для распространения событий между двумя серверами и их синхронизации.

Похоже, этого не происходит, поэтому я хочу убедиться, что многоадресные UDP-сообщения проходят через мой первый шаг.

Серверы работают под управлением Windows 2008 R2.

Как я могу проверить многоадресную UDP-связь между двумя серверами?

Грег Б
источник

Ответы:

9

iperf - отличный инструмент, но его установка может занять много времени; Большинство репозиториев не имеют этого пакета. В зависимости от вашего дистрибутива, netcat доступен практически в каждом репозитории

Вы также можете использовать netcat:

Сервер: nc -lu -p PortNr

Клиент: nc -vzu ServerIP PortNr

Patel95
источник
+1 Ах! Потрясающие! Я попробую это!
вьетнам
4
Это не будет работать для UDP Multicatst. Я попробовал это с адресом MC как 224.4.4.4, и ничего не происходит. Также strace on it не показывает никаких операций ADD_MEMBERSHIP. Многоадресная передача также отсутствует в человеке. Я предлагаю sockperf - см. Ниже.
Авнер
1
пример с сокатом:socat UDP4-RECVFROM:9875,ip-add-membership=225.2.215.254:0.0.0.0,fork - |hexdump
Франсуа
Я не думаю, что это правильно. Как бы я установить группу?
AndreKR
4

Я очень рекомендую sockperf

Это отличный инструмент для проверки производительности как по TCP, так и по UDP, включая UDP Multicast.

Пример многоадресного UDP-потока:

  • на сервере: sockperf server -i 224.4.4.4 -p 1234
  • на клиенте: sockperf ping-pong -i 224.4.4.4 -p 1234
Авнер
источник
2

Вы можете использовать SimpleMulticastAnalyzer - это простое многоадресное приложение .net, которое я написал.

Наслаждаться.

Эран Бецалель
источник
0

Вы можете просто использовать утилиту multiNC, которая позволяет обрабатывать несколько соединений на одном порту, github-репозиторий

krypt0n
источник
2
Здравствуйте и добро пожаловать в ServerFault. Вы должны указать в своем ответе, что вы написали этот инструмент; в противном случае он может быть помечен как спам.
Даниэль Гриском,