VM 端口映射問題


 

環境:

宿主機:WIN 10 --192.168.9.87

虛擬機:CentOS ---192.168.255.129

聯通模式:NAT模式

 

一、VM做端口映射

1.為了方便管理,設置虛擬機為靜態IP

2.配置端口

 

3.測試ssh -p 5555 192.168.9.87 是否能轉到 192.168.255.129

發現無法訪問。【192.168.9.87與192.168.255.129 防火牆都已經關閉】

二、問題排查

1.127.0.0.1:5555 可以順利訪問 192.168.9.87:5555 無法訪問

因此可以推斷數據包到127.0.0.1 卻沒有到達192.168.9.87

換句話說 數據包到達本地的VM8網卡 沒有到達本地連接 在192.168.255.129上檢查與192.168.9.87的連通性,果然不通

2.連通性問題稍后解決。先解決目前的問題,此時有兩種辦法

 

第一種:

①宿主機進行再次端口轉發 將192.168.9.87的數據轉發到127.0.0.1:5555,此時宿主機需要再開通一個端口,比如8888【不能選擇同一端口】

②確認宿主機ip helper服務是不是在運行

 

③然后cmd 運行命令

netsh interface portproxy add v4tov4 listenport=8888 connectaddress=127.0.0.1 connectport=5557 【添加轉發端口】

添加成功后,可以訪問 。實際上路由 外部->192.168.9.87:8888->127.0.0.1:5557->192.168.255.129

 

第二種:

將VM8網卡與本地連接打通 互聯,開通本機路由功能【后續研究】

 

三、其他問題

1.在192.168.255.129 無法ping通 宿主機 192.168.9.87,可以ping通網關 192.168.255.2

2.靜態IP無法訪問,DHCP可以,推測是網絡配置問題

3.ping VM8的網卡無法ping通

4.netstat -rn檢查linux本機路由信息

發現沒有0.0.0.0的路由

5.檢查/etc/sysconfig/network-scripts 下的網卡配置文件后發現是里面網關配置問題,更正后重啟network后正常

6.192.168.9.87:5555 這個可以訪問了 192.168.9.87:8888 可以刪除此條轉發

netsh interface portproxy delete v4tov4  listenport=8888

 

 

四、補充

上述整個網絡拓撲如下圖

 

 

 

 

 

 

因此,當VM8不生效時,宿主機可以通過特定端口進行虛擬機訪問,虛擬機能正常返回數據包

當NAT網關不生效時,或者虛擬機未設置網關,宿主機可以正常訪問虛擬機,但是虛擬機的返回數據包將丟失

 

 虛擬機連接外網,如果是靜態IP ,則通過NAT網關到達宿主機,再通過DNS服務器進行域名解析就可以正常訪問外部域名網絡。

 

 

 

----------------------------------------------------------------------------------------------------------------------------

另外十分感謝一位大神的熱心幫助,解決了困擾了半天的問題。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM