Система UDP-вещания не будет общаться на отдельных компьютерах

Я работаю над широковещательным маяком на C #, который должен транслировать информацию о сервере всем прослушивающим устройствам. Отправленная информация будет содержать такую информацию, как URL-адрес службы WCF, пространство имен, список необходимых аргументов и т. Д. У меня сейчас есть отправитель и получатель, которые могут прекрасно общаться, когда они находятся на одном компьютере. Однако, как только я отправляю отправителя на компьютер, отличный от получателя, отправитель отправляет свое сообщение, но мой получатель никогда не получает его. Нет никаких исключений, и брандмауэр отключен на обеих машинах.

http://codeidol.com/csharp/csharp-network/IP-Multicasting/What-Is-Broadcasting/ где я получил свой код

Отправитель:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;

namespace UDPTest
{
    class Program
    {
        static void Main(string[] args)
        {
            Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram,
            ProtocolType.Udp);
            sock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, 1);
            IPEndPoint iep = new IPEndPoint(IPAddress.Broadcast, 9050);
            byte[] data = Encoding.ASCII.GetBytes("This is a test message");
            sock.SendTo(data, iep);
            sock.Close();
        }
    }
}

Приемник:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;

namespace UDPBroadcastReciever
{
    class Program
    {
        static void Main(string[] args)
        {
            Socket sock = new Socket(AddressFamily.InterNetwork,
            SocketType.Dgram, ProtocolType.Udp);
            IPEndPoint iep = new IPEndPoint(IPAddress.Any, 9050);
            sock.Bind(iep);
            EndPoint ep = (EndPoint)iep;
            Console.WriteLine("Ready to recieve");
            byte[] data = new byte[1024];
            int recv = sock.ReceiveFrom(data, ref ep);
            string stringData = Encoding.ASCII.GetString(data, 0, recv);
            Console.WriteLine("Received: {0} from: {1}", stringData, ep.ToString());
            sock.Close();
            Console.ReadLine();
        }
    }
}

Кто-нибудь знает что-нибудь, чего мне не хватает, что позволило бы этим двум общаться на двух разных компьютерах? Они находятся в одной подсети (192.168.1.x)

Спасибо Ник Лонг

Ответы на вопрос(2)

Ваш ответ на вопрос