Win7下VMware的NAT网络模式不能正常工作

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介: Win7下VMware的NAT网络模式不能正常工作

今天在Windows 7下实验VMware的NAT网络模式时遇到了障碍,Guest-OS不仅无法访问Internet,而且连Host-OS也ping不通。有时候仿佛能ping通Host-OS,但是却返回大量的(DUP!)包,如下图所示:

1.png


根据这个提示,在Google上搜索“ping DUP!”得到大量的结果,有的说禁用VMnet8网卡然后重启即可解决,有的说可能是局域网上有IP冲突,有的说可能ping的是广播地址,还有的说局域网有回路等等,除了第一个禁用/启用VMnet8具有可操作性之外,其他都是些莫名其妙的不知道具体如何解决的答案。但是,遗憾的是禁用/启用VMnet8后问题依旧。 在Guest-OS上执行iptables -L并未发现有设置防火墙规则,并且在Host-OS上已经禁用防火墙了,所以应该可以排除防火墙的原因。然后在vmware社区上看到了这篇帖子,有个人使用tcpdump来定位问题,实验后仍然没有发现什么异常,无果而终。


在ping DUP!这个问题上花费了大约整整一天的时间,最终意识到ping DUP!可能并不是虚拟机无法访问网络的症结所在,通过网络上给出的答案可以发现ping DUP!问题更多的原因可能是局域网内网络配置错误或者网卡异常导致的,而且出现这种现象的原因太多,很难入手。于是重新审视这个问题,把问题的所有现象一一列出来:


Host-OS IP: 192.168.0.107

Host-OS Gateway: 192.168.0.1

Guest-OS IP: 192.168.220.128

Guest-OS Gateway: 192.168.220.2

Guest-OS ping自身192.168.220.128正常,ping网关192.168.220.2正常

Guest-OS ping Host-OS 192.168.0.107返回大量DUP包

Guest-OS ping Host-OS的网关 192.168.0.1返回大量DUP包

Host-OS ping Guest-OS 192.168.220.128正常

打开网络和共享中心,VMnet1和VMnet8属于未识别的网络,而且公共网络不能修改

最后两点现象很快就让人感到异常,特别是未识别网络这条,如下图所示:

1.png

于是Google关键字“VMnet8 未识别的网络”,根据第一条记录的结果修改注册表中的*NdisDeviceType=1然后重启VMnet8网卡,问题竟然就解决了!修改注册表参见下图:

1.png

原来是Windows 7网络访问的限制,也可以说是VMware的一个Bug,VMware在新建网卡时设备类型*NdisDeviceType使用了默认值0,0意味着网卡是标准的真实网卡,VMware应该将其设置为NDIS_DEVICE_TYPE_ENDPOINT(1)才对,这样Windows会知道这个网卡是个虚拟网卡并没有和真实的外部网络连接,在“网络和共享中心”中忽略这些网卡,不会受网络共享设置的限制。


通过解决这个问题,再次意识到真的“不能在一颗树上吊死”。解决问题往往有两种方式:


第一种方式是:首先找出问题的一个异常现象,然后通过各种手段解决这个异常,最终会有两种结果:一是异常解决并且问题解决,二是异常解决问题并未解决。如果是情况一,则问题解决,结束。如果是情况二,则排除了这个异常和问题的联系,这时需要寻找另一个异常现象,重复上述步骤继续解决


第二种方式是:首先列出所有发现的异常现象,然后针对每个异常现象快速确定和问题有联系的可能性(譬如利用搜索引擎),然后针对每个可能性再继续对问题进行分析


可以发现两种解决问题的方式正如图的两种遍历算法:深度优先算法和广度优先算法,方式一为深度优先,方式二为广度优先。深度优先的缺点是可能会导致无止境的往下延伸,越往下延伸解决方案离最初的问题可能就越远,直到排除所有可能性后才能解决最初的问题,在遇到奇葩的问题时,效率可能会非常低下。我们将每一次延伸称之为问题的解决路径,如果你的问题的解决路径很短,譬如我们这里的这个问题,根据现象“VMnet8 未识别网络”就可以直接解决问题,而根本不需要在ping DUP!问题上耗费无数的时间来研究。整个问题的解决示意图如下:

1.png

可见,如果根本不能确定问题原因时,通过广度遍历的方式,加上问题之间的联系,可能会更好更快的解决问题。所以,在面临问题时不要沉陷在自己的某一个想法中,可以从多个角度去看待问题。


参考


VMware Workstation环境中Linux ping返回出现大量“DUP!”的解决方法

ping DUP! 错误

Duplicate packets with ping on guest OS(Linux)

VMware Network Adapter VMnet1和VMnet8未识别的网络修复

Hide VMWare Virtual Network Interfaces from Windows Firewall and Network and Sharing Center [需翻墙]

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
13小时前
|
NoSQL 关系型数据库 MySQL
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
46 34
《docker高级篇(大厂进阶):4.Docker网络》包括:是什么、常用基本命令、能干嘛、网络模式、docker平台架构图解
|
12天前
|
安全 Docker 容器
docker的默认网络模式有哪些
Docker 默认网络模式包括:1) bridge:默认模式,各容器分配独立IP,可通过名称或IP通信;2) host:容器与宿主机共享网络命名空间,性能最优但有安全风险;3) none:容器隔离无网络配置,适用于仅需本地通信的场景。
25 6
|
29天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
80 2
|
1月前
|
域名解析 网络协议 虚拟化
vmware 提供的三种网络工作模式
本文介绍了VMware虚拟机的三种网络工作模式:Bridged(桥接模式)、NAT(网络地址转换模式)和Host-Only(仅主机模式)。桥接模式将虚拟机与主机通过虚拟网桥连接,实现与物理网络的直接通信;NAT模式通过虚拟NAT设备和DHCP服务器使虚拟机联网;Host-Only模式则将虚拟机与外网隔离,仅与主机通信。此外,文章还简要介绍了网络相关的基础知识,包括主机名、IP地址、子网掩码、默认网关和DNS服务器。
61 3
|
1月前
|
Docker 容器
【赵渝强老师】Docker的None网络模式
Docker容器在网络方面实现了逻辑隔离,提供了四种网络模式:bridge、container、host和none。其中,none模式下容器具有独立的网络命名空间,但不包含任何网络配置,仅能通过Local Loopback网卡(localhost或127.0.0.1)进行通信。适用于不希望容器接收任何网络流量或运行无需网络连接的特殊服务。
|
1月前
|
Docker 容器
【赵渝强老师】Docker的Host网络模式
Docker容器在网络环境中是隔离的,可通过配置不同网络模式(如bridge、container、host和none)实现容器间或与宿主机的网络通信。其中,host模式使容器与宿主机共享同一网络命名空间,提高性能但牺牲了网络隔离性。
|
1月前
|
Kubernetes Docker 容器
【赵渝强老师】Docker的Container网络模式
Docker容器在网络环境中彼此隔离,但可通过配置不同网络模式实现容器间通信。其中,container模式使容器共享同一网络命名空间,通过localhost或127.0.0.1互相访问,提高传输效率。本文介绍了container模式的特点及具体示例。
|
1月前
|
Linux Docker 容器
【赵渝强老师】Docker的Bridge网络模式
本文介绍了Docker容器的网络隔离机制及其四种网络模式:bridge、container、host和none。重点讲解了默认的bridge模式,通过示例演示了如何创建自定义bridge网络并配置容器的网络信息。文中还附有相关图片和视频讲解,帮助读者更好地理解Docker网络的配置和使用方法。
|
27天前
|
Ubuntu 网络安全 虚拟化
VMware虚拟机ping不通原因排查及分析
下面以 VMware 虚拟机为例进行介绍。
345 3
|
1月前
|
存储 SQL 数据库
虚拟化数据恢复—Vmware虚拟机误还原快照的数据恢复案例
虚拟化数据恢复环境: 一台虚拟机从物理机迁移到ESXI虚拟化平台,迁移完成后做了一个快照。虚拟机上运行了一个SQL Server数据库,记录了数年的数据。 ESXI虚拟化平台上有数十台虚拟机,EXSI虚拟化平台连接了一台EVA存储,所有的虚拟机都存放在EVA存储上。 虚拟化故障: 工组人员误操作将数年前迁移完成后做的快照还原了,也就意味着虚拟机状态还原到数年前,近几年数据都被删除了。 还原快照相当于删除数据,意味着部分存储空间会被释放。为了不让这部分释放的空间被重用,需要将连接到这台存储的所有虚拟机都关掉,需要将不能长时间宕机的虚拟机迁移到别的EXSI虚拟化平台上。
105 50