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

server/2024/9/22 16:50:52/

问题背景:客户提供的服务器操作系统配置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以后,端口转发正常,没有出现如上服务无法启动的问题。


http://www.ppmy.cn/server/118351.html

相关文章

ICMP

目录 1. 帧格式2. ICMPv4消息类型(Type = 0,Code = 0)回送应答 /(Type = 8,Code = 0)回送请求(Type = 3)目标不可达(Type = 5)重定向(Type = 11)ICMP超时(Type = 12)参数3. ICMPv6消息类型回见TCP/IP 对ICMP协议作介绍 ICMP(Internet Control Message Protocol…

9.12-kubeadm方式安装k8s+基础命令的使用

一、安装环境 编号主机名称ip地址1k8s-master192.168.2.662k8s-node01192.168.2.773k8s-node02192.168.2.88 二、前期准备 1.设置免密登录 [rootk8s-master ~]# ssh-keygen[rootk8s-master ~]# ssh-copy-id root192.168.2.77[rootk8s-master ~]# ssh-copy-id root192.168.2.…

tcpdump

监测数据包 1,ip addr 查看网卡; 2,tcpdump监测 监测所有和自己的主机通信的数据包: tcpdump -i 网卡 -vnn port 端口号 监测指定ip和自己主机通信的数据包: tcpdump -i 网卡 -vnn port 端口号 and host ip//待…

【Scala入门学习】Scala的方法和函数

1. 方法 在scala中的操作符都被当成方法存在,比如说、-、*、/ 12就是1.(2)的调用, 2.0 是doule类型,强调用Int类型的写法为1.(2:Int) 1.1 方法的声明和使用 定义方法的语法: def 方法名([变量:变量类型&#xff…

电信网络携手大模型:AI赋能网络运维的新范式

当电信网络用上大模型,会带来怎样的体验? 过去,网络出现问题时,运维人员需要依赖经验反复排查,找到“病根”后再“对症下药”。但在大模型的加持下,问题的解决方式发生了颠覆性的改变。 如今,…

【人工智能】OpenAI最新发布的o1-preview模型,和GPT-4o到底哪个更强?最新分析结果就在这里!

在人工智能的快速发展中,OpenAI的每一次新模型发布都引发了广泛的关注与讨论。2023年9月13日,OpenAI正式推出了名为o1的新模型,这一模型不仅是其系列“推理”模型中的首个代表,更是朝着类人人工智能迈进的重要一步。本文将综合分析…

HAL库学习梳理——UART

笔者跟着B站铁头山羊视频学习 STM32-HAL库 开发教程。下面对HAL库有关UART课程知识和应用做一个梳理。 省流: uint8_t byteNumber 0x5a;uint8_t byteArray[] {0,1,2,3,4,5};char ch a;char *str "Hello word";HAL_UART_Transmit(&huart1,&by…

【JAVA开源】基于Vue和SpringBoot的在线视频教育平台

本文项目编号 T 027 ,文末自助获取源码 \color{red}{T027,文末自助获取源码} T027,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 新…