嗨,我正在 eclipse 中开发一个 Web 应用程序,并使用与 IDE 集成的 tomcat 服务器 (6.0)。我完全能够从本地主机或 LAN 中的另一台计算机访问该 Web 应用程序 (http://192.168.0.2:8080/工作正常)并使用https://www.grc.com/x/portprobe=8080我可以看到路由器和防火墙工作正常,端口也打开了。但我仍然无法从我用 dyndns 创建的 URL 访问。它只是超时了。直接使用我的 whatsmyip IP 不起作用,所以不是 dyndns 的问题
谁能帮助我从外部 LAN 访问 tomcat?
谢谢
答案1
您是否尝试从 LAN 上的计算机测试对“dyndns”URL 的访问?该 URL 中的主机名将解析为您的公共 IP 地址,并且您的防火墙/路由器可能不支持“发夹式 NAT”——即,从 LAN 侧接口传入的请求需要路由后退至 LAN 侧接口。
如果您确实尝试从站外访问它并且它不起作用,那么您可能需要检查一些事项:
Tomcat 服务器本身是否能够访问互联网?(即其默认网关是否设置正确)如果不能,则首先纠正该问题。
当您尝试从 Internet 建立与 Tomcat 服务器的连接时,是否看到数据包到达 Tomcat 服务器? (您没有提到您的操作系统,但您应该熟悉操作系统中内置的数据包嗅探工具。我比大多数管理员更早“接触嗅探器”,但我的理念是“如果我有一个工具可以让我看到网络上发生的事情,那么我就会使用它。”)如果 Tomcat 服务器是 Linux 机器,请使用命令行(如“tcpdump port 8080”)启动 tcpdump(假设该机器只有一个接口——您需要指定接口号)并观察来自互联网的 TCP SYN。如果是 Windows 机器,请安装内置网络监视器或 Wireshark 并运行快速嗅探。如果您可以尽早确定防火墙/路由器正在将数据包发送给您,那么您就不会花几个小时才发现端口转发存在问题。