VirtualBox中Ubuntu虚拟机Jenkins无法从Windows主机访问求助
Jenkins跨主机访问问题排查与解决
1. 优先排查Ubuntu虚拟机防火墙
Ubuntu默认启用ufw防火墙,大概率是它拦截了8080端口的外部请求:
- 查看防火墙状态:
sudo ufw status - 如果状态为
active且无8080端口允许规则,添加规则:sudo ufw allow 8080/tcp - 重启防火墙生效:
sudo ufw reload
2. 修正Jenkins监听配置
你提到的配置参数存在拼写错误:正确参数是httpListenAddress(注意是Listen而非Listner):
- 检查配置文件:
cat /etc/default/jenkins | grep httpListenAddress - 确保值为
0.0.0.0,若有误则编辑文件修正 - 重启Jenkins服务:
sudo systemctl restart jenkins - 验证监听状态:
sudo ss -tulpn | grep 8080,输出需包含0.0.0.0:8080或:::8080,确认Jenkins监听所有网卡地址
3. 确认NAT+仅主机模式的网络访问逻辑
- 主机必须使用仅主机模式分配给虚拟机的IP访问Jenkins,而非NAT模式的内部IP(NAT IP仅虚拟机内部可识别)
- 确认主机的VirtualBox Host-Only网卡IP与虚拟机IP处于同一网段(例如主机为192.168.56.1,虚拟机为192.168.56.101)
4. 检查Windows主机防火墙限制
Windows Defender防火墙可能阻断了对虚拟机端口的请求:
- 临时关闭Windows防火墙测试,若能访问则添加规则:允许Windows访问虚拟机仅主机IP的8080端口
- 规则路径:控制面板->Windows Defender防火墙->高级设置->入站规则->新建规则,选择端口类型,指定8080 TCP,允许连接
5. 验证VirtualBox仅主机模式配置
- 打开VirtualBox全局设置->网络->仅主机网络,确认DHCP服务已启用,或虚拟机使用的静态IP在该网段内
- 检查Windows设备管理器中,VirtualBox Host-Only Ethernet Adapter未被禁用
内容的提问来源于stack exchange,提问作者mannofsky
相关产品推荐
相关产品推荐

