外网(公网)访问VMware workstation 虚拟机内web网站的配置方法---端口转发总是不成功的原因

问题背景:客户提供的服务器操作系统配置web程序时,总是显示莫名其妙的问题,发现是高版本操作系统的.net库已经对低版本.net库进行了大范围修订,导致在安全检测上、软件代码规范上更加苛刻,最终导致部署不成功。于是想到了在服务器操作系统中安装虚拟机,利用虚拟机来部署该web程序。在虚拟机部署成功后,需要配置NAT端口转发,目的是用户可以通过服务器(宿主机)的公网地址来访问虚拟机里的web应用程序。

原本通过服务器(宿主机)的公网地址来访问虚拟机里的web应用程序的方式很简单,配置NAT地址转发(端口映射),问题就解决。实际过程中,利用手边的Vmware wokestation 12 pro进行部署,发现端口转发配置后,在宿主机使用宿主机公网IP地址偶尔能正常访问一下虚拟机内的web程序,又是关防火墙、又是重启服务、又是确认端口是否占用(更换端口),均未解决。

休息一晚上后,突然想起是不是虚拟机软件版本的问题?第二天,更换了Vmware wokestation 16 pro,配置完端口转发后,web应用程序访问正常。

在问题解决过程中,相继搜索了“解决VMware NAT service服务无法启动问题”、"外网访问workstation 虚拟机"、“vmware worksation nat服务中包含端口映射就会启动失败的问题”,发现很多人写的很复杂,于是将这个过程写一下。

配置的关键就两条:NAT配置、端口转发。

1、首先确认虚拟机内的网站http://localhost:8080可以正常访问。

2、主机能够ping到虚拟机

虚拟机的IP地址是:

检查宿主机能够正确Ping到虚拟机。

如果ping不通,则确认把宿主机和虚拟机里的防火墙关闭掉。如下图:

防火墙关闭后,就能够Ping通了。

3、虚拟机的网络配置成NAT方式,

选择创建的虚拟机,确定其网络适配器是使用NAT方式。

4、配置虚拟机的端口转发

选择“编辑”-虚拟网络编辑器,选择VMnet 8  NAT 模式,内部虚拟机地址要和这个NAT模式的网络段一致,比如本虚拟机的地址为192.168.88.128。

选择下面框的NAT设置:

在“端口转发”栏目,点击“添加”

,其中主机端口就是宿主机的端口,一般就是80,但防止80端口被占用,可以改成其他端口。HTTP网站使用TCP协议。

将宿主机的端口转发到虚拟机的端口,所以虚拟机IP地址为:192.168.88.128(你虚拟机里的Ip地址),虚拟机端口就是虚拟机里网站的端口:如8080。

配置完成后,如下图:

点击确定后,虚拟机会重新卸载和安装网卡等虚拟设备,安装完成后,端口转发就完成了。

这个时候,通过网络访问宿主机的ip地址+端口号,就可以访问虚拟机里的网站了。

如:我本地宿主机的IP地址为192.168.3.18。

访问我们上面创建的端口转发:

注意:

如果配置了端口转发,访问的时候第一次能访问,很快就无法访问,可以查看服务中VMware NAT Service是否启动,该服务是提供NAT端口转发的核心服务,该服务经常会被意外停止,如果没有启动,就手动启动一下,如果一访问转发端口就停止,就说明该服务异常,需要更换新的软件版本。

        目前发现Vmware wokestation 12 pro存在以上问题,更换目前发现Vmware wokestation 16 pro以后,端口转发正常,没有出现如上服务无法启动的问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lanhai96

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值