Windows10访问虚拟机的 Nginx Web 服务

142 阅读1分钟

原问题是:windows10 作为宿主系统,可以 ping 通 VirtualBox 中的虚拟机的 IP 地址,虚拟机本身也可以访问 nginx web 服务,windows10 却无法访问虚拟机的 nginx web 服务页面,请问该如何解决?

关键词

WindowsLinuxVirtual BoxNginx虚拟机网络配置

环境

宿主系统 —— Window10

虚拟机及其版本 —— VirtualBox6.1

虚拟机系统 —— CentOS7

其他条件

Linux 防火墙 —— 已关闭 (命令为 systemctl stop firewalld.service)

Linux 网络服务 —— 已启动 (命令为 systemctl start network)

SELinux 设置 —— 已关闭 (命令为 setenforce 0)

虚拟机访问 Linux —— OK

宿主系统 ping 虚拟机地址 —— OK

问题判断

综合上述,明显是虚拟机的网络配置出了问题。对网络进行重新配置:

# 网卡 1

连接方式: 仅主机(Host-Only)网络
界面名称: VirtualBox Host-Only Ethernet Adapter
混杂模式: 全部允许
# 网卡 2

连接方式: 网络地址转换(NAT)
端口转发:
    * 名称 —— Centos7_tcp | 协议 —— TCP | 主机 —— 192.168.56.102 | 主机端口 —— 80 | 子系统IP —— 10.0.3.15 | 子系统端口 —— 80

其中,主机的 IP 地址是 VirtualBox Host-Only Ethernet Adapter 网络适配器 (enp0s3) 所显示的 IPv4 地址,如下

image.png

而子系统的 IP 地址则是网卡 2 (enp0s8) 生成的固定的 IPv4 地址,如下

image.png

解决后的成果

Windows10 的浏览器可以正常访问 VirtualBox 中的虚拟机系统 CentOS7 的 nginx 服务了:

image.png