VirtualBox是一个和VMware一样,是一个虚拟机软件,而且免费功能强大。我工作中就在使用VirtualBox安装了CentOS、Ubuntu等虚拟机,然后通过ssh连接上去,方便学习和使用。但是遇到一个VirtualBox的网络设置问题,虽然采用桥接网卡的方式,已经能够实现:
- 主机和虚拟机的互通;
- 虚拟机可以上外网;
但是,不管是在公司还是在家中,目前大部分的网络环境都是自动获取IP,这样每次网络环境变化后,通过ssh连接虚拟机时,都要重新修改连接IP,很是麻烦。今天就和大家分享下,如何解决这个问题。
VirtualBox中的桥接网卡模式已经保证了上面提到的第一和第二两点,我们需要在VirtualBox中再配置一个网卡,网络类型选择仅主机模式,具体操作步骤如下:
1、全局设定中,添加虚拟仅主机模式的网络
这里的IP地址网段,最好选一个和公司/家里不重复的。比如公司用的是10.XXX网段,家里用的是192.XXX网段,这里我选择使用172.168网段,这个网段就是用来把我们自己电脑和虚拟机放到一个虚拟网络里。
2、打开虚拟机配置,在网中启用第二块网卡,连接方式和界面名称分别使用:仅主机网络和我们在第二步中添加的虚拟网络适配器。
3、启动虚拟机,查看网络配置情况:ifconfig,我的结果如下:
如果你的结果和我这个截图类似,那么说明已经成功了。不管在什么网络环境下,都可以通过上图中的172.168.200.100地址,ssh了。
但是,我第一次配置完后,并没有成功,enp0s8这个网卡并没有获得IP,这时候就要进行下面的第四步:
4、虚拟机中配置网卡
以Centos为例,进入到 /etc/sysconfig/network-scripts 目录,然后看下有没有叫做 ifcfg-enp0s8 的网络配置,有的话就编辑,没有的话就创建一个,然后编辑,内容如下:红色字体是说明部分,请删除
TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp0s8"
UUID="807119f4-a0fb-45f7-986a-9e644607615b"
DEVICE="enp0s8" // 设备名
ONBOOT="yes" // 开机启动
IPADDR=172.168.200.100 // 固定IP,就是我们在第一步中设定的那个网段里的IP
PEERDNS=yes
PEERROUTES=yes
保存后重启网络 service network restart ,然后再次查看网络配置,应该就和第三步中截图效果一样了。
文章评论
我觉得可以用路由器分配一个静态IP地址给虚拟机比较省事
@zzz 你知道这样配网络是要干嘛吗?LVS的net模式你用路由器玩玩试试,呵呵。