采用udp协议 ,如何获取发送广播消息方的ip地址

时间:2022-12-15 16:56:39

 public void BroadCast()
        {
            udpclient = new UdpClient();//用本地ip地址和端口号0构造udpclient
            IPEndPoint ipendpoint = new IPEndPoint(IPAddress.Parse("255.255.255.255"),8000);
         
            string str_msg = "user" + StaticShareData.username + ":" + StaticShareData.GetLocalIp().ToString();
            byte[] buffer = Encoding.Unicode.GetBytes(str_msg);//ip地址          
            while (true)
            {
                try
                {
                    udpclient.Send(buffer, buffer.Length, ipendpoint);//向局域网内的电脑发送广播消息
                    Thread.Sleep(
                        1000);
                }
                catch
                {
                    //MessageBox.Show("广播出错","提示");
                }
            }
            
        }

请问高手:采用udp协议 ,如何获取发送广播消息方的ip地址。因为不知道这个方法,所以就开辟一个线程不断发送广播消息。不然的话,只要客户端接收到广播消息,然后提取发送方ip地址,给它发送一个反馈消息就可以了。

3 个解决方案

#1


问题:信都没收到,怎么知道有信来了?

#2


IPEndPoint

#3


我还有一个线程不断接收接收消息的。

#1


问题:信都没收到,怎么知道有信来了?

#2


IPEndPoint

#3


我还有一个线程不断接收接收消息的。