首页 > 代码库 > 怎样让VMware上的虚拟机ping通外网(图解教程)

怎样让VMware上的虚拟机ping通外网(图解教程)

近期在实习项目中遇到一个问题。

因測试须要,本人在win7上安装VMWare后在启动两台ubuntuserver。两台主机的网络配置所有採用NAT方式实现连接。

之后一路畅通。主机ping通虚拟机和外网,虚拟机之间互相ping通。且ping通主机和外网。

因为须要外部client訪问ubuntu服务。须要訪问其特定port跑的程序。可却一直ping不通...请求了师兄和谷哥度娘后,採用以下方法攻克了,分享方案。


分析原因

因为虚拟机採用NAT方法,其网络地址为主机子网网络。訪问外部网络自然先走网关然后踩着主机的肩膀可大大咧咧随便訪问外网。但是外网找不到虚拟机网络port,但是我们找得到win7主机。所以,我们採用借助主机win7来做代理进行port转发。

解决方法

(1)打开VMware软件,选择“编辑”→“虚拟网络编辑器”
技术分享

(2)选择NAT模式后,点击VMnet信息中的“NAT设置(S)..”进行NAT配置
技术分享

(3)进入NAT设置后。点击“加入”加入port转发
技术分享

(4)进入加入页面后填写转发信息
技术分享
图中填写的信息场景为:当外网想要訪问“192.168.204.129:3000”的内容的时候。因为訪问不到192.168.204.129,所以訪问“<主机IP>:<5050>”来取代。

也意味着主机上5050的port暴露的内容实际上会链接到虚拟机的内容。 

(5)成功加入port转发。可进行訪问
技术分享

依照上述的做法,通常是能够成功訪问到虚拟机上的程序的。可是有些主机因为防火墙的限制可能导致外网訪问不到资源,因此我们能够採取下面的做法。


(1)打开“控制面板”→“Windows防火墙”,点击“高级设置”
技术分享

(2)点击左上角“入站规则”,然后点击右上角“新建规则”
技术分享

(3)选择“port”,点击“下一步”
技术分享

(4)选择“TCP”(依据实际情况)。在“特地给本地port(S)”写上须要訪问的port。点击“下一步”
技术分享

(5)默认选择“同意连接”。点击“下一步”,之后继续“下一步”
技术分享

(6)填写“名称”、“描写叙述”,点击“完毕”
技术分享

至此完毕全部配置工作。




怎样让VMware上的虚拟机ping通外网(图解教程)