我遇到从外部源连接的套接字问题Socket c#通过互联网聊天?
请参阅下面我的构造函数。
//使用UDP套接字
clientSocket = new Socket(AddressFamily.InterNetwork,
SocketType.Dgram, ProtocolType.Udp);
EndPoint ourEP = new IPEndPoint(IPAddress.Any, 1450);
//Listen asynchronously on port 1450 for coming messages (Invite, Bye, etc).
clientSocket.Bind(ourEP);
//Receive data from any IP.
EndPoint remoteEP = (EndPoint)(new IPEndPoint(IPAddress.Any, 0));
byteData = new byte[1024];
//Receive data asynchornously.
clientSocket.BeginReceiveFrom(byteData,
0, byteData.Length,
SocketFlags.None,
ref remoteEP,
new AsyncCallback(OnReceive),
null);
这是连接按钮功能:
private void btnCall_Click(object sender, EventArgs e)
{
//Get the IP we want to connect.
otherPartyIP = new IPEndPoint(IPAddress.Parse(txtCallToIP.Text), 1450);
otherPartyEP = (EndPoint)otherPartyIP;
}
我让聊天应用点对点通过互联网。我打开了端口1450防火墙并添加了端口,但它没有连接。请你帮忙吗?
你需要让你的问题更清晰。你有没有收到任何错误信息?或者它只是无法连接?它曾经工作过吗? –
是的。它在本地机器上运行正常。但通过互联网运行它不连接 –
你是否证实至少ping可以在这些IP之间工作? –