windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题

问题

我在问win10系统中的虚拟机上弄了个Flask项目
假设我虚拟机的IP地址是A,win10本机的IP地址是B,并且项目中的代码有人设置了host='0.0.0.0',如下:
windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题
然后在虚拟机的浏览器中输入http://A:5000/,界面正常出现,然后本机的浏览器中输入http://A:5000/,界面也可以正常出现。
问题就是,其他机器,包括我自己手机的浏览器输入http://A:5000/,却不能正常显示
百思不得其解,以为是防火墙问题,最后才发现是虚拟机的网络连接问题

解决

虚拟机在网络设置时有桥接NAT两种方式
☕桥接指的是虚拟机的IP可以作为一个独立的IP,其他物理机可以随意访问它
☕NAT指的是虚拟机通过主机做代理,每次请求发给自己的主机,主机代转去请求外网,这里需要做端口映射这样访问主机的IP的端口就相当于访问虚拟机的IP的端口

由于我之前就是NAT模式,也不熟悉桥接,就还是做端口映射吧,不过如果你做桥接也是可以的,并且也挺方便的。
windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题
windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题
windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题
windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题
windows系统下的Linux虚拟机的Flask项目其他机器无法访问的问题
这样就可以完成端口映射啦

不过这个时候,其他物理机在浏览器中应该输入http://B:5000/,这样就可以访问啦????