[英]Why Enum constructor can't have protected or public access modifier
[英]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.