C# 从主机IP发送一个数据到中介IP,设备获得此数据后又发送一个数据到中介IP,主机如何接收?我的IP是:192.168.1.7
设备IP是:192.168.1.3我的PC机IP是192.168.1.7,发送一个数据到IP为230.0.0.11。(我觉得数据应该是设备获取了),然后设备IP192.168.1.3发送一个数据到230.0.0.11.(就是设备IP发送的这个数据是我需要的,不知道如何获取,用的是UDP发送,求各位帮忙,谢谢了。)C#

解决方案 »

  1.   

    接收端:
                UdpClient client = new UdpClient(1178);
                client.JoinMulticastGroup(IPAddress.Parse("230.0.0.11"), 100);
                IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 0);
                byte[] data_1 = client.Receive(ref ipep);
                int a = ipep.Port;
                client.Close();
                UdpClient client2 = new UdpClient(ipep.Port);
                client2.JoinMulticastGroup(IPAddress.Parse("230.0.0.11"), 100);
                ipep = new IPEndPoint(IPAddress.Any, 0);
                data_1 = client2.Receive(ref ipep);
                //while (data_1[0] == 0x20 && j < 3)
                //{
                //    data_1 = client.Receive(ref ipep);
                //    j++;
                //}
                /stBox1.Items.Add(data_1[0]);
                listBox1.Items.Add(ipep.Port);
                for (int i = 0; i < data_1.Length;i++ )
                    listBox1.Items.Add(data_1[i].ToString("X"));
    发送端:
                server = new UdpClient("230.0.0.11", 1178);    //连接
                //IPEndPoint sender1 = new IPEndPoint(IPAddress.Any, 1177);
                string send1 = "200000000000000000000000c0a80107100000000000000000000000b02f62e1";
                byte[] data_k = new byte[32];
                string_hex(send1, data_k);
                //CalCrc32(data, data[0]);
                server.Send(data_k, data_k.Length);
                server.Close();