Hallo, ich habe den Ethernetadapter von WIZnet WIZ110SR. Hierfür wollte ich in meinem selbst geschriebenen Programm eine Scanfunktion einbauen, die alle Adapter in einem bestimmten Subnetz findet. Diese Funktion wird auch von der mitgelieferten Konfigurationssoftware genutzt. Man sendet dazu ein "FIND" an einen Broadcastadresse auf Port 1460. Die Module antworten dann mit "IMIN" gefolgt von den Konfigurationsdaten auf Port 5001. Das Problem ist nun, dass ich mit recvfrom() (WinSock2) keine Antwort bekomme. Ich habe vorher bind() ANY_ADDR und Port 5001 gemacht. Um etwas herumzuprobieren, habe ich mir das Programm UDP Test Tool installiert. Hier kann man auf der linken Fensterseite eine UDP Nachricht schicken. Auf der rechten Seite auf einen Port binden, und man bekommt dort die Antwort angezeigt. Das funktioniert soweit. Das seltsame ist nun aber, wenn ich zwei dieser Programme starte, und das eine nur zum senden und das andere zum empfangen nutze, dann bekomme ich keine Antwort mehr. Habe ich hier etwas von UDP falsch verstanden? Muss senden und empfangen über den gleichen Socket laufen? Muss man den Absender Port vielleicht noch auswerten? Ich dachte immer, wenn man auf einen UDP Port bindet, empfängt man dort alle Daten, die im Netz schwirren und die für diesen Port bestimmt sind. Firewall habe ich alle vorsichtshalber deaktiviert. Vielleicht ist noch wichtig, dass das WIZnet Modul die Antwort an 255.255.255.255 sendet. VDumfG, hahgeh
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.