最近想配置一个在虚拟机的Ubuntu环境下交叉编译C语言工程,然后在主机即Windows环境下用MobaXterm连接。然后我发现按照默认的网络配置——网络地址转换(NAT),无法和主机互ping成功(主机命令行模式),花了点时间查找各个经验贴,终于成功配置了一个可以互ping的环境。
以下介绍基于操作顺序来:
一、配置windows网络环境
打开控制面板–网络和Internet–网络和共享中心–(左侧)更改适配器选项,到下图所示界面,可以看到一个正在使用的WLAN,和虚拟机使用的以太网(不同电脑可能命名不同),可以看到此处以太网3的下面标了VirtualBox Host-only Ethernet… 。
点开WLAN的属性,配置“允许其他网络用户……”,设置允许的网络连接为虚拟机使用的以太网3.经过这一操作,以太网3的IP地址已被自动设置为192.168.137.1。
二、配置VirtualBox
首先配置VirtualBox的工具–属性–仅主机(Host-Only)网络,手动配置网卡为192.168.137.1,与以太网3的IPv4地址一致。
再配置安装的虚拟机的网络,网卡名称与以太网3的网卡名称一致。
进入ubuntu后,
sudo vim /etc/netplan/01-network-manager-all.yaml
按下图所示配置(冒号后必须有至少一个空格)
退出后
sudo netplan apply
三、验证
可以尝试
ping www.baidu.com
如果成功,说明可以联网。然后可以与主机互ping,虚拟机ip地址可使用命令ifconfig查看,enp0s3(可能都不一样)inet后即为ip地址。
如果无法ping通,关闭Windows和Ubuntu防火墙。
sudo ufw disable