前两天,有同事遇到一个虚拟机之间无法通信的问题,因为不在现场,只能用电话交流,最后顺利定位原因。
这个原因比较隐蔽,容易被忽略,故记录如下,供大家参考。
同事:艾叔,我有两台VMware虚拟机,怎么也看不到对方,好奇怪!
艾叔:哦,描述下你的网络拓扑?
同事:我有两台物理主机A和B,用网线直连,A上有虚拟机A1,B上有虚拟机B1,A1上面的FeiQ(一种即时通讯软件)没法看到B1主机;
艾叔:嗯嗯,那你的虚拟网络选的是什么呢?
这是一个虚拟机跨主机通信的问题,虚拟机跨主机通信,首选桥接模式,桥接模式需要有物理连接,也就是两台主机要么直连,要么要通过交换机相连才能通信。
同事:我选的是桥接,两台虚机都设置了,并且四台机器A、A1、B、B1都在同一网段。
虚拟网络设置没问题,IP设置也没问题,还要排除物理连接是否有问题
艾叔:那你试过物理主机A和B能否Ping通?
同事:是可以Ping通的
艾叔:网线和网卡等都是没有问题的,问题还是在软件上
同事:而且A1上的FeiQ是可以看到B主机的
A1的FeiQ能看到B主机,但看不到B1主机,也可能是B1上的防火墙阻止A1访问
艾叔:那A1和B1上的防火墙是否关闭了呢?
同事:四台机器上的防火墙都是关闭的。
-
物理网络连接没问题
-
虚拟网络没问题
-
IP地址也没问题
-
防火墙也没问题
那问题到底出在哪呢?
艾叔:你看下A1和B1的Mac地址?
同事:。。。哎,它们地址是一样的呢,咋会这样呢?
艾叔:嗯嗯,Mac一样,肯定是Ping不通啦。
艾叔:B1是不是从A1复制过来的?
同事:是啊,是啊,就是从A1复制过来的。
艾叔:第一次运行B1时,会有一个对话框,提示选择这个虚拟机是“I Copied It”还是“I Moved It”。
艾叔:如果选择“I Copied It”,则B1的Mac地址会改变,和A1不同。
艾叔:如果选择“I Moved It”,则B1的Mac不会改变,和A1一样。这样A1和B1就不能通信。
同事:哦哦,那我现在该怎么办呢?
艾叔:两种方法
艾叔:方法一:直接在B1中,���改Mac地址,这个最简单。
艾叔:方法二:删除B1,重新复制,打开B1时,选择I Copied It”。
同事:OK,谢谢艾叔啦!
艾叔大数据系列
新公众号,没法留言,如果你想和艾叔交流的话,可扫码私信,咱们微信见!
Ps:艾叔不是高手,也不是牛人,编程的道路上,走了很多弯路,也踩了很多坑,如果你也和艾叔当年一样,欢迎关注公众号。
如果你觉得本文有用,请分享给需要的人。
你的分享和点赞,是对艾叔最大的支持和鼓励,