Windows主机与centOS虚拟机之间\"ping不通\"

89284553 2020-03-23

为什么要遇到这个问题

这是我重新安装centOS7.5虚拟机之后遇到的问题——我需要安装一个SecureCRT工具,结果主机与虚拟机没有ping通。

在安装这个工具之前需要进行主机与虚拟机的相互ping通,所以接下来需要一步步完成网络相关的一些配置。

虚拟机ifconfig查看网卡信息

首先 Vmware打开终端输入:ifconfig或者ifconfig ens33,可以看到 inetnetmaskbroadcast分别是多少。

Windows主机与centOS虚拟机之间\ping不通\

windows终端ping虚拟机的inet

在windows系统上打开cmd命令窗口,ping 192.168.159.31  如果显示"TTL=数字",代表可以ping通;如果显示的是"unreachable"(不可达),代表不能ping通。

Windows主机与centOS虚拟机之间\ping不通\

查看windows上无线局域网适配器WLAN信息

 在windows的终端输入:ipconfig  找到无限局域网WLAN下的ipv4,我的ipv4地址为192.168.43.61

 Windows主机与centOS虚拟机之间\ping不通\

虚拟机的终端ping windows上的ipv4

回到虚拟机的终端 ping 192.168.43.61  "time=xxms"结尾代表可达,否则会显示"unreachable",可以通过ctr+z来结束。

 Windows主机与centOS虚拟机之间\ping不通\

这样一来,主机与虚拟机之间就互相ping通,需要双方都ping通才行。如果没有ping成功,可能是配置还不够完善,需要重新查看并编辑。

下面是针对主机与虚拟机的网络配置。

虚拟机网络的配置

首先来到vmware虚拟机的workstation,(此时我的主机连着手机的wifi)。点击编辑>打开虚拟网络编辑器>找到Vmnet8(NAT模式)

这里有子网IP、子网掩码,这些属于workstation的默认设置。如果虚拟机卸载过,或者改过子网子网掩码,可能需要点击左下角的还原默认设置,之前ping不通时的网络设置大概是和当前的虚拟机不匹配。我在还原默认设置之前就遇到了这样的问题,导致主机与虚拟机之间无法ping通。

注意:当前的子网IP为:192.168.159.0  子网掩码:255.255.255.0

 Windows主机与centOS虚拟机之间\ping不通\

选择NAT模式

接着点虚拟机>设置>网络适配器选NAT模式,即选的是Vmnet8(NAT模式)

 Windows主机与centOS虚拟机之间\ping不通\

windows上VMware Network Adapter VMnet8属性设置

windows主机>网络和共享中心>更改适配器设置

Windows主机与centOS虚拟机之间\ping不通\

Vmnet8的IPV4属性设置

可以看到Vmware Network Adapter Vmnet8,右键>属性>Internet协议版本4(TCP/IPV4)

Windows主机与centOS虚拟机之间\ping不通\

从之前虚拟网络编辑器得知Vmnet8默认的子网IP为:192.168.159.0

为了控制Vmnet8的ip和子网ip在同一网段,这里IP可以填:192.168.159.1 子网掩码:255.255.255.0  默认网关:192.168.159.2 

对应虚拟机上的Vmnet8(NAT模式)进行如下图所示配置:

 Windows主机与centOS虚拟机之间\ping不通\

默认网关需要和子网ipIP地址定义相同网段即159。如果不同会有这样的提示:

Windows主机与centOS虚拟机之间\ping不通\

最后点击确定,要保证该网络适配器的状态为启动。然而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网卡的配置信息:

 Windows主机与centOS虚拟机之间\ping不通\

修改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

 Windows主机与centOS虚拟机之间\ping不通\

看到nameserver匹配即可,"yz"是我的虚拟主机名。114.114.114.114是DNS(Domain Name Server),是国内移动、电信、联通通用的"域名解析服务器",当然也可以配置些别的DNS如8.8.8.8。

也可以ping一下百度  ping www.baidu.com  DNS会对这个域名进行解析。

 Windows主机与centOS虚拟机之间\ping不通\

 对"没有ping通"的排查

没有ping通,就看看windowslinux虚拟机各自的防火墙是否处于关闭状态。

还有就是我遇到的问题:需要将虚拟网络编辑器还原默认配置

如果还是ping不通,需要排查一下:

1 虚拟机ping虚拟网络适配器VMnet8网关

ping 192.168.159.2 

 Windows主机与centOS虚拟机之间\ping不通\

2 虚拟机ping windows主机无线网络适配器WLAN网关

ping 192.168.43.1

 Windows主机与centOS虚拟机之间\ping不通\

3 看DNS域名解析服务器是否有效,如果有这样的显示则有效,无效可能需要更换,或者检查配置文件

nslookup

Windows主机与centOS虚拟机之间\ping不通\

 好了,以上是关于windows主机虚拟机之间ip网络配置的相关记载以及一部分解决"ping不通"的方法,希望对你有帮助,欢迎提出宝贵的意见...

 

相关推荐