Я использую Ubuntu 11.10. У меня есть локальное приложение, которое пытается получать многоадресные потоки UDP через туннель OpenVPN. У меня есть сетевое соединение с удаленным хостом, который генерирует данные многоадресной рассылки и может получить доступ к этому хосту должным образом. Кроме того, если я запускаю Wireshark на своем локальном компьютере, он может видеть проходящие UDP-пакеты с назначенными адресами назначения многоадресной рассылки. Однако мое клиентское приложение не указывает, что оно получило какие-либо данные, поэтому я пытаюсь выяснить причину.
Есть ли простой инструмент, который я могу использовать в командной строке, чтобы проверить, что многоадресный трафик передается на уровень пользователя? Мне интересно, есть ли что-то между Wireshark и пользовательским пространством, которое по какой-то причине фильтрует пакеты. Я также пробовал использовать tcpdump
следующим образом:
sudo tcpdump -n -i tap0 -s 1536 udp
Когда я запускаю эту команду, я также вижу, что сообщения летают, показывая получение пакетов, как я и ожидал. Я не слишком знаком с внутренностями tcpdump
, тем не мение; Я не уверен, что оно заглядывает дальше под капот, чем обычное пользовательское приложение. Какие-либо предложения?