随笔——虚拟机上网(真机作为路由器)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_44321029/article/details/97815042

虚拟机连接真机上网
准备:
保证真机可以上网
1、使真机成为一个路由器

[root@foundation0 ~]# systemctl stop libvirtd.service    关闭虚拟机服务【虚拟机服务与防火墙服务有冲突】
[root@foundation0 ~]# systemctl restart firewalld     重启防火墙
[root@foundation0 ~]# systemctl start libvirtd.service     打开虚拟机服务
[root@foundation0 ~]# firewall-cmd --add-masquerade    允许防火墙伪装ip
Warning: ALREADY_ENABLED
[root@foundation0 ~]# firewall-cmd --list-all    显示防火墙信息
public (default, active)
  interfaces: br0 enp0s25 wlp3s0
  sources:
  services: dhcpv6-client ssh
  ports:
  masquerade: yes    为yes之后,才允许防火墙伪装ip
  forward-ports:
  icmp-blocks:
  rich rules:

2、设置虚拟机
(1)、修改文件,设置真机为虚拟机的网关

设置全局网关:vim /etc/sysconfig/network
		内容:# Created by anaconda
			GATEWAY=真机ip
设置网关:vim /etc/sysconfig/network-scripts/ifcfg-eth0
   内容:BOOTPROTO=static
	DEVICE=eth0
	ONBOOT=yes
	IPADDR=172.25.60.1
	PREFIX=24
	GATEWAY=真机ip
	DNS1=114.114.114.114

重启网络:

systemctl restart network

设置dns地址解析:

vim /etc/resolv.conf
   内容:
	# Generated by NetworkManager
	nameserver 114.114.114.114

查看网关:

route -n

这时已经配置好了。基本步骤就是这样。
3、如果出现问题。可能是因为:
(1)、虚拟机网卡坏了
(2)、内核未开启路由功能

[root@foundation60 ~]# sysctl -a | grep ip_forward
net.ipv4.ip_forward = 0	
net.ipv4.ip_forward_use_pmtu = 0

解决方法:vim /etc/sysctl.conf
	在里面添加或修改:
		net.ipv4.ip_forward=1

猜你喜欢

转载自blog.csdn.net/weixin_44321029/article/details/97815042