路由端口映射后,socket应该如何建立才能与其他网络用户相互通信
例如PC机A本地地址为192.168.1.109,外网地址为112.xx.xx.xx
那么在路由上将端口4567绑定192.168.1.109,
端口映射之后,其他网络的用户访问112.xx.xx.xx:4567时就能直接访问PC机A,
例如PC机A架设了web服务器,那么其他网络的用户访问112.xx.xx.xx:4567时就能浏览PC机A提供的页面
可是现在的问题是,如果PC机A不是web服务器,而是一个采用socket套接字的CS服务端,那么上面的端口映射就会出现问题,
服务端的CS在建立socket时,应该绑定什么地址,
若是绑定本地地址192.168.1.109,那么会出现,客户端仍然能够访问PC机的CS服务器,但是服务器在使用socket套接字给客户端发送信息时,服务端发送成功,但是客户端并没有接收响应,(环境是服务器,客户端都在同一个路由下,但是网关不同,路由上做了设置,服务器的网关是192.168.1.1,而客户端的网关是192.168.1.2),环境有限,没有做其他的测试...
若是绑定外网地址112.xx.xx.xx,那也说不过去,毕竟这是一个不属于PC机A的地址,尝试绑定后也证实绑定不成功
那我的问题是,使用路由端口映射后,PC机A如何使用socket套接字与任意客户端(通过外网地址链接)相互通信
或者有什么方法能架设使用socket套接字的服务器