虚拟机ping不通主机的解决方案

一、问题描述

最近,了解到miniob的项目(采用C\C++环境搭建,并基于Linux开发),官网提供的VS、Docker等方式进行Windows用户的调试、开发。因此,我便萌发了在虚拟机环境(Linux)下进行搭建Clion的开发环境,但在上传主机的项目文件至虚拟机时,出现了 虚拟机可ping通主机,主机ping不通虚拟机 的问题。

二、解决步骤

回顾Vmware的网络方式

  • 桥接模式

桥接模式就是将虚拟机的虚拟网卡利用虚拟网桥与主机的物理网卡进行通信。这时虚拟机与物理主机就相当于在同一个局域网内,它们所使用的IP 地址也是同一个网段,与在办公室里多安装了一台电脑一样,分配给它的IP 与这个局域网内的其它IP 相同会引起冲突,这种方式适用于IP 地址分配较为宽裕的网络环境。

  • 主机共享模式

虚拟机通过VMnet1 虚拟网卡直接与主机的网卡进行通信,这种方式将虚拟机与外网隔离,只可以通过物理主机来访问虚拟机资源,而虚拟机也不可以访问互联网的资源,这种模式适用于复杂的网络环境进行学习和测试使用

  • NAT模式

在NAT 模式中,主机网卡直接与虚拟机的虚拟NAT 设备相连接,然后虚拟机的NAT 设备与虚拟机的虚拟DHCP 服务器一起连接到虚拟网卡VMnet8 上。这时虚拟机与物理主机就不在同一个局域网内,它主要是通过VMnet8 虚拟网卡与主机进行通信,这种方式适用于IP 地址分配较为紧张的网络环境。

解决步骤

  1. 明确自己的网络模式
    本人采用的NAT模式(因此此前采用桥接模式,未连接上外网;关于桥接模式连接外网问题的解决方式
  2. 分析可能的原因
  • 自身的防火墙未关闭,虚拟机可访问主机,而主机不可访问虚拟机,网络连通是没有问题,很可能是该原因。可经检验,并非如此
  • 网段的原因,借鉴桥接模式,是否需要在同一局域网才能ping通?
  1. 进行检验、实践
  • 分别对照主机和虚拟机的IP(注意是VMnet8的虚拟网卡)
    在这里插入图片描述

  • 将虚拟网卡的IP地址改成同一网段

通过修改VMnet的虚拟网络编辑器
在这里插入图片描述
通过修改网络适配器

在这里插入图片描述

分析原因

RFC1918规定了三块专有的地址,作为私有的内部组网使用:

A类:10.0.0.0—10.255.255.255 10.0.0.0/8
B类:172.16.0.0—172.31.255.255 172.16.0.0/12
C类:192.168.0.0—192.168.255.255 192.168.0.0/16

这三块私有地址本身是可路由的,只是公网上的路由器不会转发这三块私有地址的流量;当一个公司内部配置了这些私有地址后,内部的计算机在和外网通信时,公司的边界路由会通过NAT或者PAT技术,将内部的私有地址转换成外网IP,外部看到的源地址是公司边界路由转换过的公网IP地址,这在某种意义上也增加了内部网络的安全性。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值