Server 如何打开可公开访问的端口?

Server 如何打开可公开访问的端口?,server,port,hosting,firewall,windows-firewall,Server,Port,Hosting,Firewall,Windows Firewall,我在我的电脑上运行一个服务器(光子),它使用端口9090 我可以使用本地IP地址访问它,使用内部路由器网络的IP地址,但不能使用公共网络。即使通过这个公共IP地址,ping也能完美地实现 要公开运行服务器,我不使用路由器,而是直接连接。所有可能的防火墙都已禁用,没有防病毒,入站规则中的所有端口都已打开(以防万一)。但是仍然telnet xxx.xxx.xxx.xx 9090给了我无法在端口9090上打开到主机的连接:连接失败 如果我在cmd中输入netstat-aonb,我会看到 TCP 0.0

我在我的电脑上运行一个服务器(光子),它使用端口9090

我可以使用本地IP地址访问它,使用内部路由器网络的IP地址,但不能使用公共网络。即使通过这个公共IP地址,ping也能完美地实现

要公开运行服务器,我不使用路由器,而是直接连接。所有可能的防火墙都已禁用,没有防病毒,入站规则中的所有端口都已打开(以防万一)。但是仍然
telnet xxx.xxx.xxx.xx 9090
给了我
无法在端口9090上打开到主机的连接:连接失败

如果我在cmd中输入
netstat-aonb
,我会看到

TCP 0.0.0.0:9090侦听

据我所知,什么意思是必须监听端口9090上的任何IP地址(0.0.0.0)

但正如在线服务所说,9090港口仍然关闭。如果我尝试从客户机连接到服务器(因为它适用于内部网络),我会得到
错误:1004主对等错误超时

我还可以做些什么来打开这个端口并最终通过公共网络访问它


我使用Windows。

对问题的描述似乎不一致。最有可能的是,“所有可能的防火墙都被禁用[…并且]入站规则中的所有端口都被打开”的说法是一个或两个不正确或误导

如果

  • 测试客户端可以成功ping目标计算机,并且
  • netstat
    显示客户端正在目标计算机上侦听0.0.0.0:9090/TCP,但
  • 测试客户端无法在同一地址连接到端口9090,并且
  • 测试客户端可以通过其其他地址成功连接到目标计算机上的端口9090,包括之前和之后
到目前为止,最有可能的情况是失败的连接尝试被防火墙阻止。即使服务器上根本没有运行防火墙,也可能有一个防火墙在客户端和服务器之间的网络路径上的路由器上运行。请注意,路由器防火墙通常区分内部流量和外部流量,对后者实施更严格的控制。有些人对这两个问题有完全不同的规则集。

请阅读-总结是,这不是一种理想的解决志愿者问题的方法,可能会对获得答案产生反作用。请不要将此添加到您的问题中。