遇到xshell无法连接到虚拟机的情况,我在网上看了下,我大概总结为以下几种情况:

1、宿主机或虚拟机中的防火墙阻止了xshell的访问。

2、虚拟机中未安装ssh或者没有启动ssh

3、xshel的22l端口占用

4、网络设置的方式问题


解决方法:

1、关闭宿主机和虚拟机中的防火墙,linux虚拟机中的防火墙关闭为 :service iptables stop  可以查看虚拟机中的防火墙状态来查看是否关闭 service iptables status

2、在虚拟机中查看是否安装的命令为:rmp -qa | grep ssh  

使用yum install ssh进行安装 ,安装完成后server sshd start启动

3、在宿主机中使用netstat -an 查看端口,然后在任务管理器中找到端口占用的程序,进行关闭。

4、这里介绍下4种网络的设置方式:

nat模式:虚拟机中访问网络的所有数据都是由主机提供的,虚拟机并不真实存在。这种方式的虚拟机能够访问到主机,和网络中的其他主机,但是主机不能访问虚拟机,而且各个虚拟机之间也是独立的,无法互相访问

桥接模式:桥接访问是通过主机的网卡架设了一条桥,从而直接连入到网络,这样的虚拟机会被分配到一个独立的ip。这种方式的虚拟机和主机能够通过ip互相访问。

内部网络模式:内部网络模式是虚拟机和外网断开,只实现虚拟机和虚拟机之间的内部网络。这种d


以上是在网上看到其他人遇到的这个问题,和解决方案,最后自己的解决方案:

 我问题的原因是因为我配置的hostl连接方式,在宿主机中的host网络适配置是手动获取ip,我改为自动获取之后就好了。


总结:

 其实我这个问题是因为我主机没法ping通虚拟机,而虚拟机能够ping主机,且虚拟机中也能够访问外网。这就代表了不是虚拟机中的网络配置出现的状况,所以主要还是宿主机和虚拟机之间的连接问题。


  本人新手,很多问题想的不到位,或者很多理解可能有偏差的,希望在不断的学习中进行改进吧,欢迎大家给意见。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐