摘要
宿主机为 win7 64 位系统,虚拟机为 VitualBox 下的 CentOS 7 系统。本文通过配置虚拟机以网络地址转换(NAT) + Host-Only 网络连接方式实现和外部互联网及宿主机所在网段主机的通信,其中网络地址转换(NAT)网络连接方式是为了确保虚拟机可以连接到外部互联网,Host-Only网络连接方式是为了确保虚拟机可以和宿主机所在网段主机通信。
关于宿主机
宿主机为无线网络连接,cmd 下输入 ipconfig /all 命令查看宿主机无线网络连接信息如图1,查看宿主机为虚拟机分配的 Host-Only 适配器如图2
图1
图2
从图1中可以看出宿主机 ip 192.168.124.3 属于 C 类 ip 地址,(C 类 ip 地址的内部私有地址为 192.168.1.1 – 192.168.255.255),子网掩码为 255.255.255.0,而图2中 Host-Only 适配器(宿主机所在网段主机和虚拟机通信用到此适配器)的子网掩码为 255.255.0.0。Host-Only 适配器和宿主机不在同一网段,故需要修改 Host-Only 适配器的 ip 地址及子网掩码如图3(为 Host-Only 适配器分配网络号 192.168.33.1,此处可随意分配,保证网段与宿主机一致即可。此修改也可在虚拟机设置中设定,下文中会提及)
图3
关于虚拟机
打开 VirtualBox 虚拟机软件,对安装好的 CentOS 7 虚拟机做如下图4、图5的设置
图4
图5
图5中网卡2的界面名称选项选择一定要与图2中的适配器名称相同(可能存在多个适配器)
此时可以查看一下虚拟机的全局设定如图6、图7
图6
图7
图7中可以看到上文图3中的设置生效,也可以在图7界面对 Host-Only 适配器进行 ip 和子网掩码的设置
启动虚拟机进行网络配置
ip addr 命令查看网络适配器信息如图8
图8
从图8与图4、图5中 MAC 地址对应可知:
适配器 enp0s3 为 网络地址转换(NAT) 适配器,
适配器 enp0s8 为 Host-Only 适配器。
所以,对适配器配置文件进行如下修改:
如果不存在 /etc/sysconfig/networks-scripts/ifcfg-enp0s8 文件,复制一份 ifcfg-enp0s3 文件改名为 ifcfg-enp0s8(以下命令需管理员权限)
cp /etc/sysconfig/networks-scripts/ifcfg-enp0s3 /etc/sysconfig/networks-scripts/ifcfg-enp0s8
vi /etc/sysconfig/networks-scripts/ifcfg-enp0s3
见图9
vi /etc/sysconfig/networks-scripts/ifcfg-enp0s8
见图10
systemctl restart network
如果命令 systemctl restart network 执行失败,
则执行 reboot 命令重启虚拟机即可
图9
图10
网络连接测试
ip 地址配置信息如图11
虚拟机 ping 宿主机如图12
宿主机 ping 虚拟机如图13
虚拟机 ping 网关如图14
虚拟机 ping 外部互联网(百度)如图15
图11
图12
图13
图14
图15
网络配置成功!