我需要通过互联网访问我的开发服务器中的页面。由于我的 ISP 为我提供了一个动态 IP,因此我设置了以下 POC 场景:
- 我正在使用 NO-IP 将 url 转换为实际 IP。
- 我在 8055 端口设置了一个 SERVA64 便携式服务器,上面有一个简单的 html 示例页面。
- 我在 21 端口设置了一个 FileZilla 服务器。
- 我关闭防火墙,以尽量减少访问问题。
- 我将路由器(DLINK DI-524)配置为将 8055 端口转发到我的开发服务器。
由于我还不能上传图片,你可以在我的 Stack Overflow 问题中看到这个问题:https://stackoverflow.com/questions/9915133/strange-portforward-behavior
一切就绪后,我尝试使用以下 URL 访问测试页面:当我使用 3G 调制解调器(红色路径)时,我可以访问该页面,但当我使用 LAN(蓝色路径)时,我只能使用内部 IP/名称访问该页面。有趣的是:当我访问 FileZilla 服务时,我可以双向连接!
补充:我运行 SmartSniff 来捕获 UDP/TCP 流量,在两个请求中,行为完全相同:有一个 UDP 调用来解析 DNS(google 8.8.8.8),还有一个 TCP 调用到我服务器的公共 IP。对 Filezilla 服务器的调用运行正常,对 Serva64 Web 服务器的调用无法到达示例页面。
答案1
您的路由器不支持发夹路由。这对于消费级网络设备来说是正常的。遗憾的是,你对此无能为力。