异步套接字

套接字和网络

如何在我自己的网络外访问服务器?这是一个常见的问题,当它被问到主要被标记为主题时。

服务器端

在服务器的网络上,你需要将路由器移植到服务器。

对于运行服务器的示例 PC:

本地 IP = 192.168.1.115

服务器正在侦听端口 1234。

Port 1234 路由器上的传入连接转发到 192.168.1.115

客户端

你唯一需要改变的是 IP。你不希望从运行服务器的网络连接到你的环回地址,而是连接到公共 IP。这个 IP 你可以到这里来

 _connectingSocket.Connect(new IPEndPoint(IPAddress.Parse("10.10.10.10"), 1234));

所以现在你在这个端点上创建一个请求:10.10.10.10:1234 如果你做了属性端口转发你的路由器你的服务器和客户端将连接没有任何问题。

如果你想连接到本地 IP,你不必只是将环回地址更改为 192.168.1.178 或类似的东西。

发送数据:

数据以字节数组发送。你需要将数据打包到字节数组中并在另一侧解压缩。

如果你熟悉套接字,你也可以在发送之前尝试加密字节数组。这样可以防止任何人盗窃你的包裹。