socket编程遇到关于网络访问的问题,请高手指点下
用的udp协议,现在的情况是这样的,服务器挂在外网的adsl宽带电脑上,客户端不管是在内网还是外网,都能访问服务器,上线的时候服务器会收到来自客户端的消息,但是服务器不能...
用的udp协议,现在的情况是这样的,服务器挂在外网的adsl宽带电脑上,客户端不管是在内网还是外网,都能访问服务器,上线的时候服务器会收到来自客户端的消息,但是服务器不能发送消息到客户端(代码里有实现:每一次接受客户端的上线消息就立马把最新的在线用户列表发送给在线的每一个用户),貌似这个问题是不是跟UDP打洞技术有关,我也查过下,说的是内网的客户端给服务器发送过消息,服务器就能给处于内网的客户端发送消息啊,这个问题我真不知道怎么解决了,望各位大侠指点迷津,先谢谢了。。 补充一点,在局域网内就能正常使用,可以肯定问题就是外网无法访问内网。
外网的服务器不能访问运行在内网的客户端,现在的问题主要就是,如何实现客户端发送消息到服务器后,服务器能反过来发送消息到客户端!!另外,我没有使用端口映射,因为我还不会,我的客户端和服务器端都是指定了一个2525端口来通信的。
------------------------------------------------------------------------------
能不能留下个QQ,我加你,你给我详细讲下。。谢谢,问题解决了我追加分 展开
外网的服务器不能访问运行在内网的客户端,现在的问题主要就是,如何实现客户端发送消息到服务器后,服务器能反过来发送消息到客户端!!另外,我没有使用端口映射,因为我还不会,我的客户端和服务器端都是指定了一个2525端口来通信的。
------------------------------------------------------------------------------
能不能留下个QQ,我加你,你给我详细讲下。。谢谢,问题解决了我追加分 展开
1个回答
展开全部
如果说内网可能正常收发,但是到了外网就不行了的话.
我考虑有以下几个原因:
第一,楼主你可能是用的花生壳类似的工具,在路由器上做了映射.那么你考虑端口了没?
第二,你取外网的IP取的到底是哪个?你换种方式看下到底用你得到的IP地址能互访不.
-----------------------------
外网的服务器不能访问运行在内网的客户端.
朋友.假如内网的客户端能给外网的服务器发送数据,而且外网的服务器确实收到了.但是给内网的客户端发送消息,内网的客户端缺收不到,那么只有一个可能.你取到的客户端的IP不对,一个内网对整个外网来说,内网里的所有机器都是相同的IP.你可以试下.
你往那个IP发东西,到底往哪个机器发,内网又怎么可能知道呢.
QQ:99257308
我考虑有以下几个原因:
第一,楼主你可能是用的花生壳类似的工具,在路由器上做了映射.那么你考虑端口了没?
第二,你取外网的IP取的到底是哪个?你换种方式看下到底用你得到的IP地址能互访不.
-----------------------------
外网的服务器不能访问运行在内网的客户端.
朋友.假如内网的客户端能给外网的服务器发送数据,而且外网的服务器确实收到了.但是给内网的客户端发送消息,内网的客户端缺收不到,那么只有一个可能.你取到的客户端的IP不对,一个内网对整个外网来说,内网里的所有机器都是相同的IP.你可以试下.
你往那个IP发东西,到底往哪个机器发,内网又怎么可能知道呢.
QQ:99257308
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询