解决虚拟机或物理机ping不通网关故障的方法与思路

简介:
原创作品,允许转载,转载时请务必以超链接形式标明文章  原始出处 、作者信息和本声明。否则将追究法律责任。 http://dgd2010.blog.51cto.com/1539422/1531486

基本思路:

  1. 确定问题缩小范围。先外部后内部,利用排除法、类比法、替换法(隔离法)将故障范围逐渐缩小到某一点。

  2. 谨慎做出结论。下结论前先三思,想到所有可能存在问题的点,特别是与别人讨论和描述问题时更应该注意。

  3. 记录问题。做好文档备案工作,如记录故障现象、故障分析、故障原因、处理流程、处理结果、结论与经验等。

    相对于虚拟机,物理机ping不通网关的故障更好排查一些,因为虚拟机在于物理交换机通信的过程中存在一个中间层,中间层可能为宿主主机上的标准交换机或者某个分布式交换机。但无论是标准交换机还是分布式交换机一般都不会处理三层网络,尽管有的分布式交换机能处理三层网络,如Cisco Nexus 1000v。因此只要在配置虚拟机硬件时,给网络适配器选择的网络标签(Vlan ID)正确,一般问题就不会发生在虚拟交换机层面。如果对虚拟交换机是否存在故障不能确定,可以通过查看与故障虚拟机同一个网段的另一个虚拟机是否能正常访问网关和Internet判断虚拟机交换机是否存在问题。

image

    如果网络连接正确,交换机和物理机/虚拟机中的arp表中都会出现各自的mac地址。如交换机的arp表或mac表中会出现物理机/虚拟机的mac地址,物理机/虚拟机的arp表中也会有交换机(网关)的mac地址。每次网络连接的建立过程都会涉及arp查找,例如ping通自己的IP表示网卡正常工作(ping其他主机可能会遇到防火墙或其他安全设备/软件拦截而无法ping通,需要自己去手动判断),这个过程依旧需要借助arp协议将ip地址解析到mac地址,这个已发现的mac地址就会存放在arp池中(缓存起来)。

    对于交换机:进入特权配置模式(hostname#)输入show arp或show mac address-table,结合include进行mac地址查找。

image  image

    对于物理机/虚拟机,不管是Microsoft Windows还是Linux,查看是否获得网关mac地址的命令都可以用arp -a命令(结合find或grep命令),显示当前arp池中有哪些已经发现的主机,包括网关。

image image

    上述操作结果都正常的话表示,协议和链路工作正常。

    自下而上的方法。如果说按照osi或tcp/ip模型的划分的话,就是说物理层没有问题(能ping通自己、交换机连接状态、端口指示灯、内核/软件输出信息等),数据链路层没有问题(arp池中发现对方的mac地址)。接下来就应该分析网络层。

    分析网络层首先要考虑的就是路由问题。例如检查交换机中是否存在特定主机路由,因为静态路由/特定主机路由的优先级都要比默认网关的优先级要高,一旦存在这些路由无法ping通网关就非常正常了。网关地址对于物理机/虚拟机安装的操作系统而言比普通主机更特殊一些,因此,即使一个主机能ping通同一网段的其他主机而不能ping通网关是正常的。

    例如交换机上有一条静态路由为“S       172.16.205.7/32 [1/0] via 172.16.172.7”,如果从交换机ping172.16.205.7时,172.16.172.7这个地址不存在或者链路有问题,必然不通。而从172.16.205.7这个机器上ping网关(172.16.205.1),也是ping不通,原因是包从物理机/虚拟机的网卡去向交换机时正常,在回包时不正常,回包时还是要走静态路由里面规定的那个IP地址(谁让人家的优先级高呢?)。

    关于路由优先级。直连路由最高、其次是静态路由最后最后是默认网关。所有的静态路由、直连路由等都查找不到的时候交给默认网关去处理,因此默认网关的路由优先级是最低的。

本文出自 “通信,我的最爱” 博客,请务必保留此出处http://dgd2010.blog.51cto.com/1539422/1531486

目录
相关文章
|
2月前
|
Linux 网络安全
物理机与虚拟机(linux)不能ping 通的原因之一
有时候,我们需要使用SSH来操作虚拟机的linux,这时候可能存在需要固定linux的固定ip,然后发现固定linuxIP后,window和linux无法ping通,而且linux无法上网的情况,这时候我们需要将linux的虚拟网卡设置为桥接方式 NAT模式和桥接模式的区别:NAT模式和桥接模式的区别
91 1
|
8月前
VM 挂起虚拟机后 主机无法ping通虚拟机
VM 挂起虚拟机后 主机无法ping通虚拟机
69 0
|
9月前
|
网络协议 虚拟化
76Linux - VMware虚拟机三种联网方法( NAT网络地址转换: 默认使用VMnet8 )
76Linux - VMware虚拟机三种联网方法( NAT网络地址转换: 默认使用VMnet8 )
68 0
|
2月前
|
安全 网络协议 网络安全
【网络连接】ping不通的常见原因+解决方案,如何在只能访问网关时诊断,并修复IP不通的问题
【网络连接】ping不通的常见原因+解决方案,如何在只能访问网关时诊断,并修复IP不通的问题
2137 0
|
2月前
|
Shell Linux 开发工具
Vmware 虚拟机挂起恢复后发现无法 Ping 通,无法连接到主机
在Linux主机上,以`root`用户停止NetworkManager服务并重启网络: ```shell systemctl stop NetworkManager systemctl restart network ``` 或修改网卡配置文件`ifcfg-ens33`,添加`NM_CONTROLLED="no"`,然后重启`network`服务: ```shell vim /etc/sysconfig/network-scripts/ifcfg-ens33 systemctl restart network ```
|
2月前
|
网络协议 Linux 网络安全
虚拟机Vmware详细安装(包含kali,win7与winxp三系统相互ping与安装)
本文是一篇关于虚拟机安装和配置的教程,包括使用VMware安装虚拟机和在虚拟机中安装Kali Linux、Windows 7和Windows XP系统。作者提供了详细的步骤和截图说明,指导读者如何下载和安装VMware,以及如何从提供的链接下载预配置的操作系统镜像文件。安装过程中,重点介绍了如何选择安装路径、接受许可协议、启动安装过程,并强调了不要勾选某些选项以保持默认设置。此外,还提到了如何在虚拟机中配置网络,确保三个系统在同一网段并能互相ping通。最后,作者布置了一些练习,如熟悉操作系统的使用、获取IP地址和互相通信,以及鼓励读者享受学习网络安全的过程。
124 9
|
2月前
|
监控 网络协议 安全
【亮剑】当设备IP能ping通但无法上网时,可能是DNS解析、网关/路由设置、防火墙限制、网络配置错误或ISP问题
【4月更文挑战第30天】当设备IP能ping通但无法上网时,可能是DNS解析、网关/路由设置、防火墙限制、网络配置错误或ISP问题。解决步骤包括检查网络配置、DNS设置、网关路由、防火墙规则,以及联系ISP。预防措施包括定期备份配置、更新固件、监控网络性能和实施网络安全策略。通过排查和维护,可确保网络稳定和安全。
|
2月前
|
网络协议 Linux 程序员
【Linux】虚拟机ipv4地址消失,主机ping不通
【Linux】虚拟机ipv4地址消失,主机ping不通
69 0
|
2月前
|
存储 Ubuntu Linux
虚拟机VMware Workstation Pro中配置Linux操作系统Ubuntu的方法
虚拟机VMware Workstation Pro中配置Linux操作系统Ubuntu的方法
101 1
|
2月前
|
存储 缓存 Java
JVM【带着问题去学习 02】数据结构栈+本地方法栈+虚拟机栈+JVM栈运行原理
JVM【带着问题去学习 02】数据结构栈+本地方法栈+虚拟机栈+JVM栈运行原理
40 0