基于Socket的通信,如何实现广域网的通信?
2个回答
展开全部
对于 TCP 来说局域网和广域网不是一样嘛。
只要给个 IP 地址就行了。至于如何连接到那机器,那是路由器管理与配置的问题,跟我们编程没什么关系。
比如你家和公司各有一个路由器,各有一台电脑在对应的路由器后面连接着,那你需要在两台路由器上各创建一个 NAT,比如:
家->公司:VNC,公司->家:3389远程桌面,那你在公司的路由器上创建一个 NAT 把 5900 端口转发到公司PC:5900 端口,这样家里就能访问公司PC的 VNC 服务器了,对应地在家的路由器创建 NAT 把 3389 端口转发到家PC:3389 端口上,那从公司就可以直接访问家PC的远程桌面了。
这一切都是网络管理路由器的配置工作,跟编程没有关系。
只要给个 IP 地址就行了。至于如何连接到那机器,那是路由器管理与配置的问题,跟我们编程没什么关系。
比如你家和公司各有一个路由器,各有一台电脑在对应的路由器后面连接着,那你需要在两台路由器上各创建一个 NAT,比如:
家->公司:VNC,公司->家:3389远程桌面,那你在公司的路由器上创建一个 NAT 把 5900 端口转发到公司PC:5900 端口,这样家里就能访问公司PC的 VNC 服务器了,对应地在家的路由器创建 NAT 把 3389 端口转发到家PC:3389 端口上,那从公司就可以直接访问家PC的远程桌面了。
这一切都是网络管理路由器的配置工作,跟编程没有关系。
更多追问追答
追问
客户端的路由需要配置,意味着安装需要派遣专业人员。
可是QQ和网游是怎么做到,安装就能使用的呢?
追答
像网游只需要服务器端配置就行了,因此只有客户端连接服务器,没有服务器连接到客户端。QQ一般的聊天也是这样的,另外当 QQ 发现两个在同个局域网的人想传送文件,它会告诉彼此对方的局域网 IP 然后叫他们俩直接在局域网传送文件。而在公网上传送就不能这样,只能中传一下,就是让俩人都连接到服务器然后服务器把两个客户端串接起来。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询