无法在家庭路由器上为ubuntu virtualbox guest虚拟机目标设置端口转发

时间:2017-11-16 01:27:23

标签: ubuntu virtualbox router portforwarding

我的Windows 10主机运行VirtualBox,Ubuntu guest虚拟机有一个桥接适配器@ 192.168.1.5。另外,我在Ubuntu中运行一个docker容器,端口绑定到端口8080.我可以从我的网络中(例如从我的移动和桌面主机)点击192.168.1.5:8080。

但是,我无法在mi424wr路由器上进行端口转发,转发到ubuntu guest @ 192.168.1.5。我可以使用端口转发功能来对抗我的Windows 10计算机。

我的路由器有没有关于ubuntu guest虚拟机的内容?

编辑: 当我从外部IP地址尝试时,以下是路由器安全日志中的条目:

港口前进规则:56123 - > 192.168.1.5:8080

  1. 已打开连接:TCP 192.168.1.5:8080< - > myIp:56123 [74.96.218.140:1024]已关闭/已关闭local_dev NAPT即将进入的静态未决单元
  2. 已打开连接:TCP 192.168.1.5:8080< - > myIp:56123 [myIp:1025]已关闭/已关闭local_dev NAPT即将进入的静态未安装
  3. 挂钩的通配符连接:TCP 192.168.1.5:8080< - > myIp:56123 [myIp:1024] CLOSED / SYN_SENT local_dev NAPT传入的静态BNAPT未确定
  4. 挂钩的通配符连接:TCP 192.168.1.5:8080< - > myIp:56123 [myIp:1025] CLOSED / SYN_SENT local_dev NAPT传入的STATIC BNAPT未经确认
  5. 已打开连接:TCP 192.168.1.5:8080< - > myIp:56123 [74.96.218.140:1026]已关闭/已关闭local_dev NAPT未使用的静态未安装
  6. 已打开连接:TCP 192.168.1.5:8080< - > myIp:56123 [myIp:1026]已关闭/已关闭local_dev NAPT未使用的静态未使用
  7. 挂钩的通配符连接:TCP 192.168.1.5:8080< - > myIp:56123 [myIp:1026]已关闭/ SYN_SENT local_dev NAPT传入的静态BNAPT未确定
  8. 我的实际IP地址已替换为" myIp"

    另外,我已经测试了一个托管静态文件的http-server npm包。它在我的局域网内工作,但端口转发失败也应该否定Docker作为罪魁祸首。

1 个答案:

答案 0 :(得分:2)

也许这可能是因为Ubuntu VM,Docker容器或Windows防火墙上的防火墙设置。也许它们被设置为允许192.168。*。*私有地址但不允许公共IP地址? 见:UFW,  iptablesDocker and iptablesWindows Firewall

我将逐个浏览每个防火墙配置,并测试您是否可以在每次更改后完成。请注意,UFW只是iptables的前端,可能启用也可能不启用。

如果这些似乎都没有帮助,也许你会在NAT模式下运行Ubuntu VM获得更多成功,除了在你的路由器上通过Virtual Box设置端口转发。
见:Virtual Box Networking(特别是6.3.1)。