Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 连接到运行在连接到专用家庭LAN的计算机上的TCP服务器_Sockets_Networking_Tcp - Fatal编程技术网

Sockets 连接到运行在连接到专用家庭LAN的计算机上的TCP服务器

Sockets 连接到运行在连接到专用家庭LAN的计算机上的TCP服务器,sockets,networking,tcp,Sockets,Networking,Tcp,我喜欢连接到TCP服务器,该服务器运行在连接到家庭网络LAN的机器上。此LAN可以通过以下任一方法连接到internet。 1.通过具有无线或有线WAN连接的路由器 2.通过使用移动宽带连接的路由器,例如接受USB调制解调器连接到internet的路由器 我知道在第一种情况下,我们可以使用端口转发。 在第二种情况下,我认为电信公司使用PPP协议,端口转发不起作用。 此外,即使在第一种情况下,如果ISP不提供静态IP,那么我们需要使用DNS映射服务将固定URL映射到分配的动态IP,并且我们需要配置

我喜欢连接到TCP服务器,该服务器运行在连接到家庭网络LAN的机器上。此LAN可以通过以下任一方法连接到internet。 1.通过具有无线或有线WAN连接的路由器 2.通过使用移动宽带连接的路由器,例如接受USB调制解调器连接到internet的路由器

我知道在第一种情况下,我们可以使用端口转发。 在第二种情况下,我认为电信公司使用PPP协议,端口转发不起作用。 此外,即使在第一种情况下,如果ISP不提供静态IP,那么我们需要使用DNS映射服务将固定URL映射到分配的动态IP,并且我们需要配置路由器,以便在启动时注册动态IP


我的问题是,在这种情况下,还有其他更好的方法吗?我想知道聊天应用程序是如何相互连接的?我希望他们在两台设备之间保持TCP连接,而不使用中央中继服务器

你在谈论什么聊天应用程序?无论如何,即使使用PPP,您也应该在路由器上获得一个公共ip,该路由器通常为您的服务器伪装nat,并且在路由器上您可以进行端口转发,不是这样吗?我尝试了这个,但它不起作用。看起来像是ppp。它的ISP谁获得公共IP转发所有流量到我们的路由器,在不知道的互联网。我的应用程序正在从internet读取家庭网络中的媒体文件。无论您如何连接到ISP。您的internet连接具有ISP分配的IP地址。所有需要到达家庭网络的来自外部世界的流量必须发送到该IP地址,然后由ISP发送到internet调制解调器,然后再发送到连接到调制解调器的任何设备(无论是PC还是路由器),依此类推。如果在网络上运行服务器,路由器需要配置端口转发,外部客户端将连接到ISP分配的IP地址。通过PPP连接到ISP不会改变这一点。