如何使虚拟机连接网络

操作流程

让虚拟机连接网络,此时我们必须先确保我们的真机能够连接网络,然后让真机充当一个路由器的角色,具体操作步骤如下:

  1. 在虚拟机和主机(可上网)的网卡配置中配置相同的IP网段,设定虚拟机网关为真机的IP地址
  2. 真机停止虚拟机服务 systemctl stop libvirtd
  3. 重新启动火墙systemctl restart firewalld 并查看火墙配置 firewall-cmd --list-all 
  4. 如果我们发现真机上的路由功能关闭,我们需要启动路由功能:firewall-cmd --add-masquerade 确保真机路由器功能开启
  5. 真机重新开启虚拟机服务 systemctl start libvirtd
  6. 查看内核路由功能 sysctl -a | grep ip_forward 此时显示1即为开启内核路由功能,如果显示为0,在 /etc/sysctl.conf 中设置

此时虚拟机即可通过真机上网


操作实战

配置虚拟机环境

首先确认真机是能上网的,先ping通百度,发现确实可以进行网络通信:

查看主机的ip地址:

确认了主机的ip地址后,开始配置我们的虚拟机网络,这里确保ip地址与主机ip地址在同一个地址段上:

还需要在虚拟机中设置网关,网关的地址就是真机的地址:

虚拟机环境已经配置完成

配置真机环境

先关闭真机的虚拟机服务,此操作是为了顺利配置真机中的火墙,我们的虚拟机此时会停止运行,重新开启虚拟机服务时我们重启虚拟机即可:

查看火墙状态,发现此时路由功能masquerade还未开启:

开启火墙的路由功能:

重新开启虚拟机服务:

查看内核路由功能是否开启:

内核路由功能已经开启,如果未开启,可在 /etc/sysctl.conf 中设置net.ipv4.ip_forward = 1

真机环境已经配置完成


查看结果

先在真机上ping www.baidu.com :

在虚拟机中ping 220.181.112.244(虚拟机未设置DNS):

可以进行通信,说明操作成功,虚拟机已经可以上网

猜你喜欢

转载自blog.csdn.net/weixin_43189623/article/details/83270119
今日推荐