1. 程式人生 > >實現主機訪問虛擬機器網頁的方法總結

實現主機訪問虛擬機器網頁的方法總結

VMware Workstation提供了兩種虛擬機器上網方式,一種bridge,一種NAT,bridge可以獲得公網地址,而NAT只能是內網地址了。

NAT相當於把主機當成了一個NAT轉換器,我們可以新增埠對映,使得外網可以訪問利用NAT上網的虛擬機器。

下面舉兩個例子

使用的主機環境為

主機:win7 + vmware workstation 8  公網IP: 118.229.240.94

虛擬機器:: Fedora 8  內網IP: 192.168.126.141

例1:在虛擬機器內搭建http伺服器,使用公網地址訪問

1.配置httpd

虛擬機器內部安裝httpd,沒安的話yum install httpd

啟動 service httpd start(檢視httpd服務狀態  service httpd status  啟動服務  service httpd start)

*********************************************************************************************************

關掉防火牆 (此處參考https://blog.csdn.net/qq_15030351/article/details/79733806)

CentOS 7.0預設使用的是firewall作為防火牆,使用iptables必須重新設定一下

1、直接關閉防火牆

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啟動

2、設定 iptables service

yum -y install iptables-services


如果要修改防火牆配置,如增加防火牆埠3306

vi /etc/sysconfig/iptables 


增加規則

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306
-j ACCEPT


儲存退出後

systemctl restart iptables.service #重啟防火牆使配置生效
systemctl enable iptables.service #設定防火牆開機啟動


最後重啟系統使設定生效即可。

*********************************************************************************************************

在虛擬機器內部用127.0.0.1測試,在主機用192.168.126.141測試,均能正常訪問

2.新增埠對映規則

在主機瀏覽器內輸入http://118.229.240.94 ,不可訪問,因為主機沒安http伺服器。(這裡要注意的是要在主機裡輸入主機的ip地址或者localhost+在主機使用的埠號才能訪問到虛擬機器的網頁)

開啟VMware Network Editor,找到這個虛擬機器使用的網絡卡,我的是VMnet8

開啟NAT setting

 

新增一個埠對映,我們將主機10000埠對映成虛擬機器80埠

OK,在主機內訪問 http://118.229.240.94:10000,可以成功。

但是在一臺遠端主機上不能成功,為什麼呢?因為虛擬機器關了防火牆,主機開了防火牆,手動開啟主機的10000埠即可,方法參考如下連結:

http://windows.microsoft.com/zh-CN/windows7/Open-a-port-in-Windows-Firewall

例2: ssh埠對映

按上述方法將主機的10001埠對映成虛擬機器的22埠(ssh使用22埠),就可以通過putty指定埠號10001訪問虛擬機器

 

 

轉載自http://blog.51cto.com/nxlhero/742140