VirtualBox下载链接:Downloads – Oracle VM VirtualBox
需求描述:
VirtualBox安装比较简单,在文章中就不抛开细讲,这篇文章主要针对创建虚拟机后如何打通虚拟机的内网访问(即本地可以通过本地终端连接虚拟机),外网访问(即虚拟机可以访问外网资源)。
场景描述:
正常场景我们在公司网络环境想要让虚拟机通过桥接模式是不能分配IP的,这块跟公司DHCP服务有关,所以虚拟机如果要访问外网我们首先需要考虑配置NAT模式,即虚拟机配置NAT网络模式,然后从虚拟机内部访问外网的时候,会通过NAT网卡转发到本地PC端网卡,然后流量转发到外网。虚拟机访问外网没有问题了,但是如果要从PC端走内网访问虚拟机呢?virtualbox的NAT网络是通过虚拟软件本身来进行转发的,在PC端没有NAT网卡,所以在PC端访问虚拟机的NAT网段IP是访问不通的,这时如果我们想要从PC端访问虚拟机还需要在虚拟机中再开启一块【仅主机模式】的网卡来访问。
解决方案:
- 访问外网:从虚拟机访问外网
- 访问内网:从PC端本地访问虚拟机
大家肯定有疑问为什么本地访问虚拟机还需要再创建一块网卡?
这是因为NAT网络是VirtualBox本身封装的NAT网卡进行路由转发,大家应该都知道如果本地网络不同的网段需要互通,需要有独立得网卡配置,但是NAT网卡在PC端本地没有独立网卡配置,在安装VirtualBox时在PC端自动创建的网卡只有仅主机模式的网卡,所有如果想要从本地去访问虚拟机得需要有一块网卡进行路由转发,这时只能配置仅主机模式网卡来进行路由转发。
VirtualBox网卡配置
开启仅主机模式
1. 打开网络管理界面
2. 选择仅主机(Host-Only)网络配置,对网卡的IP信息以及DHCP网段进行配置。
3. 确保这个网卡是启动状态
开启NAT模式
选择NAT网络,点击创建NAT网络,然后勾选启用DHCP,最后点击应用即可开启
虚拟机网络配置
虚拟机网络配置主要从两部分进行,即虚拟机本身的网卡配置和开启虚拟机后的网卡配置文件的配置。
虚拟机网卡
1. 选择要配置的虚拟机,并在右侧配置栏找到网络并点击进入网卡配置
2.网卡1选择【网络地址转换NAT】模式,用此网卡来访问外网
3. 网卡2选择【仅主机(Host-Only)网络】,开启虚拟机内网访问
网卡配置文件
开启虚拟机,并进入命令行交互界面,我当前的系统是欧拉21.10版本系统,当然其它需要需要结合系统本身的网络配置进行操作。
1. 首先通过ip addr命令查看网络信息
2. 进入到/etc/sysconfig/network-script/目录下
第一块网卡enp0s3
BOOTPROTO配置为dncp
ONBOOT配置yes
3. 配置第二块网卡enp0s8
#拷贝一个网卡配置文件
cp ifcfg-enp0s3 ifcfg-enp0s8
#生成uuid,多块网卡需要全局唯一的uuid
uuidgen ifcfg-enp0s8
5e940b2d-e8ec-44aa-abc7-b98be2a30e26
#修改第二块配置文件配置
vi ifcfg-enp0s8
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s8
UUID=0cba4f95-4068-4f08-ba1d-227ab9dda1bf
DEVICE=enp0s8
ONBOOT=yes
IPV6_PRIVACY=no
IPADDR=192.168.56.110
NETMASK=255.255.255.0
#报存退出,然后重启两块网卡,由于欧拉系统使用的是networkmanager管理网络,所有命令
#与centos系统有一些区别,欧拉系统用nmcli进行重载网卡配置
#重新加载第一块网卡
nmcli con reload;nmcli con up enp0s3
#重新加载第二块网卡
nmcli con reload;nmcli con up enp0s8
#查看网卡信息
ip addr
网络验证
外网访问
从虚拟机内部去ping百度是通的
内网访问
win+R打开运行框,输入cmd开启命令交互窗口
从PC端ping虚拟机的第二块网卡ip是通的
最后结论:内外网网络全部验证完成,都可以正常访问