Ollama本地服务无法通过IP访问的终极解决方案

Ollama本地服务无法通过IP访问的终极解决方案


问题描述

在 Mac 系统上启动 Ollama 服务后,通过 localhost 可以正常访问 API,但通过本地 IP(如 192.168.1.106)访问时却报错 Connection refused


1. 问题现象

  • 正常访问curl http://localhost:11434/api/generate 可正常返回结果。
  • 异常访问curl http://192.168.1.106:11434/api/generate 报错 Connection refused

2. 排查步骤与解决方案

2.1 检查ollama 配置`

Ollama 默认仅监听 localhost,需配置为监听 0.0.0.0

执行以下命令检查 ollama 监听的 ip

bash 复制代码
lsof -i :11434

若返回

bash 复制代码
COMMAND   PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
ollama  99664  user    3u  IPv6 0xb5d825d19a65fcd3      0t0  TCP localhost:11434 (LISTEN)

其中localhost:11434说明 ollama 只监听了localhost,这样当你使用 ip 访问 ollama 服务的时候就会被 refused

正常返回应如下

bash 复制代码
COMMAND   PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
ollama  99664  user    3u  IPv6 0xb5d825d19a65fcd3      0t0  TCP *:11434 (LISTEN)
2.2 环境变量强制覆盖配置(关键解决方案)

临时方案

通过设置当前终端会话环境变量 OLLAMA_HOST 强制临时指定监听地址:

bash 复制代码
# 临时生效(当前终端会话)  
export OLLAMA_HOST="0.0.0.0:11434"  
ollama serve  

永久生效方案

将环境变量添加到 Shell 配置文件(如 ~/.bashrc~/.zshrc):

bash 复制代码
echo 'export OLLAMA_HOST="0.0.0.0:11434"' >> ~/.zshrc  
source ~/.zshrc  

2.3 其他排查项
  1. 检查端口占用

    bash 复制代码
    lsof -i :11434  

    若其他进程占用端口,终止进程:

    bash 复制代码
    kill -9 <PID>  

3. 最终验证

执行以下命令测试:

bash 复制代码
curl http://192.168.1.106:11434/api/generate \  
  -d '{"model": "deepseek-r1:8b", "prompt": "为什么天空是蓝色的?"}'  

若返回正常结果,问题解决!


4. 总结

  • 核心问题 :Ollama 默认仅监听 localhost,需通过配置或环境变量开启外部访问。
  • 关键步骤
    1. 使用环境变量 OLLAMA_HOST 强制覆盖配置(优先级最高)。
    2. 检查防火墙和端口占用。

通过以上方法,即使配置文件未生效,也能通过环境变量快速解决问题。希望本文能帮助你顺利部署 Ollama 服务!

相关推荐
0x2112 小时前
[论文阅读]REPLUG: Retrieval-Augmented Black-Box Language Models
论文阅读·人工智能·语言模型
qq_429856572 小时前
计算机网络的五层结构(物理层、数据链路层、网络层、传输层、应用层)到底是什么?
网络·计算机网络
JOYCE_Leo162 小时前
一文详解卷积神经网络中的卷积层和池化层原理 !!
人工智能·深度学习·cnn·卷积神经网络
~央千澈~4 小时前
对鸿蒙 Next 系统“成熟论”的深度剖析-优雅草卓伊凡
人工智能
Donvink4 小时前
【视频生成模型】通义万相Wan2.1模型本地部署和LoRA微调
人工智能·深度学习·aigc·音视频
訾博ZiBo4 小时前
AI日报 - 2025年04月29日
人工智能
爱喝奶茶的企鹅4 小时前
Ethan独立开发产品日报 | 2025-04-27
人工智能·程序员·开源
极小狐4 小时前
如何对极狐GitLab 议题进行过滤和排序?
人工智能·git·机器学习·gitlab
望获linux4 小时前
智能清洁机器人中的实时操作系统应用研究
大数据·linux·服务器·人工智能·机器人·操作系统