情景:
物理机外网为IP为A
虚拟机的NAT 内网ip为B
现在想通过ip A访问内网ip为B的虚拟机。
原理:
web服务器使用80端口,所以只要做80端口的映射就好了。
SSH的默认端口是22,也要做映射才能SSH登陆。
两者均是基于TCP协议。
先查看虚拟机的内网ipB:
ifconfig
然后编辑VM的虚拟网络:
编辑->虚拟网络编辑器
1.点击更改设置
2.选中NAT模式后,点击NAT设置
添加端口转发:
主机端口:物理机的端口
做80和22端口的映射
这里虚拟网络就设置好了。
然后在windows防火墙添加入站规则,开启这两个端口的访问权限。
打开防火墙,高级设置>入站规则>新建规则:
然后选择按端口>用于TCP>特定本地端口>输入刚刚映射的端口。就完成了!
现在就可以从外网IP A访问到虚拟机了!
但是这样做会导致物理机的80端口被映射到虚拟机上,所以物理机上通过80端口的web服务器就不可用了。这样可以带来一定的便利,如果还想使用物理机的80端口,那么可以将其他端口映射到虚拟机的80端口上。
时间: 2024-10-10 21:18:05