win10主机ping不通虚拟机(centos7)或者通过Xshell 6连接不上虚拟机(centos7)(NAT模式)的解决方法

首先说解决思路:虚拟机的网卡选net方式,那么就相当于在你的win10机子上装了两个网卡,一个是你接英特网的网卡,另一个是接你虚拟机的网卡,这个接虚拟机的网卡就是VMnet8。虚拟机中的linux如果想访问英特网,就必须把ip地址设置到与VMnet8一个网段上,具体的说就是linux网卡的前三段要与VMnet8的前三段要相同。

为了达到这个目的,你要打开虚拟机(注意此时不需要开centOS),要将VMnet8设置成net方式;

然后在在win10中用 ipconfig命令查看VMnet8的ip地址;

再打开centOS7,修改它的网关,修改它的IP地址为与VMnet8为同一段地址即可。

 

第一步:点win10的桌面上的“网络”图标右键->属性->更改适配器设置,将VMware Virtual Ethernet Adapter for VMnet8重命名为VMnet8;   将VMware Virtual Ethernet Adapter for VMnet1  重命为VMnet1;注意不是把VMnet1的命名为VMnet8 或者相反了。

这样命名的目的,是为了下一步用ipconfig命令时,看得比较直观,知道哪个是个VMnet8网卡,哪个是VMnet1网卡。

第二步:首先在win10上打开命令行窗口(先win+r 输入cmd再回车)。

输入命令:ipconfig

找到如图的内容(记住是以太网适配器 VMware Network Adapter VMnet8),记下自己的IPv4地址和子网掩码。

 

记下它的IP地址是:192.168.75.1    子网掩码是:255.255.255.0

第三步:转到虚拟机中去操作,修改网关:

命令是是:     vi /etc/sysconfig/network 

#Created by anaconda

GATEWAY=192.168.75.254   

:wq保存退出vi

注意 这个网关192.168.75.254 基本是猜的一个值,要是你知道网关具体的值更好。:)

第四步:仍然是在虚拟机中,输入

vi /etc/sysconfig/network-scripts/ifcfg-ens33

注意后面的ifcfg-ens33这个是虚拟机中网卡的名字,我也是进入/etc/sysconfig/network-scripts这个目录中查看了才知道的。


TYPE=Ethernet                # 网卡类型:为以太网
PROXY_METHOD=none            # 代理方式:关闭状态
BROWSER_ONLY=no                # 只是浏览器:否
BOOTPROTO=dhcp                # 网卡的引导协议:DHCP[中文名称: 动态主机配置协议]
DEFROUTE=yes                # 默认路由:是, 不明白的可以百度关键词 `默认路由`
IPV4_FAILURE_FATAL=no        # 是不开启IPV4致命错误检测:否
IPV6INIT=yes                # IPV6是否自动初始化: 是[不会有任何影响, 现在还没用到IPV6]
IPV6_AUTOCONF=yes            # IPV6是否自动配置:是[不会有任何影响, 现在还没用到IPV6]
IPV6_DEFROUTE=yes            # IPV6是否可以为默认路由:是[不会有任何影响, 现在还没用到IPV6]
IPV6_FAILURE_FATAL=no        # 是不开启IPV6致命错误检测:否
IPV6_ADDR_GEN_MODE=stable-privacy            # IPV6地址生成模型:stable-privacy [这只一种生成IPV6的策略]
NAME=ens33                    # 网卡物理设备名称
UUID=f47bde51-fa78-4f79-b68f-d5dd90cfc698    # 通用唯一识别码, 每一个网卡都会有, 不能重复, 否两台linux只有一台网卡可用
DEVICE=ens33                    # 网卡设备名称, 必须和 `NAME` 值一样
ONBOOT=no                        # 是否开机启动, 要想网卡开机就启动或通过 `systemctl restart network`控制网卡,必须设置为 `yes`

 

第五步:在虚拟机的终端中输入ifconfig命令查看刚的配置是否成功

虚拟机依次执行下面的命令来关闭虚拟机的防火墙,运行完后重启一下虚拟机(reboot命令)

查看防火墙状态  irewall-cmd --state
暂时关闭防火墙  systemctl stop firewalld.service
禁止firewall开机启动  systemctl disable firewalld.service

  • 这样,我们就完成了虚拟机的配置啦!

  • 在你的win10主机上打开新的命令行窗口ping一下你的虚拟机的IP,如图所示就成功啦!

  • 在win10上用Xshell 6连接虚拟机上的centOS7了。  连接的IP地址是192.168.75.128

 

<think>我们正在解决Xshell连接CentOS7虚拟机失败的问题。根据引用资料,我们可以总结出以下步骤:1.确保虚拟机网络配置正确,特别是ens33网卡的IP地址。2.关闭CentOS7的防火墙(临时关闭和永久禁用)。3.确保SSH服务已安装并运行。4.检查Xshell连接设置(IP地址和端口号)。具体步骤:步骤1:检查虚拟机网络配置-在CentOS7中,使用命令`ipaddr`查看网络接口信息,重点查看ens33网卡是否有IP地址(一般为192.168.xxx.xxx)。-如果没有获取到IP地址,需要配置ens33网卡。编辑网络配置文件:`vi/etc/sysconfig/network-scripts/ifcfg-ens33`-确保文件中`ONBOOT=yes`(表示开机启动此网卡)。如果修改了文件,需要重启网络服务:`systemctlrestart network`步骤2:关闭防火墙-临时关闭防火墙:`systemctlstop firewalld.service`-永久禁用防火墙:`systemctl disablefirewalld.service`步骤3:确保SSH服务运行-安装SSH服务(如果未安装):`yuminstall openssh-server-y`-启动SSH服务:`systemctlstart sshd`-设置SSH服务开机启动:`systemctlenable sshd`步骤4:检查Xshell设置-在Xshell中新建会话,主机名填写虚拟机的IP地址(即ens33网卡的IP地址),端口号22。-如果连接失败,尝试在虚拟机ping主机(物理机)的IP,以及从主机ping虚拟机的IP,检查网络连通性。如果按照以上步骤操作后仍然无法连接,请检查虚拟机网络连接模式(建议使用NAT模式或桥接模式)以及虚拟网络编辑器的设置(如VMware的虚拟网络设置)。根据引用[3],如果ens33网卡没有IP地址,需要配置ifcfg-ens33文件,将ONBOOT设置为yes,并重启网络服务。注意:如果虚拟机使用的是NAT模式,那么虚拟机的IP地址应该和主机的VMnet8网卡在同一网段。下面我们详细说明每一步操作。详细步骤:1.检查并配置网络:-打开终端,输入命令:`ipaddr`-查看ens33网卡(可能是其他名称,但通常为ens33)是否有IP地址。如果没有,需要编辑配置文件:```bashvi /etc/sysconfig/network-scripts/ifcfg-ens33```-找到`ONBOOT`项,将其值改为`yes`(如果原来是`no`的话)。-保存退出(按ESC,输入`:wq`,回车)。-重启网络服务:`systemctlrestart network`2.关闭防火墙:-执行命令:```bashsystemctl stopfirewalld.service#停止防火墙systemctl disablefirewalld.service#禁止开机启动```3.确保SSH服务运行:-安装SSH服务(如果未安装):```bashyuminstall openssh-server-y```-启动SSH服务并设置开机启动:```bashsystemctlstart sshdsystemctl enablesshd```4.在Xshell连接:-打开Xshell,新建会话,输入虚拟机的IP地址(从`ip addr`命令中获取的ens33的IP),端口22。-连接时输入用户名和密码(CentOS系统的用户名和密码)。如果以上步骤都正确执行,应该可以连接成功。如果仍然失败,请检查:-虚拟机网络连接模式(在VMware虚拟机设置中,网络适配器应设置为NAT模式或桥接模式)。-在主机上使用命令提示符(cmd)ping虚拟机的IP地址,看是否通。-虚拟机是否安装了SSH服务(检查sshd服务状态:`systemctlstatus sshd`)。引用资料:[^1]:使用Xshell连接VMware虚拟机CentOS7)教程。[^2]:xshell连接centos7虚拟机,关闭防火墙。[^3]:xshell连接本地centos7虚拟机失败,配置ens33网卡。相关问题:1.如何检查CentOS7虚拟机的IP地址?2.如何配置CentOS7的网卡开机自动启动?3.如何检查CentOS7的SSH服务是否正常运行?4.除了关闭防火墙,还有哪些方法可以允许SSH连接?5.虚拟机网络连接模式NAT、桥接、仅主机)有什么区别?</think>### Xshell 连接 CentOS 7 虚拟机失败的解决方法 #### 🔍 核心排查步骤: 1. **检查虚拟机网络配置** - 在 CentOS 7 终端执行 `ip addr` - 确认 **ens33 网卡**(或其他主网卡)有有效的 IP 地址(如 `192.168.xxx.xxx`) - 若未获取 IP: ```bash vi /etc/sysconfig/network-scripts/ifcfg-ens33 # 编辑网卡配置 ``` 修改 `ONBOOT=yes` → 保存后执行 `systemctl restart network`[^3] 2. **关闭防火墙** ```bash systemctl stop firewalld.service # 立即停止防火墙 systemctl disable firewalld.service # 永久禁用防火墙[^2] ``` 3. **验证 SSH 服务状态** ```bash systemctl status sshd # 检查 SSH 服务是否运行 systemctl start sshd # 若未运行则启动服务 systemctl enable sshd # 设置开机自启 ``` 4. **检查 Xshell 连接设置** - 主机地址:输入 `ip addr` 查到的 **ens33 的 IP**(非 `virbr0`) - 端口:保持默认 **22** - 身份验证:选择 `Password`,输入虚拟机账号密码[^1] #### ⚠️ 进阶排查: - **网络模式验证** - 在 VMware 中检查虚拟机网络设置: `右键虚拟机 → 设置 → 网络适配器 → 选择 NAT 或桥接模式` - 主机虚拟机Ping 测试: ```bash # 主机 CMD 执行: ping <虚拟机IP> # 虚拟机终端执行: ping 8.8.8.8 # 测试外网连通性 ``` - **SSH 配置修复** ```bash yum reinstall openssh-server -y # 重装 SSH 服务 ssh-keygen -A # 重建主机密钥 systemctl restart sshd ``` #### 💡 连接成功标志: ```text [user@localhost ~]$ # 出现此提示符表示连接成功[^1] ``` #### 📌 关键注意事项: 1. 务必使用 `ens33` 等主网卡的 IP(非 `virbr0` 的 `192.168.122.x`)[^3] 2. NAT 模式需确保 VMware 服务运行: `Win+R → services.msc → 启动所有 VMware 相关服务` 3. 若使用克隆虚拟机,需删除旧 SSH 密钥: ```bash rm -rf /etc/ssh/ssh_host_* systemctl restart sshd ``` --- ### 相关问题 1. **如何永久配置 CentOS 7 的静态 IP 地址?** 2. **Xshell 连接时出现 "Connection refused" 错误如何解决?** 3. **除了关闭防火墙,还有哪些方法允许 SSH 连接?** 4. **如何排查 VMware 虚拟机NAT 网络故障?** 5. **Xshell 密钥认证登录 CentOS 的配置步骤是什么?** --- [^1]: 使用Xshell连接VMware虚拟机CentOS7)教程。新建会话时需正确设置主机IP和端口号(默认22),输入用户名密码后出现命令行提示符即表示成功。 [^2]: xshell连接centos7虚拟机。必须关闭防火墙:`systemctl stop firewalld.service`停止服务,`systemctl disable firewalld.service`禁止开机启动。 [^3]: xshell连接本地centos7虚拟机失败。关键要配置ens33网卡(CentOS7默认关闭),通过`vi`编辑`ifcfg-ens33`确保`ONBOOT=yes`,重启网络服务后获取有效IP。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

庭博

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值