问题展示
请在保证虚拟机和宿主机之间完美连接之后,再看此篇文章。如何保证呢?操作请看这篇:Linux虚拟机与Windows宿主机间的通信。如何验证呢?当然是 ping 啊。
虚拟机 ping 主机:通
![](https://img-blog.csdnimg.cn/20210618110723612.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODg1Njcz,size_16,color_FFFFFF,t_70)
主机 ping 虚拟机:通
![](https://img-blog.csdnimg.cn/202106181111005.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODg1Njcz,size_16,color_FFFFFF,t_70)
通常情况下,能 ping 通,说明网络连接正常,那为什么xshell连接不上呢?
![](https://img-blog.csdnimg.cn/20210618111227703.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODg1Njcz,size_16,color_FFFFFF,t_70)
原因就是
你的VMnet8和虚拟机IP地址一样了,当NAT设备访问192.168.203.128主机时,都只找到VMnet8就结束了,ping只是验证网络这个通路,这条路的确是通路,能ping通一点都不奇怪。那为什么xshell连不上呢?首先你得知道xshell能连接得益于ssh服务,而你的VMnet8上有开ssh服务吗?显然没有 。虽然虚拟机上开了,但是你却找到VMnet8就停止往下找了,那虚拟机上有ssh服务就形同虚设。
解决方法
那就将VMnet8和虚拟IP地址修改的不一样呗。
![](https://img-blog.csdnimg.cn/20210618112044855.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODg1Njcz,size_16,color_FFFFFF,t_70)
这个时候你再去连 192.168.203.128 的主机就没问题了,指定能找到虚拟机。
![](https://img-blog.csdnimg.cn/20210618112203302.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxODg1Njcz,size_16,color_FFFFFF,t_70)