マルチキャストグループに送信されたパケットを受信しているC#クライアントで、このパケットをマルチキャストグループに送信した送信元のIPアドレスを取得するにはどうすればよいですか?
バイトデータは正常に到着するため、コードは機能しますが、送信元IPアドレスを見つける必要があります。
Byte[] data = client.Receive(ref localEp);
完全なコードスニペットは次のようになります
UdpClient client = new UdpClient();
client.ExclusiveAddressUse = false;
IPEndPoint localEp = new IPEndPoint(IPAddress.Any, 4446);
client.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
client.ExclusiveAddressUse = false;
client.Client.Bind(localEp);
IPAddress multicastaddress = IPAddress.Parse("230.0.0.1");
client.JoinMulticastGroup(multicastaddress);
Console.WriteLine("Listening this will never quit so you will need to ctrl-c it");
while (true)
{
Byte[] data = client.Receive(ref localEp);
string strData = Encoding.ASCII.GetString(data);
Console.WriteLine(strData);
}
}