主机Windows可以ping通虚拟机Linux,但是虚拟机Linux不能ping通主机(离线)

主机可以ping通虚拟机,虚拟机不可以ping通主机(离线)

介绍:我的主机是windows10,虚拟机是CentOS7
思路:windows的防火墙拦截
参考教程:https://blog.youkuaiyun.com/hskw444273663/article/details/81301470

问题介绍

1. 查看主机的ip地址

在windows桌面右下角搜索框内输入cmd,打开命令提示符,输入ipconfig
在这里插入图片描述
此时会出现VMnet1VMnet8的IPv4地址,因为我的虚拟机设置的是NET模式,所以需要用的是VMnet8的IPv4地址。

2.查看虚拟机的IP地址

虚拟机要把有线给打开,在桌面右上角
在虚拟机中打开终端,输入ifconfig
在第一部分inet后的就是IP网址

### 解决方案 对于主机无法过 `ping` 命令与处于 NAT 模式下的 Linux 虚拟机信的问题,可以采取以下措施来排查并解决问题。 #### 1. 验证虚拟机网络配置 确认虚拟机的网络设置确实为 NAT 模式。在 VMware 或 VirtualBox 中,可以过管理界面查看和调整虚拟机的网络适配器设置[^1]。 #### 2. 启动必要的 VMware 服务 确保 Windows 主机上的 VMware 相关服务已启动。这包括但不限于 DHCP 和 NAT 服务。具体操作是在运行对话框中输入 `services.msc` 并查找以 "VMware" 开头的服务项,尝试重启这些服务[^3]。 #### 3. 修改防火墙规则 检查并修改可能阻止 ICMP 请求(即 `ping` 流量)的防火墙策略。对于 Linux 虚拟机而言,在终端执行如下命令可临时允许所有入站ICMP请求: ```bash sudo iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT ``` 如果使用的是 ufw (Uncomplicated Firewall),则可过下面的方式开启: ```bash sudo ufw allow proto icmp from any to any ``` 同样地,也需要确保 Windows 防火墙未阻挡来自特定 IP 地址范围内的 ICMP 数据包传输。 #### 4. 设置静态路由表条目 当物理机与虚拟机位于不同的子网时(如题目描述中的情况),可以在宿主机上添加一条指向目标 VM 子网网关地址的新路由记录。假设虚拟机所在的NAT子网是10.x.y.z/8,则可在CMD窗口内键入: ```cmd route add 10.0.0.0 mask 255.0.0.0 <网关IP> ``` 这里的 `<网关IP>` 应替换为实际负责转发至该子网流量的设备接口地址,常情况下会由VMM自动分配给host-only/NAT网络使用的默认路由器实例提供此功能。 经过上述步骤处理后,理论上应该能够实现从外部机器向内部虚拟环境发起成功的连性探测;反之亦然——即双向可达性得以恢复。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值