首先从物理层进行故障排除,再从虚拟化层进行排除,最后从虚拟机层进行排除
物理侧:
物理层可能是CNA主机和交换机出现问题。
主机:①网卡出现问题 ②主机本身性能差,挂了出现问题 ③主机到交换机的网线松动出现问题
交换机:可能是配置出现问题,AB两台虚拟机分属于两个VLAN,如果在底层交换机没有将端口设置为Trunk模式,或者没有给Vlan做网关的话就有可能不通
虚拟化层(DVS层)
DVS三要素:上行链路,VLAN池,端口组。DVS是调用底层的OVS来实现的,OVS做的就是虚拟交换的一个功能。端口组出错的话就是A属于端口组100,B属于端口组200,可能还创建了别的端口组比如端口组101,不小心吧B划进了端口组101然后就通不了了,然后可能就是端口组对应的VLAN给错了。
虚拟机侧
防火墙没关。获得无效IP。网关信息配置错误。安全组限制。杀毒软件。对端VM故障。
同一个DVS:
相同主机:
相同端口(VM1和VM2):不走路由
两VM端口组是否一致à是否在同一个安全组àOVS/EVS故障(检查流表)。
不同端口(VM1和VM2):会走路由
两VM端口组是否配置正确à TOR端口是否放行相应的VLANà路由器配置是否正确,检查ACL策略,是否存在数据包的过滤à是否在同一个安全组àOVS/EVS故障(检查流表)。
不同主机:
相同端口(VM1和VM3):不走路由
两VM端口组是否一致àToR端口是否放行相应的VLAN à是否在同一个安全组àOVS/EVS故障(检查流表)。
不同端口(VM1和VM3):同相同主机不同VLAN(VM1和VM2)
不同DVS、不同主机(VM1和VM4):隐含条件是VM1和VM4一定不在同一个端口组里。(DVS由端口组和上行链路组成,一个端口组只能属于一个DVS)
默认VM1和VM4在不同物理网络,不能二层互通。只能通过三层路由互通,前提是它们在不同网段。
或者是将VM4添加一个网口,连上DVS1,配置成同一个网段也可以实现通信。
若一定要二层互通的条件:两虚拟机在同一网段,且VM1端口组的VLAN与VM4端口组的VLAN一致。将两TOR交换机连起来允许该VLAN通过。
VM1与VM4不通的原因:
1. 虚拟机没有配置网关
2. 路由器或三层交换机挂掉了
3. 三层设备上配置了限制策略
4. 路由条目出现错误
*快速定位故障点:(考到)
ARP:同一二层内可以通过ARP -a命令查询到要访问的主机IP(ARP表项中记录了同一二层中的IP和MAC的对应关系),若查询不到,说明二层出现问题(Vlan 间不通)或者硬件问题(交换机策略限制,交换机挂了,服务器挂了,线缆松动)。若查询得到一般是虚拟机侧的问题。
tracert/traceroute目的端:路由跟踪。若失败,三层出现问题。大可能是网关出现问题(网关在路由器上设置错误,加入了错误的路由条目,虚拟机侧未设置正确网关,虚拟机网卡未设置正确网关)
同网段:
先互相ping对方 VM,如果能ping通,那么就是虚拟机侧的问题。(防火墙没关、获得无效IP、网关信息配置错误、安全组限制、杀毒软件。)
如果不能ping通,那就arp -a,
如果没有目的MAC地址说明是物理问题(物理链路不通,交换机策略限制,交换机挂了,服务器挂了)或者 Vlan 间不通(VLAN隔离)。
不同网段:
如果在同一路由器下,可以在源目 VM 分别查看 arp 表是否存在对应的网关MAC地址,不存在,则是本端二层有问题(物理硬件或VLAN间不通);存在或者通,问题可能就出在虚拟机侧。(防火墙没关、获得无效IP、网关信息配置错误、安全组限制、杀毒软件。)
不同路由器,用traceroute命令检查每一跳的情况,可能是链路上的路由出了问题,若失败,三层出现问题。大可能是网关出现问题(网关在路由器上设置错误,加入了错误的路由条目,虚拟机侧未设置正确网关,虚拟机网卡未设置正确网关)。