私は 3 種類のネットワーク カードを持っており、それぞれに責任があります。カードのうちの 2 つは、同じポートでデータを送信する同様のデバイス (個々のネットワーク カードに直接接続) からパケットを受信しています。どのデバイスから来たのかを知って、パケットを保存する必要があります。
パケットを送信するデバイスの IP アドレスを指定しないように要求されている場合、特定のネットワーク カードでリッスンするにはどうすればよいですか? 必要に応じて、3 つの NIC すべてに静的 IP アドレスを指定できます。
例: nic1 = 169.254.0.27、nic2 = 169.254.0.28、nic3 = 169.254.0.29
現在、どのデバイスから来たのかを知らずに、nic1 と nic2 からデータを受信しています。
var myClient = new UdpClient(2000) //Port is random example
var endPoint = new IPEndPoint(IPAddress.Any, 0):
while (!finished)
{
byte[] receivedBytes = myClient.Receive(ref endPoint);
doStuff(receivedBytes);
}
デバイスの 1 つだけからパケットをキャプチャできるように、ネットワーク カードの静的 IP アドレスを指定できないようです。これらのパケットが 2 つの異なるネットワーク カードに入っているという知識だけで、これらのパケットを分離するにはどうすればよいでしょうか?
ありがとうございました。