如何讓VMware上的虛擬機器ping通外網(圖解教程)
阿新 • • 發佈:2019-01-03
最近在實習專案中遇到一個問題。因測試需要,本人在win7上安裝VMWare後在啟動兩臺ubuntu伺服器。兩臺主機的網路配置全部採用NAT方式實現連線。之後一路暢通,主機ping通虛擬機器和外網,虛擬機器之間互相ping通,且ping通主機和外網。由於需要外部客戶端訪問ubuntu服務,需要訪問其特定埠跑的程式,可卻一直ping不通...請求了師兄和谷哥度娘後,採用下面方法解決了,分享方案。
(2)選擇NAT模式後,點選VMnet資訊中的“NAT設定(S)..”進行NAT配置
(3)進入NAT設定後,點選“新增”新增埠轉發
(4)進入新增頁面後填寫轉發資訊
圖中填寫的資訊場景為:當外網想要訪問“192.168.204.129:3000”的內容的時候,由於訪問不到192.168.204.129,所以訪問“<主機IP>:<5050>”來代替。也意味著主機上5050的埠暴露的內容實際上會連結到虛擬機器的內容。 (5)成功新增埠轉發,可進行訪問
按照上述的做法,一般是可以成功訪問到虛擬機器上的程式的。但是有些主機由於防火牆的限制可能導致外網訪問不到資源,因此我們可以採取以下的做法。
(1)開啟“控制面板”→“Windows防火牆”,點選“高階設定”
(2)點選左上角“入站規則”,然後點選右上角“新建規則”
(3)選擇“埠”,點選“下一步”
(4)選擇“TCP”(根據實際情況),在“特地給本地埠(S)”寫上需要訪問的埠,點選“下一步”
(5)預設選擇“允許連線”,點選“下一步”,之後繼續“下一步”
(6)填寫“名稱”、“描述”,點選“完成”
至此完成所有配置工作。
分析原因
由於虛擬機器採用NAT方法,其網路地址為主機子網網路,訪問外部網路自然先走閘道器然後踩著主機的肩膀可大大咧咧隨便訪問外網,可是外網找不到虛擬機器網路埠,可是我們找得到win7主機。所以,我們採用藉助主機win7來做代理進行埠轉發。解決方法
(1)開啟VMware軟體,選擇“編輯”→“虛擬網路編輯器”(2)選擇NAT模式後,點選VMnet資訊中的“NAT設定(S)..”進行NAT配置
(3)進入NAT設定後,點選“新增”新增埠轉發
(4)進入新增頁面後填寫轉發資訊
圖中填寫的資訊場景為:當外網想要訪問“192.168.204.129:3000”的內容的時候,由於訪問不到192.168.204.129,所以訪問“<主機IP>:<5050>”來代替。也意味著主機上5050的埠暴露的內容實際上會連結到虛擬機器的內容。 (5)成功新增埠轉發,可進行訪問
按照上述的做法,一般是可以成功訪問到虛擬機器上的程式的。但是有些主機由於防火牆的限制可能導致外網訪問不到資源,因此我們可以採取以下的做法。
(2)點選左上角“入站規則”,然後點選右上角“新建規則”
(3)選擇“埠”,點選“下一步”
(4)選擇“TCP”(根據實際情況),在“特地給本地埠(S)”寫上需要訪問的埠,點選“下一步”
(5)預設選擇“允許連線”,點選“下一步”,之後繼續“下一步”
(6)填寫“名稱”、“描述”,點選“完成”
至此完成所有配置工作。