VirtualBox 网络配置 NAT + Host-Only
为什么要选择这种组合
想要 VirtualBox 虚拟出来的 VM 实例既可以上网,又可以从宿主机上通过 ssh 登录,还可以让不同 VM 实例之间的网络互通,给 VM 实例配置 NAT + Host-Only 双网卡是一种可行的方案。
如果将 VM 实例的网络模式配置成 Bridge,虽然 VM 实例既可以上网,又可以从宿主机上通过 ssh 登录,但如果把宿主机(Mac)从公司搬到家里,网络环境变了,就需要重新配置一遍网络,重启 VM 实例,甚是不便。
实验环境
宿主机:Mac
VirtualBox 版本:VirtualBox-6.1.26-145957-OSX.dmg
VM 实例镜像:ubuntu-20.04.3-live-server-amd64.iso
配置步骤
安装 VM 实例
创建 VM 实例;
启动 VM 实例;
选择镜像,给 VM 实例安装操作系统;
将 VM 实例关机;
配置 NAT 网卡
选择 “网络地址转换(NAT)”,默认就好,无需特别配置;
配置 Host-Only 网卡
“管理” -> “主机网络管理” -> “创建” -> 不要 “启用” DHCP,点击完成会新建一个 “vboxnet0”;
“IPv4 地址” 填这个:192.168.34.1,这是 k8s 推荐的;
VM 实例的网络设置,启用 “网卡 2”,“连接方式” 选 “仅主机(Host-Only)网络”,“界面名称” 选 “vboxnet0”;
启动 VM 实例;
查看 VM 实例网卡信息
在 VM 实例里面执行
ip addr
,其中 enp0s8 是没有 UP 的;
启用 enp0s8 网卡
/etc/netplan/00-installer-config.yaml 原来长这样:
改成这样:
重启生效
再次检查 VM 实例网卡信息
enp0s8 状态已经 UP:
其中 enp0s3 是 NAT 网卡,用于访问网络;
enp0s8 是 Host-Only 网卡,其 IP 192.168.34.2 用于从宿主机 ssh 登录 VM 实例和 VM 实例之间的网络互连;
此后更换网络环境不会出现从宿主机 ssh 不到 VM 实例的情况。
版权声明: 本文为 InfoQ 作者【李鑫磊】的原创文章。
原文链接:【http://xie.infoq.cn/article/e81bfd5c2448dc484bdd5dedf】。文章转载请联系作者。
评论