关于虚拟机网络的问题
在Windows环境下学习Linux系统一般都是通过虚拟机来学习的。但是如果用虚拟机的时候,输入复制的命令的话就不是很方便,就可能要用到xshell类似的远程连接工具了。但是用xshell连接,可能会出现一旦用xshell连接就出现虚拟机连接不到网络,仅仅能实现虚拟机和宿主机之间的通信,实现不了虚拟机和外界网络的通信,或者说,本来可以与外界通信的虚拟机,一旦用xshell连接之后,就不能和外界通信了。造成这个问题的原因是你本地虚拟机的网卡和你设定的虚拟机的网关一致了。我是在我一台新电脑上转虚拟机,我才发现了这个问题。
以前这个问题困扰了我很久,故在此给大家分享一下。关于计算机网络的基本知识我就不去介绍了。
直接说问题产生的情况吧。
如果你想要你的多个虚拟机互相通信的话,你就必须让这多台虚拟机处在同一个网段。于是我设定了我的虚拟机网卡vm8

可以看到我的配置,我将vm8设成了192.168.80.0网段了(以下简称80网段)。只要用这个网卡的虚拟机都是这个网段的了,我把网关ip设置成了192.168.80.1并且我的本地虚拟就vm8网卡的IP也192.168.80.1。我的虚拟机访问网络流量出口是从这个出口出去的。那么这就会出现一个问题。如果我用xshell等其他工具,或者说,我从宿主机访问我的80网段的虚拟机,就会从我本地192.168.80.1的vm8网卡进行访问。然后造成的结果就是,访问80网段的流量从192.168.80.1,也就是我本地的网卡进去,而虚拟机访问外界的流量也是从这个网卡出去的,这就导致了我进入80网段经由的ip是192.168.80.1,我流量出来的网段ip也是192.168.80.1。
造成的结果就是我从我自己出来,然后我从我自己出去!用我的话说就是自己和自己形成了一个环流,流量不会出去。
Windows cmd中查看路由 route print

下面这个图片就可以看出来问题了,进80网段走的网是192.168.80.1,出这个走的网也是192.168.80.1。故发生环流断网故障

解决的方法。很简单就是将自己本地的虚拟机网卡的ip别设置成网关ip,这样就实现了从宿主机连接虚拟机,虚拟机不会断网,不会产生环流

成功解决在虚拟机中不方便粘贴复制操作,利用工具连接虚拟机不会出现断网问题。
当然以上问题不是每个人都会出现的,本人是为了实现虚拟机之间的通信,将虚拟机放入一个网段,而造成虚拟机的环流断网事情。当然,主要不是解决虚拟机没网的问题,虚拟机没网的问题很好解决,最简单的方法就是将本地的有网网卡直接分享给虚拟机网卡,但这不是我想要的解决方法。以上偶然发现,才是我想要的解决方案。之前在网上搜索过很多,没找到能解决我方法的答案,今偶然发现,分享给与我有同样问题的小伙伴。
不知不觉写了一个多小时了。晚安

浙公网安备 33010602011771号