关于xshell无法连接虚拟机中linux
首先与遇到的情况是,在虚拟机下安装了linux后,xshell无法连接远程的虚拟机。
我遇到的情况是虚拟机可以ping 主机,主机确ping不了虚拟机。
使用的VM设置了两个网卡,一个nat 一个host。
1、根据我自己理解,nat网卡是使虚拟机在不通过宿主机的情况下,可以自己访问外网
2、而host是主机和虚拟机之间的连接通道。
当然,以上两点是自己的想法,具体是不是还有待进一步学习之后来验证。
现在入正题:
遇到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主机,且虚拟机中也能够访问外网。这就代表了不是虚拟机中的网络配置出现的状况,所以主要还是宿主机和虚拟机之间的连接问题。
本人新手,很多问题想的不到位,或者很多理解可能有偏差的,希望在不断的学习中进行改进吧,欢迎大家给意见。