[Gelöst] Remote IP bei UDP Verbindung auslesen
-
Hallo zusammen,
ich habe einn kleinen Syslog-Server geschrieben um Messages übers lokale Netz zu empfangen.
Folgenden code benutze ich um die Messages zu auszuwerten:... array<unsigned char,1>^ bytes = gcnew array<unsigned char>(2048); if( !MyRxSocket ) return -1; System::Text::ASCIIEncoding ^encoding = gcnew System::Text::ASCIIEncoding(); if (MyRxSocket->Available) { rc = MyRxSocket->Receive(bytes, 0, MyRxSocket->Available, net::Sockets::SocketFlags::None); //pEndPoint = MyRxSocket->RemoteEndPoint; //message = pEndPoint->ToString(); message = encoding->GetString(bytes); ...
Es ist leider so, das (laut MSDN) man die remote ip Adresse nicht über die RemoteEndPoint methode herausbekommt.
Wie bekomme ich die Absender-IP-Adresse der grade empfangenen Message?
Weiss das jemand?
Gruss,
Nils
-
Hallo,
Falls (und das nehme ich an) MyRxSocket vom Typ System.Net.Sockets.Socket ist dann kannst Du anstelle der Receive die ReceiveFrom Methode benützen.Alternativ könntest Du auch die Klasse UdpClient benützen.
Simon
-
Ah danke,
Hab die UdpClient benutzt. Klappt wunderbar:)