Проблема в прослушивании многоадресной рассылки на многосетевом сервере Linux

1727
Lior

Я пытаюсь написать многоадресный клиент на компьютере с двумя сетевыми картами, и я не могу заставить его работать. С помощью сниффера я вижу, что после запуска программы NIC (eth4) начинает получать дейтаграммы многоадресной передачи: yyyy (некоторые ip) -> zzzz (многоадресный ip, а не мой eth4 NIC IP) Исходный порт UDP: kkk (другой порт) ) Порт назначения: xxx (многоадресный порт)

Однако я не могу получить эти пакеты, используя мою программу (прослушивание порта xxx на eth4).

Я также добавил: route add 224.0.0.0 маска сети 240.0.0.0 dev eth4

Искал в Интернете некоторые примеры / объяснения, но, похоже, я делаю то, что делают все остальные. Любая помощь будет оценена. есть ли что-то еще с маршрутом / iptables?

0
Вопрос, связанный с этим, уже перенесен в переполнение стека, http://stackoverflow.com/questions/5132654/problem-in-listening-to-multicast-in-c-with-multiple-nics Olli 13 лет назад 0
да, я хочу убедиться, что моя конфигурация Linux в порядке. Спасибо. Lior 13 лет назад 0

1 ответ на вопрос

0
Olli

Самый простой способ отладки - запустить tcpdumpна правильном интерфейсе. Если вы можете получать пакеты с помощью tcpdump, значит, ваша установка работает нормально, и проблема в вашем коде.

Вопросы, связанные с программированием, следует перейти в Stack Overflow (также дождитесь ответов на свой предыдущий вопрос ).

Как я уже сказал, tcpdump показывает пакеты, полученные многоадресным IP, а не мой статический IP-адрес eth4 NIC. это то, как я должен это видеть? не должен ли tcpdump показывать пакеты, поступающие на мой статический ip NIC? Lior 13 лет назад 0
Извините, я пропустил это из вашего вопроса. Да, так оно и должно работать. Вы получаете многоадресные пакеты на многоадресный IP, а не на свой собственный IP-адрес. Olli 13 лет назад 0

Похожие вопросы