无法在Windows Server 2008上接收多播

时间:2010-02-16 17:15:58

标签: .net-3.5 networking multicast

我有以下代码可以在我的Windows 2003服务器上正常运行:

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)

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

我已经开始工作,虽然我不确定问题是什么。它可能是机器上不正确的防火墙配置(我试图让这个应用程序对防火墙友好)但这超出了这个线程的范围。