0

Windows2003サーバーで正常に動作する次のコードがあります。

static void Main(string[] args)
        {

            UdpClient sock = new UdpClient(5353);

            IPAddress multicastIP = IPAddress.Parse("224.0.0.251");
            IPEndPoint multicastEndpoint = new IPEndPoint(multicastIP, 5353);
            sock.JoinMulticastGroup(multicastIP);

            IPEndPoint iep = new IPEndPoint(IPAddress.Any, 0);

            Console.WriteLine("Ready...");
            byte[] data = sock.Receive(ref iep);
            ...
            sock.Close();
        }

しかし、私のWindows 2008 R2サーバー(NATとして構成された単一のネットワークアダプターを使用してVMWare Workstation内で実行されている)では、アプリケーションはパケットを受信しません。

Wiresharkを実行すると、パケットがマシンに配信されていることを示しています(正しく見え、正しいマルチキャストIPとポートを持っています)が、アプリケーション層は何も受信しません(.Receiveで永久にブロックされます)

私は何かが足りないのですか?

4

1 に答える 1

0

問題が何であったかはわかりませんが、動作するようになりました。マシンのファイアウォール構成が正しくない可能性があります(このアプリケーションをファイアウォールに対応させようとしています)が、これはこのスレッドの範囲を超えています。

于 2010-02-17T00:23:14.430 に答える