摘要:默认情况下 Ollama 仅监听本机回环地址,导致同一局域网下的其他设备无法调用。本文基于 Windows 环境,提供一套经过验证的“改监听 + 放防火墙 + 查IP”三步走方案,并附带企业内网权限受限时的替代方案与安全加固建议。亲测有效,建议收藏备用。

🎯 前言

很多同学在本地部署 Ollama 后,想让另一台电脑(或手机、平板)通过 Open WebUI、ChatBox 等工具访问,却发现连不上。根本原因是 Ollama 默认只绑定了 127.0.0.1:11434

要让局域网设备访问,核心思路只有两步:修改监听地址为全网卡 + 放行 Windows 防火墙。下面是一份零废话的实操手册。

🛠️ 第一步:修改 Ollama 监听地址

我们需要将 Ollama 的监听地址从默认的 127.0.0.1 改为 0.0.0.0,使其接受来自任意网卡的请求。

Windows 配置步骤

  1. 彻底退出 Ollama:右键任务栏托盘区的 Ollama 图标 → 点击 Quit Ollama
  2. 打开环境变量设置:按 Win + R,输入 sysdm.cpl 回车 → 点击 高级 选项卡 → 点击 环境变量
  3. 新建系统变量
    • 变量名:OLLAMA_HOST
    • 变量值:0.0.0.0:11434
  4. 重启 Ollama:依次点击确定保存,然后重新从开始菜单启动 Ollama。

⚠️ 注意:修改环境变量后必须重启 Ollama 进程才能生效!仅仅关闭窗口是不够的。

🔥 第二步:放行 Windows 防火墙(高频踩坑点)

这是最容易失败的一步。网上很多教程给的命令参数有误,或者因为权限不足导致执行失败。请严格按照以下流程操作。

1. 必须以管理员身份运行 PowerShell

  • 点击 Windows 开始菜单,搜索 PowerShell
  • 右键选择 “以管理员身份运行”
  • 在 UAC 弹窗中点击 “是”

常见错误:直接在普通终端或 VS Code 内置终端执行会报 Windows System Error 5 (拒绝访问)。请务必单独开启管理员窗口。

2. 执行正确的防火墙命令

在管理员 PowerShell 中执行:

New-NetFirewallRule -DisplayName "Ollama" -Direction Inbound -Protocol TCP -LocalPort 11434 -Action Allow

💡 参数纠正说明New-NetFirewallRule 不支持 -Port 参数,正确参数名为 -LocalPort。如果你之前用 -Port 报过 NamedParameterNotFound 错误,请用上面的修正命令。

3. 验证规则是否添加成功

Get-NetFirewallRule -DisplayName "Ollama" | Format-List DisplayName, Enabled, Direction, Action

看到 Enabled : True 即表示生效。

🏢 企业电脑权限受限怎么办?

如果你的电脑是公司资产(如用户名类似 DL25061304),即使以管理员身份运行仍报“拒绝访问”,说明被组策略 (GPO) 管控了。此时有两个选择:

  • 联系 IT 部门申请开放 11434 端口入站规则。
  • 使用 SSH 隧道(推荐):无需修改服务端任何配置,最安全且绕过防火墙限制。
    # 在客户端电脑上执行
    ssh -L 11434:localhost:11434 user@服务端IP
    # 然后客户端访问 localhost:11434 即可
    

🌐 第三步:查询局域网 IP 并验证

快速查询本机局域网 IP

Win + R 输入 cmd,执行:

ipconfig

找到当前使用的网络适配器(以太网或 Wi-Fi),查看 IPv4 地址

如何辨别正确的 IP?

  • ✅ 选:192.168.x.x / 10.x.x.x / 172.16.x.x ~ 172.31.x.x
  • ❌ 排除:127.0.0.1(回环地址)
  • ❌ 排除:169.254.x.x(DHCP 获取失败)
  • ❌ 排除:VMware / Hyper-V / Docker 虚拟网卡地址

💡 经验之谈:如果同时插了网线和 WiFi,优先使用网线对应的 IP,传输 token 时延迟更低更稳定。

跨设备验证

假设服务端 IP 为 192.168.1.100,在另一台电脑的浏览器中访问:

http://192.168.1.100:11434

页面显示 Ollama is running 即表示全链路打通 🎉

在各工具中配置 API 地址

工具 API Base URL 填写
Open WebUI http://192.168.1.100:11434
ChatBox http://192.168.1.100:11434
LangChain (Python) base_url="http://192.168.1.100:11434"
命令行直连 OLLAMA_HOST=http://192.168.1.100:11434 ollama run qwen3:8b

🔒 安全警告(必读)

⚠️ Ollama 没有任何内置鉴权机制!
设置 0.0.0.0 后,同网络下任何人都可以调用你的模型、拉取/删除模型,甚至通过恶意 ModelFile 执行代码。

  • 家庭/可信内网:上述配置可直接使用,但绝对不要将 11434 端口映射到公网路由器。
  • 办公/共享网络:强烈建议在前面加一层 Nginx 反向代理 + HTTP Basic Auth 认证:
    server {
        listen 11434;
        auth_basic "Ollama Access";
        auth_basic_user_file /etc/nginx/.htpasswd;
        location / {
            proxy_pass http://127.0.0.1:11434;
        }
    }
    
  • 临时分享:优先使用上文提到的 SSH 隧道方案,用完即断,不留暴露面。

📝 总结排查清单

如果配置完仍然无法访问,请按此顺序逐项检查:

  1. OLLAMA_HOST=0.0.0.0:11434 系统变量是否已设置?
  2. Ollama 是否在设置变量后完全重启过?
  3. 防火墙规则是否以管理员权限成功添加?
  4. 访问时使用的 IP 是否是正确的局域网 IPv4 地址?
  5. 两台电脑是否在同一网段/VLAN 下?
  6. 是否有第三方杀毒软件(如火绒、360)额外拦截了端口?

作者注:本文所有命令均在 Windows 11 + Ollama v0.9+ 环境下实测通过。如果你遇到了文中未覆盖的问题,欢迎在评论区留言交流,我会持续更新补充。觉得有用的话,点个赞再走吧 👍

标签Ollama 大模型 局域网 Windows AI部署 OpenWebUI

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐