繁体   English   中英

为什么不能通过公网ip访问服务器

[英]Why can't access server via public ip

我正在使用 Java 上的简单客户端 - 服务器应用程序。 我有2台电脑。 第一个(服务器)在 ubuntu 上,第二个是 windows8(客户端)。 两台机器连接到同一个网络,同一个路由器。 当我通过“短” ip 在客户端上创建套接字时 - 像这样

            socket = new Socket(InetAddress.getByName("192.168.1.7"),4444);

它运作良好 - 没有问题。 但是当我尝试这样做时 -

        socket = new Socket(InetAddress.getByName("95.188.199.188"),4444);

它使用公共 ip(据我所知)。 后一个 - 不起作用。 防火墙 - 关闭。 有什么问题?

因为如果您在内部网络中,则无法使用公共 IP。

这通常是由于路由器的默认配置。 路由器不会使用公共 IP 来解析“内部”请求。

不管防火墙如何,互联网总会看到你的路由器,而不是你的本地机器; 您必须配置路由器以将所需端口转发到正确的本地机器。

尝试 0.0.0.0。 它所有可用的接口。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM