Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建

一.让虚拟机实现上网功能
正常情况下,真机中存在两块网卡:有线网卡和无线网卡
在真机网络状态连接正常的情况下,使得虚拟机也能实现上网功能
操作步骤
###真机中###
1.使用热点连接真机
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第1张图片
2.systemctl status firewalld查看火墙状态,如果火墙状态显示为active则不用重新启动火墙;
若火墙状态为inactive,system start firewall启用火墙
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第2张图片
3.查看火墙的状态清单firewall-cmd --list-all
masquerade=yes,则进入第四步;
masquerade=no
firewall-cmd --add-masquerademasquerade设置成yes状态,可以使用firewall-cmd --list-all进行查看确认;
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第3张图片
4.

sysctl -a | grep ip_forward  

Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第4张图片
图为正确状态,若状态不正确,参考《Linux下的网络配置》进行修改,修改完成网络重启,再次查看;正确则执行第5步
5.ifconfig查看真机内网ip和真机外网Ip
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第5张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第6张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第7张图片
####虚拟机###
1.cd /etc/sysconfig/network-scripts/切换到网卡配置文件所在的根目录下
2.ls查看是否配置文件是否是配置文件的数目和网卡数目一致;
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第8张图片
3.vim ifcfg-eth0网卡配置文件;修改其中的IPADDRESS为与真机中br0处于同一网段的ip;修改网关为真机的br0IP;
4.systemctl restart network重启网络;
在这里插入图片描述
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第9张图片
5.route -n查看是否设置成功
6.ping 网关
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第10张图片
7.ping baidu的域名 注意:直接ping百度名称虚拟机中无法识别
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第11张图片
二.可能出现的相关问题以及解决的办法
由于虚拟机的网络配置依赖于真机,所以当真机的网络服务重启时systemctl restart network可能会出现多个网卡,会导致已经配置好的虚拟机的网络出现混乱;
解决办法
1.在真机中的shell中输入virt-manager;
2.删除旧的网卡,增添新的网卡;
3.ifconfig查看当前真机中的网卡是否已经设置为当前网卡;
4.虚拟机重启网络刷新,然后重新ping;
##当虚拟机中选项设置没有问题但是依旧ping不通时,检查真机是否能实现正常的上网功能;若能,则| grep查看路由功能是否打开,即 =1;查看切换到/etc/sysconfig/network-scripts/网卡配置文件根目录下ls,是否存在ifcfg-wired_connection_1,若存在,则删除rm -fr ifcfg-Wired_connection_1)再使用是否删除成功;
三.在上述中,在虚拟机Ping外网时,只能直接ping某网站的Ip,而不能直接ping它的域名例如:只能ping 183.26.28.26;而不能ping www.baidu.com,虚拟机无法自动建立Ip和域名之间的映射关系;以下操作方法即为在虚拟机中将Ip与域名之间建立映射关系
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第12张图片
操作方法(两种)
1.本地域名解析 打开本地域名解析文件vim /etc/hosts,直接在文件中添加所需要解析的IP和域名 ####在ping 域名 时,能直接在该文件中寻找到答案;
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第13张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第14张图片
==这种方法需要添加每一个所要用到IP和域名之间的映射关系,对于没有在文件中添加的映射关系,在连接域名时,依然无法寻找到对应的IP,而对于用户来说,自己手动添加Ip,工作量大且十分麻烦,几乎不可能完成。==为了解决上述问题,下面的DNS可以解决。Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第15张图片
2.DNS(两种方式:2.1打开DNS的指向文件:vim /etc/reslove.conf;在文件中增加nameserver 114.114.114.114
在这里插入图片描述
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第16张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第17张图片
=在尝试2.2的方法时,将/etc/reslove.conf中的nameserver注释掉,发现ping淘宝时又恢复到原来的状态即可,以便验证该操作方法的合理性。
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第18张图片
在这里插入图片描述

2.2或者直接更改网卡配置文件/etc/network-scripts/ifcfg-westos添加DSN1(注意格式),重启网络
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第19张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第20张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第21张图片
默认情况下优先级时本地解析优先级高
更改优先级把本地文件中的解析/etc/hosts/的改掉,便于验证;
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第22张图片
默认情况下,本地解析的优先级别高
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第23张图片
vim /etc/nsswitch.conf第39行改变 files和dns的前后顺序;ping www.baidu.com验证时外网还是内网,即是本地解析还是DSN
在这里插入图片描述
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第24张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第25张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第26张图片
##enp0s25:系统中的真实的物理网卡硬件,当网络配置出现,先查虚拟机网络配置,然后看真机网络brctl show有没有问题,检查火墙,检查路由器转换功能
三.配置dhcp
##真机##
1.下载相同的版本的dhcp配置文件,wget 地址(下载安装包)->(安装)rm -ivh dhco-4.2.5.47.e17.x86.64.rpm
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第27张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第28张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第29张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第30张图片
2.cd /etc/dhcp/->ls->出现dhclient.d dhcpd.6.conf dhcpd.conf
3.vim /etc/dhcp/dhcpd.conf
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第31张图片
4.cp /user/share/doc/dhcp*/dhcpd.confexample /etc/dhcp/dhcpd.conf(如果出现overwrite说明复制成功)
5.ls出现dhcpd.conf;
6.vim dhcpd.conf->删除27,28行,35行以后->将第7行中改为主机名"westos.com"->将第30行改为172.25.254.0 netmask 255.255.255.224->第31行分配Ip的范围range 172.25.254.60 172.25.254.90->网关 route 172.25.254.4(真机ip)->systemctl restart network->systemctl status dhcpd ->如果状态时active则设置成功
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第32张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第33张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第34张图片
##虚拟机##

cd /etc/sysconfig/network-scripts/
vim ifcfg-westos(将配置文件中的  =none 改为    dhcp)

Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第35张图片

> /var/log/messages
 systemctl restart network ->ifconfig
 cat /var/log/messages
 route -n 看是否能自动获取;再进行ping测试

Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第36张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第37张图片
Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建_第38张图片

你可能感兴趣的:(Linux系统下让虚拟机具备上网功能和访问外网优先级及DHCP的搭建)