L04-VirtualBox中CentOS7网络配置(可连外网)
本文所述的方法在RHEL6.5、RHEL7和CentOS6.5中同样适用。
1.工具:VirtualBox,虚拟机:CentOS7
2.VirtualBox工具中的网络配置
(1)VirtualBox全局设置:管理——>全局设定——>网络——>仅主机(host-only)
注:因为我本次配置是要搭建OpenStack的网络环境,所以我这里又新建了一块网卡Virtualbox Host-Only Ethernet Adapter #2来作为openstack的管理网络,若是只想配一个网卡,则直接使用VirtualBox中原本就存在的Host-Only网络Virtualbox Host-Only Ethernet Adapter即可。
第一块网卡Virtualbox Host-Only Ethernet Adapter设置如下:
新增的第二块网卡Virtualbox Host-Only Ethernet Adapter #2设置如下:
且两块网卡的DHCP服务器选项都不启用
(2)为了连接外网,将本机的无线网络共享给VirtualBox Host-Only Network,即第一块网卡
(3)在VirtualBox中给虚拟机配置网卡:
网卡一:
网卡二(若不需要两块网卡则无需做这步):
注意两块网卡的MAC地址是不一样的,记住它们,有助于在下一步中确定哪块网卡对应的是哪个配置文件(ifconfig命令中的ether后面就是MAC地址)。
3.虚拟机中的网络配置
在配置之前,先了解一下网卡配置文件各个参数的意义:
DEVICE=eth0 #指出设备名称
NM_CONTROLLED=yes #network mamager的参数,实时生效,不需要重启
ONBOOT=yes #设置为yes,开机自动启用网络连接
IPADDR=192.168.21.129 #IP地址
BOOTPROTO=none #设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务
NETMASK=255.255.255.0 #子网掩码
DNS1=8.8.8.8 #第一个dns服务器
TYPE=Ethernet #网络类型为:Ethernet
GATEWAY=192.168.21.2 #设置网关
DNS2=8.8.4.4 #第二个dns服务器
IPV6INIT=no #禁止IPV6
USERCTL=no #是否允许非root用户控制该设备,设置为no,只能用root用户更改
HWADDR=00:0C:29:2C:E1:0F #网卡的Mac地址
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
NAME="System eth0" #定义设备名称
接下来进行配置
(1)ifcfg-xxx文件的配置
由于virtualbox中给虚拟机分配了两块网卡,因此进入虚拟机中能看到两个网络配置文件ifcfg-xxx
两个文件具体配置如下
ifcfg-enp0s3(由MAC地址可知其对应的是VirtualBox中的Virtualbox Host-Only Ethernet Adapter):
注:BOOTPROTO也可以设置为static,这样配置的IP就是静态的了。
ifcfg-enp0s8:
(2)/etc/resolv.conf文件的配置
修改DNS,在 /etc/resolv.conf文件中增加一个域名服务器,使得虚拟机可以连通外网
nameserver 192.168.137.1
(3)重启网络:service network restart,然后使用ifconfig命令查看
注:有时候即使ifcfg-xxx文件都配置对了,并且使用service network restart命令重启了网络,用ifconfig命令看到IP依然没有配置成自己想要的,这个时候可以使用ifdown 命令(如ifdown enp0s3)先关闭网卡,再用ifup命令开启,就可以了。若是还不行,那么就需再返回去查看文件是否真的配置对了。
4.网络测试:
(1)ping自己
ping -c 4 10.0.0.11
ping -c 4 192.168.137.110
ping -c 4 controller (/etc/hosts文件中需添加ip到主机名的映射)
(2)ping外网
至此,网络配置完成。