首页 > 代码库 > VirtualBox中CentOS通过Host-Only方式实现虚拟机主机互相访问、共享上网
VirtualBox中CentOS通过Host-Only方式实现虚拟机主机互相访问、共享上网
VirtualBox常用的网络配置如下:
连接方式 | 主机访问虚拟机 | 虚拟机访问主机 | 虚拟机访问虚拟机 | 虚拟机访问外网 | 说明 |
网络地址转换(NAT) | 不支持 | 支持 | 不支持 | 支持 | 默认连接方式,虚拟IP,VirtualBox内部进行网络转换 |
桥接网卡 | 支持 | 支持 | 支持 | 支持 | 此方式相当于真实电脑,真实IP,会占用真实的网络IP资源 |
仅主机(Host-Only)网络 | 支持 | 支持 | 支持 | 支持 | 此方式使用VirtualBox的虚拟网卡,半真实IP,通过共享上网可以实现外网访问 |
1.默认的NAT方式,比较简单,但是有局限性,如果你希望主机能访问虚拟机,虚拟机互相能访问,则不能使用这种方式
2.桥接网卡是我个人比较推荐的方式,它的模拟度最高,相当于网络中的真实电脑,也无需什么特殊配置。但这种方式网络中其他人也能访问到你的虚拟机,而且会占用IP资源,如果你希望虚拟机仅在自己电脑访问,则不推荐这种方式
3.仅主机(Host-Only)网络,这种方式使用VirtualBox虚拟出来的一张网卡(网络连接中就能看到),虚拟机需要配置静态IP才能实现和主机的互相访问,这种方式默认情况是无法访问外网的,但是可以通过主机的Internet连接共享来实现访问外网
本篇文章我们就来讲解下第3中Host-Only方式如何完美实现4通访问
VirtualBox配置,修改网络配置为:仅主机(Host-Only)网络,选择VirtualBox虚拟出来的网卡,如下:
启动CentOS虚拟机,默认情况下无法上网,无法访问主机
修改虚拟机网络配置,Linux的网络配置都在/etc/sysconfig/network-scripts这个目录下,cd过去然后使用ls命令查看:
ifcfg-xx即为网络配置文件,后面的eth0表示网卡设备名称,每张网卡一个配置文件,使用vi ifcfg-eth0命令修改配置
增加/修改配置如下:
IPADDR=192.168.56.2
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
DNS1=192.168.1.1
BOOTPROTO=static
说明:
IPADDR为IP地址,NETMASK为子网掩码,GATEWAY为网关,DNS1为首选DNS,BOOTPROTO=static表示使用静态IP
IP地址的设置要跟VirtualBox虚拟网卡的IP在一个网段,网关设置为虚拟网卡的IP,如下:
设置完之后:wq保存并退出,然后使用service network restart重启网络服务:
此时已经可以ping通主机了,如下:
但是还不能访问外网,此时我们可以使用Internet连接共享来使VirtualBox的虚拟网卡可以访问外网,配置如下:
此时VirtualBox虚拟网卡的IP会被改变为192.168.137.1,我们手动修改回192.168.56.1
回到虚拟机,curl www.baidu.com,此时已经可以访问外网:
VirtualBox中CentOS通过Host-Only方式实现虚拟机主机互相访问、共享上网