Поиск внутри сети / клиент-серверное подключение
Никак не получается подключить клиент к серверу. Пытаюсь отправить Broadcast сообщение, но что-то не так. (Все происходит в Unity)
Клиент
void Start(){
localIp = InitLocalIp();
Socket sock = new Socket(AddressFamily.InterNetwork,
SocketType.Dgram, ProtocolType.Udp);
IPEndPoint iep = new IPEndPoint(IPAddress.Any, 1556);
sock.Bind(iep);
EndPoint ep = (EndPoint)iep;
Debug.Log("Ready to receive...");
byte[] data = new byte[1024];
int recv = sock.ReceiveFrom(data, ref ep);
string stringData = Encoding.ASCII.GetString(data, 0, recv);
Debug.Log($"received: {stringData} from: {ep}");
sock.SendTo(Encoding.ASCII.GetBytes(localIp), ep);
}
static string InitLocalIp()
{
string Host = Dns.GetHostName();
string IP = Dns.GetHostAddresses(Host)[0].ToString();
return IP;
}
Сервер:
UdpClient udp = new UdpClient();
int GroupPort = 1556;
IPEndPoint groupEP = new IPEndPoint(IPAddress.Broadcast, GroupPort); //Parse("255.255.255.255")
string str4 = "Is anyone out there?";
byte[] sendBytes4 = Encoding.ASCII.GetBytes(str4);
udp.Send(sendBytes4, sendBytes4.Length, groupEP);
byte[] receiveBytes = udp.Receive(ref groupEP);
string returnData = Encoding.ASCII.GetString(receiveBytes);
Debug.Log("Response: " + returnData);
Тестирую подключение на двух андроид-устройствах. Заранее спасибо!