Я создал протокол на основе UDP, который использует UdpClient
для отправки и получения сообщений.Некоторые уведомления передаются по сети, а некоторые отправляются напрямую.
var udpClient = new UdpClient(IPAddress.Any, 12345) { EnableBroadcast = true };
var result = await udpClient.ReceiveAsync();
var remoteEndPoint = result.RemoteEndPoint; // IP-address of the sender
var localEndPoint = result.???; // IP-address where it was sent to
UdpReceiveResult
содержит удаленную конечную точку, но я не могу определить, было ли это сообщение отправлено мне через направленныйсообщение или с помощью трансляции.Есть ли способ обнаружить это?Я проверил, используя класс Socket
, но он также не предоставляет эту информацию.