局域网访问VirtualBox虚拟机内的http服务器,解决10.0.2.15无法访问

VirtualBox创建了虚拟机之后,里面启动一个http服务器,默认外部是没法访问的。

在虚拟的Windows 11 里面执行命令 ipconfig 查看到内部的ip是 10.0.2.15 ,

在外部物理机上,10.0.2.15加上端口,无法访问到内部的 http server 服务器。


后来找到办法:

1、在 VirtualBox 首页,选择你要修改的虚拟机,右键--设置

2、网络--网卡1--连接方式--改为:桥接网卡。

3、命令行执行 ipconfig 查看新ip,然后在物理机访问新ip+端口,就能访问到虚拟机内部的http服务器了


以上的教程,解决了外部物理机通过局域网ip 192.168.xx 的方式访问虚拟机内部的http服务器的问题。

以上的方法,我是在没关闭虚拟机的情况下,操作完成直接就可以访问了。如果你遇到不正常的情况,最好把虚拟机关机重启一次吧。

我的场景是 外部的Windows 10,虚拟机是Win 11。


最近在搞 Strapi 自动生成接口的开发(低代码、能掌控源码的开发模式),但是我物理机在有几十个公司项目,不想切换 nodejs 的版本,切换版本的代价是:很多项目的构建会报错,有一些还是关联到 nodejs 和 c++的编译。

但是 VirtualBox 虚拟机是能满足我折腾的要求。

nvm 切换nodejs版本,也不是完美的,因为我本机正在跑着很多工程。

不想搞那种代价太大的操作了,之前试过升级 node,很多久远的老项目,build 构建的报错太多了。

虚拟机能满足我安装 docker、各种数据库、随便切换 nodejs 版本的要求。

有了 VM 虚拟机,探索 Strapi 、pocketBase、supabase (类似 谷歌Firebase、国内 leanclound 、腾讯云开发) 都很方便,希望能探索出一个后端接口快速开发的模式。

接口开发快了,研发速度就快了。