虚拟机中的概念是这样的:
(1)、宿主机:指要安装虚拟机软件的计算机,你花钱买的物理机。
(2)、虚拟机:利用虚拟机工具构造出来的,有一整套硬件设备,有自己操作系统,应用软件。
(3)、宿主操作系统:物理机上安装的,例如在一台Win2K机上安装VMWare
(4)、客户操作系统:虚拟机上的操作系统,如Red Hat Linux。
virtualbox默认的网络连接方式如下:
这种连接方式虚拟机可以ping通宿主机和外网,但是宿主机无法ping通虚拟机,执行ip address命令可以看到虚拟机自动分配的ip地址是10.0.2.15(我这里显示的是这个ip,可能会有不同),跟宿主机根本不在一个网段。
VirtualBox的四种不同的网络连接方式:
可以看到桥接模式是最佳选项,它支持所有情况的访问
这里的推荐的安装方式有两种,①、当宿主机插网线(以太网)时的虚拟机网络设置;②、当宿主机WiFi时的虚拟机网络设置。
一、当宿主机插网线(以太网)时的虚拟机网络设置
1、一般只需设置一个网卡为桥接模式就可实现互ping,最直接的就是在安装的时候就把网络配置设置好。
左边是宿主机的网络设置,右边是虚拟机网络设置,我们修改虚拟机的连接方式为桥接网卡、界面名称处选择的是宿主机当前使用的网卡。
2、安装前设置好桥接模式后就启动虚拟机进行安装CentOS7系统,在安装过程中直接配置好网络设置。
3、配置好网络后,点击安装,进入创建用户密码,默认用户名是root,之后等待reboot。
【注】(如果安装过程中,你没有打开以太网,那么安装完之后,虚拟机将不会被分配IP地址,你需要进入 /etc/sysconfig/network-scripts/ifcfg-enp0s3配置文件中,将ONBOOT=“no”,改成yes表示网卡设备自动启动 ,然后重启网络,service network restart就行了)
4、安装完后启动虚拟机,ping一下宿主机和百度,如果发现已经可以ping通了,就进行下一步,设置静态IP。
Linux 网络相关配置
vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
然后重启网络,service network restart,检查一下 vi /etc/resolv.conf
配置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
至此,我们的虚拟机网络配置也就完成了,应该也 可以与宿主机,外网互相ping通了。
二、当宿主机连WiFi时的虚拟机网络设置(这方法对插网线的也适用,如果你对桥接那个模式不懂可以尝试下这个)
1、这里的网络模式是使用两个网卡,一个连接方式为网络地址转换(nat),用于访问外网;网卡2连接方式为仅主机(Host-Only)网络,界面名称选择virtualBox安装后自动生成的以太网卡适配器,用于与宿主机通信。
virtualBox安装后多出来的那个网络连接,它使用的网卡与虚拟机的网卡2是相同的。
2、安装前设置好以上两个网卡后就启动虚拟机进行安装,在安装过程中直接配置好网络设置。
3、配置好网络后,点击安装,进入创建用户密码,默认用户名是root,之后等待reboot。
4、安装完后启动虚拟机,ping一下宿主机和百度,如果发现已经可以ping通了,就进行下一步,设置静态IP。
5、修改网络配置文件,执行cd /etc/sysconfig/network-scripts
(”ifcfg-“开头加上我们的以太网卡名称“enp0s3” 和“enp0s8”,这两个在刚才安装时的网络配置就已经看到了,enp0s3这个是网卡1nat的,所以enp0s8这个属于网卡2host-only的才是我们要修改的文件)
左边是修改前,右边是修改后,右边把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)网络 注意, 这里不要选择桥接网卡模式 ,
若这里你的选项是空的如下图, 则需要手动安装驱动协议,
具体步骤:
(桌面上右键点击我的电脑 -> 管理 -> 设备管理器 -> 选中右侧设备后 -> 再点击操作栏 -> 添加过时设备 -> 手动选择硬件 -> 网络适配器 -> 选择 Oracel Corperation -> VirtureBox Host-Only Ethernet Adapter 安装驱动)
2、开始网络桥接
3、静态化生成的IP
虚拟机和主机都处于 192.168.125. 同一网段下, 连接的是同一wifi, 可以互相ping通, 且可以直连外网。