场景:
客户端Client通过内网的路由器上网,内网IP(192.168.0.38),服务器端在外网,有一个独立IP。
问题:
客户端无法接收到服务器端返回的数据。
描述:
发送数据时创建一个socket,接收数据又另外创建一个socket。此时客户端正常发送数据到服务器端,服务器端能正常接收数据,但是服务器端根据接收到的包得到的IP和端口发送数据给客户端时,客户端无法收到数据,这是因为客户端通过路由器上网的原因。
解决:
如果接收数据前,先创建socket来发送数据,接收数据也通过这个socket,那么就能成功收发数据。