我正在寻找两台机器之间的UDP端口网络聊天(使用naudio进行网络聊天演示)。该应用程序使用IPEndPoint。如何更改以下行以使用远程机器的IP地址?
udpSender = new UdpClient();
udpListener = new UdpClient();
IPEndPoint endPoint = new IPEndPoint(IPAddress.Any, int.Parse(textBoxPort.Text));
udpListener.Client.Bind(endPoint);
udpSender.Connect(endPoint);
udpListener绑定到0.0.0.0但udpSender发出错误"请求的地址在其上下文中无效0.0.0.0:7080"
答案 0 :(得分:1)
UdpSender应该连接到特定的IP地址。 0.0.0.0
表示服务器应接受任何本地地址上的连接。
然而,需要在特定的IP上进行连接:
//server. accepts connections
IPEndPoint serverPoint = new IPEndPoint(IPAddress.Any, int.Parse(textBoxPort.Text));
udpListener = new UdpClient();
udpListener.Client.Bind(serverPoint );
//client, need a specific IP. Loopback = 127.0.0.1
IPEndPoint clientPoint = new IPEndPoint(IPAddress.Loopback, int.Parse(textBoxPort.Text));
udpSender = new UdpClient();
udpSender.Connect(clientPoint );