虚拟机中的概念是这样的:

(1)、宿主机:指要安装虚拟机软件的计算机,你花钱买的物理机。

(2)、虚拟机:利用虚拟机工具构造出来的,有一整套硬件设备,有自己操作系统,应用软件。

(3)、宿主操作系统:物理机上安装的,例如在一台Win2K机上安装VMWare

(4)、客户操作系统:虚拟机上的操作系统,如Red Hat Linux。

virtualbox默认的网络连接方式如下:

kvm虚机和宿主机不通 宿主机和虚拟机_外网


这种连接方式虚拟机可以ping通宿主机和外网,但是宿主机无法ping通虚拟机,执行ip address命令可以看到虚拟机自动分配的ip地址是10.0.2.15(我这里显示的是这个ip,可能会有不同),跟宿主机根本不在一个网段。

VirtualBox的四种不同的网络连接方式:

kvm虚机和宿主机不通 宿主机和虚拟机_外网_02


可以看到桥接模式是最佳选项,它支持所有情况的访问

这里的推荐的安装方式有两种,①、当宿主机插网线(以太网)时的虚拟机网络设置;②、当宿主机WiFi时的虚拟机网络设置。

一、当宿主机插网线(以太网)时的虚拟机网络设置

1、一般只需设置一个网卡为桥接模式就可实现互ping,最直接的就是在安装的时候就把网络配置设置好。

kvm虚机和宿主机不通 宿主机和虚拟机_重启_03

左边是宿主机的网络设置,右边是虚拟机网络设置,我们修改虚拟机的连接方式为桥接网卡、界面名称处选择的是宿主机当前使用的网卡。

2、安装前设置好桥接模式后就启动虚拟机进行安装CentOS7系统,在安装过程中直接配置好网络设置。

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_04

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_05

3、配置好网络后,点击安装,进入创建用户密码,默认用户名是root,之后等待reboot。

【注】(如果安装过程中,你没有打开以太网,那么安装完之后,虚拟机将不会被分配IP地址,你需要进入 /etc/sysconfig/network-scripts/ifcfg-enp0s3配置文件中,将ONBOOT=“no”,改成yes表示网卡设备自动启动 ,然后重启网络,service network restart就行了)

4、安装完后启动虚拟机,ping一下宿主机和百度,如果发现已经可以ping通了,就进行下一步,设置静态IP。

Linux 网络相关配置

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_06

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_07

vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

kvm虚机和宿主机不通 宿主机和虚拟机_重启_08

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_09

然后重启网络,service network restart,检查一下 vi /etc/resolv.conf

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_10

配置yum
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
[root@localhost yum.repos.d]# yum install wget

安装netstat工具(具体使用可参考1.3 Linux网络状态工具netstat使用详解)
yum install net-tools(如果出现 Loaded plugins: fastestmirror问题,那么解决办法:
*首先按住ctrl + z退出安装界面,然后ps -ef|grep yum ,用杀进程的方式结束安装
(1)、修改插件配置文件

[root@localhost yum.repos.d]# vim  /etc/yum/pluginconf.d/fastestmirror.conf
[main]
enabled=0   //由 1 改成0 ,禁用该插件
verbose=0
always_print_best_host = true
socket_timeout=3
#  Relative paths are relative to the cachedir (and so works for users as well
# as root).
hostfilepath=timedhosts.txt
maxhostfileage=10
maxthreads=15
#exclude=.gov, facebook
#include_only=.nl,.de,.uk,.ie

(2)、修改yum 配置文件

[root@localhost yum.repos.d]# vim /etc/yum.conf
9 plugins=0  //不使用插件

(3)、清除缓存并重新构建yum 源

[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
[root@localhost yum.repos.d]# yum install wget

(4)、使用yum 重新安装

yum install net-tools
 ##列出所有路由信息
netstat -r

kvm虚机和宿主机不通 宿主机和虚拟机_外网_11

至此,我们的虚拟机网络配置也就完成了,应该也 可以与宿主机,外网互相ping通了。

二、当宿主机连WiFi时的虚拟机网络设置(这方法对插网线的也适用,如果你对桥接那个模式不懂可以尝试下这个)

1、这里的网络模式是使用两个网卡,一个连接方式为网络地址转换(nat),用于访问外网;网卡2连接方式为仅主机(Host-Only)网络,界面名称选择virtualBox安装后自动生成的以太网卡适配器,用于与宿主机通信。

kvm虚机和宿主机不通 宿主机和虚拟机_重启_12

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_13


virtualBox安装后多出来的那个网络连接,它使用的网卡与虚拟机的网卡2是相同的。

kvm虚机和宿主机不通 宿主机和虚拟机_重启_14

2、安装前设置好以上两个网卡后就启动虚拟机进行安装,在安装过程中直接配置好网络设置。

kvm虚机和宿主机不通 宿主机和虚拟机_重启_15

3、配置好网络后,点击安装,进入创建用户密码,默认用户名是root,之后等待reboot。

4、安装完后启动虚拟机,ping一下宿主机和百度,如果发现已经可以ping通了,就进行下一步,设置静态IP。

5、修改网络配置文件,执行cd /etc/sysconfig/network-scripts

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_16

(”ifcfg-“开头加上我们的以太网卡名称“enp0s3” 和“enp0s8”,这两个在刚才安装时的网络配置就已经看到了,enp0s3这个是网卡1nat的,所以enp0s8这个属于网卡2host-only的才是我们要修改的文件)

kvm虚机和宿主机不通 宿主机和虚拟机_重启_17

左边是修改前,右边是修改后,右边把BOOTRPOTO修改成了static,是因为dhcp是自动获取,如果不改成static,我们在这里修改的这些地址不会生效,

因为重启网络服务时,BOOTRPOTO的值决定了是自动分配还是使用静态数据,DNS1和DNS2对应的是宿主机的首选DNS服务器和备用DNS服务器。

这里最好设置多一个DNS2=8.8.8.8 ,免得后面可能出现无法安装插件的情况(Cannot find a valid baseurl for repo: base/7/x86_64),DNS1一般设置成和网关一样最好。

6、重启网络服务 service network restart ,然后输入 ip addr查看网络信息和尝试宿主机和虚拟机互ping。

三、将虚拟机和宿主机都连接到wifi路由器上,使两者处于同一局域网段中,并且都可以访问外网

1、进入虚拟主机设置面板网络配置项, 选择仅主机(host-only)网络 注意, 这里不要选择桥接网卡模式 ,

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_18

若这里你的选项是空的如下图, 则需要手动安装驱动协议,

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_19

具体步骤:

(桌面上右键点击我的电脑 -> 管理 -> 设备管理器 -> 选中右侧设备后 -> 再点击操作栏 -> 添加过时设备 -> 手动选择硬件 -> 网络适配器 -> 选择 Oracel Corperation -> VirtureBox Host-Only Ethernet Adapter 安装驱动)

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_20

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_21

kvm虚机和宿主机不通 宿主机和虚拟机_kvm虚机和宿主机不通_22


2、开始网络桥接

kvm虚机和宿主机不通 宿主机和虚拟机_外网_23

kvm虚机和宿主机不通 宿主机和虚拟机_外网_24

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_25

kvm虚机和宿主机不通 宿主机和虚拟机_外网_26

3、静态化生成的IP

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_27

kvm虚机和宿主机不通 宿主机和虚拟机_外网_28

kvm虚机和宿主机不通 宿主机和虚拟机_网络设置_29

虚拟机和主机都处于 192.168.125. 同一网段下, 连接的是同一wifi, 可以互相ping通, 且可以直连外网。