Problem beim Abhören von Multicast in mehrfach vernetzten Linux-Servern

2141
Lior

Ich versuche, einen Multicast-Client auf einer Maschine mit zwei Netzwerkkarten zu schreiben, und ich kann nicht, dass es funktioniert. Ich kann mit einem Sniffer sehen, dass, sobald ich das Programm starte, die NIC (eth4) die Multicast-Datagramme empfängt: yyyy (einige ip) -> zzzz (Multicast-IP, nicht meine eth4-NIC-IP) UDP-Quellport: kkk (ein anderer Port ) Zielport: xxx (Multicast-Port)

Ich kann diese Pakete jedoch nicht mit meinem Programm abrufen (Port xxx unter eth4).

Ich habe auch hinzugefügt: route add 224.0.0.0 netmask 240.0.0.0 dev eth4

Ich habe im Internet nach Beispielen / Erklärungen gesucht, aber es scheint, als würde ich das tun, was alle anderen machen. Jede Hilfe wird geschätzt. Gibt es noch etwas mit route / iptables?

0
Die diesbezügliche Frage wurde bereits in den Stapelüberlauf verschoben, http://stackoverflow.com/questions/5132654/problem-in-listening-to-multicast-in-c-with-multiple-nics Olli vor 13 Jahren 0
yeh, ich möchte sicherstellen, dass meine Linux-Konfiguration in Ordnung ist. Vielen Dank. Lior vor 13 Jahren 0

1 Antwort auf die Frage

0
Olli

Der einfachste Weg zum Debuggen ist die Ausführung tcpdumpauf der richtigen Schnittstelle. Wenn Sie Pakete mit empfangen können, tcpdumpfunktioniert Ihr Setup einwandfrei und das Problem liegt in Ihrem Code.

Fragen zur Programmierung sollten in den Stapelüberlauf gehen (warten Sie auch auf die Antworten auf Ihre vorherige Frage ).

Wie gesagt, zeigt tcpdump die Pakete, die über Multicast-IP empfangen wurden, nicht meine statische IP-Adresse der eth4-NIC. soll ich das so sehen? sollte tcpdump nicht die Pakete anzeigen, die an meiner statischen NIC-IP ankommen? Lior vor 13 Jahren 0
Entschuldigung, das habe ich bei Ihrer Frage übersehen. Ja, so sollte es funktionieren. Sie erhalten Multicast-Pakete an Multicast-IPs und nicht an Ihre eigene IP-Adresse. Olli vor 13 Jahren 0