为什么要遇到这个问题
这是我重新安装centOS7.5虚拟机之后遇到的问题——我需要安装一个SecureCRT工具,结果主机与虚拟机没有ping通。
在安装这个工具之前需要进行主机与虚拟机的相互ping通,所以接下来需要一步步完成网络相关的一些配置。
虚拟机ifconfig查看网卡信息
首先 Vmware打开终端输入:ifconfig或者ifconfig ens33,可以看到 inet、netmask、broadcast分别是多少。
windows终端ping虚拟机的inet
在windows系统上打开cmd命令窗口,ping 192.168.159.31 如果显示"TTL=数字",代表可以ping通;如果显示的是"unreachable"(不可达),代表不能ping通。
查看windows上无线局域网适配器WLAN信息
在windows的终端输入:ipconfig 找到无限局域网WLAN下的ipv4,我的ipv4地址为192.168.43.61
虚拟机的终端ping windows上的ipv4
回到虚拟机的终端 ping 192.168.43.61 "time=xxms"结尾代表可达,否则会显示"unreachable",可以通过ctr+z来结束
这样一来,主机与虚拟机之间就互相ping通,需要双方都ping通才行。如果没有ping成功,可能是配置还不够完善,需要重新查看并编辑。
下面是针对主机与虚拟机的网络配置。
虚拟机网络的配置
首先来到vmware虚拟机的workstation,(此时我的主机连着手机的wifi)。点击编辑>打开虚拟网络编辑器>找到Vmnet8(NAT模式)
这里有子网IP、子网掩码,这些属于workstation的默认设置。如果虚拟机卸载过,或者改过子网和子网掩码,可能需要点击左下角的还原默认设置,之前ping不通时的网络设置大概是和当前的虚拟机不匹配。我在还原默认设置之前就遇到了这样的问题,导致主机与虚拟机之间无法ping通。
注意:当前的子网IP为:192.168.159.0 子网掩码:255.255.255.0
选择NAT模式
接着点虚拟机>设置>网络适配器选NAT模式,即选的是Vmnet8(NAT模式)
windows上VMware Network Adapter VMnet8属性设置
windows主机>网络和共享中心>更改适配器设置
Vmnet8的IPV4属性设置
可以看到Vmware Network Adapter Vmnet8,右键>属性>Internet协议版本4(TCP/IPV4)
从之前虚拟网络编辑器得知Vmnet8默认的子网IP为:192.168.159.0
为了控制Vmnet8的ip和子网ip在同一网段,这里的IP可以填:192.168.159.1 子网掩码:255.255.255.0 默认网关:192.168.159.2
对应虚拟机上的Vmnet8(NAT模式)进行如下图所示配置:
默认网关需要和子网ip及IP地址定义相同网段即159。如果不同会有这样的提示:
最后点击确定,要保证该网络适配器的状态为启动。然而Vmnet1的属性和状态可以完全忽略,NAT模式与它毫不相关。
ens33的查看与修改
接着回到虚拟机输入:
查看:cat /etc/sysconfig/network-scripts/ifcfg-ens33
或者:vim /etc/sysconfig/network-scripts/ifcfg-ens33
输入命令后可以看到ipv6,ipv6这些都可以忽略,目前不可用。ens33——en表示以太网,s表示热拔插卡槽。不同于传统的eth0、eth1、eth2,CentOS7提供了这种不同的命名,这种命名基于固件、拓扑、位置信息进行分配,它的好处是命名全自动、有规律。
ens33网卡的配置信息:
修改ens33的配置
在vim状态下;可以点”i”进行修改
需要添加/修改的属性有:
GATEWAY=192.168.159.2
NETMASK=255.255.255.0
DNS=192.168.159.2
ONBOOT=yes
其中BOOTPROTO=none
IPADDR=192.168.159.31
ens33网卡配置文本(同上):
TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33 UUID=dd53a6a3-8c67-4ce9-8dac-a3d088e99c6c DEVICE=ens33 IPADDR=192.168.159.31 PREFIX=24 IPV6_PRIVACY=no
GATEWAY=192.168.159.2 NETMASK=255.255.255.0 DNS1=114.114.114.114 # (可以配置多个——DNS1/DNS2/DNS3,注意DNS后需要有数字) ONBOOT=yes |
修改之后需要保存:Esc>shift:>wq!>Enter
然后执行命令:service network restart 接着可以看一下DNS解析服务器相关的配置文件内容是否已经更改cat /etc/resolv.conf
看到nameserver匹配即可,"yz"是我的虚拟主机名。114.114.114.114是DNS(Domain Name Server),是国内移动、电信、联通通用的"域名解析服务器",当然也可以配置些别的DNS如8.8.8.8。
也可以ping一下百度 ping www.baidu.com DNS会对这个域名进行解析。
对"没有ping通"的排查
没有ping通,就看看windows和linux虚拟机各自的防火墙是否处于关闭状态。
还有就是我遇到的问题:需要将虚拟网络编辑器还原默认配置。
如果还是ping不通,需要排查一下:
1 ping 虚拟机网关
ping 192.168.159.2
2 ping windows主机网关
ping 192.168.43.1
3 看DNS域名解析服务器是否有效,无效则更换
nslookup
好了,以上是关于windows主机与虚拟机之间ip网络配置的相关记载以及一部分解决"ping不通"的方法,希望对你有帮助,欢迎提出宝贵的意见...