FRP 0.62.0 + Mac Ollama 公网穿透部署+排障实录(标准 TOML 格式)

FRP 0.62.0 + Mac Ollama 公网穿透部署+排障实录(标准 TOML 格式)


前言

在使用 Mac 本地 Ollama + FRP 0.62.0 公网穿透 实现外网访问本地大模型时,遇到一个极其隐蔽的坑:
FRP 服务端/客户端全启动成功、防火墙全放行、端口监听正常,但 curl 公网地址无任何输出、无法访问。

本文包含 FRP 0.62.0 下载安装 + 标准 TOML 配置 + 完整排障 + 终极解决方案,所有配置均为官方标准格式,可直接复制使用。


一、环境说明

  • 本地设备:MacOS(Intel / Apple Silicon)
  • 本地服务:Ollama(大模型推理服务,默认端口 11434)
  • 穿透工具:FRP 0.62.0(2025 最新版,配置格式重构)
  • 服务端:Linux 云服务器
  • 目标:公网访问本地运行的 Ollama 服务

二、FRP 0.62.0 下载与安装

1. 官方下载地址

https://github.com/fatedier/frp/releases/tag/v0.62.0

2. Linux 服务端安装

bash 复制代码
# 下载
wget https://github.com/fatedier/frp/releases/download/v0.62.0/frp_0.62.0_linux_amd64.tar.gz

# 解压
tar -zxvf frp_0.62.0_linux_amd64.tar.gz
cd frp_0.62.0_linux_amd64

3. Mac 客户端安装

bash 复制代码
# Apple Silicon
https://github.com/fatedier/frp/releases/download/v0.62.0/frp_0.62.0_darwin_arm64.tar.gz

# Intel
https://github.com/fatedier/frp/releases/download/v0.62.0/frp_0.62.0_darwin_amd64.tar.gz

解压后直接进入目录使用即可。


三、FRP 0.62.0 标准 TOML 配置(无报错版)

FRP 0.62+ 弃用了旧版字段,必须使用标准 TOML 结构,否则直接报错:

  • unknown field "dashboardPort"
  • unknown field "vhostHTTPPort"
  • unknown field "authToken"

1. 服务端配置 frps.toml(标准 TOML)

toml 复制代码
# 监听地址与端口
bindAddr = "0.0.0.0"
bindPort = 7000

# 认证配置
[auth]
method = "token"
token = "your-security-token"

# Web 仪表盘
[webServer]
port = 7500
user = "admin"
password = "your-dashboard-password"

2. 客户端配置 frpc.toml(标准 TOML)

toml 复制代码
# 服务器地址
serverAddr = "your-server-ip"
serverPort = 7000

# 认证配置
[auth]
method = "token"
token = "your-security-token"

# 代理规则(TCP 穿透 Ollama)
[[proxies]]
name = "ollama"
type = "tcp"
localIP = "127.0.0.1"
localPort = 11434
#remotePort可以任意设置
remotePort = 11434

四、启动 FRP 服务

1. 服务端启动

bash 复制代码
./frps -c frps.toml

2. 客户端启动

bash 复制代码
./frpc -c frpc.toml

出现以下日志即为启动成功:

复制代码
login to server success
[ollama] start proxy success

五、问题现象

一切看起来正常:

  • FRP 启动成功
  • 端口已放行
  • 本地 Ollama 监听正常
  • curl 公网IP:11434 无任何输出

六、完整排查过程

1. 检查服务器防火墙

bash 复制代码
sudo iptables -L -n | grep 11434
sudo iptables -L -n | grep 7000

结果:端口全放行,无限制。

2. 检查端口监听

bash 复制代码
sudo lsof -i:11434

发现异常:

复制代码
ollama  TCP localhost:11434 (LISTEN)
ollama  TCP *:11434 (LISTEN)

双进程冲突,杀掉自动复活。

3. 检查 Ollama 启动参数

bash 复制代码
OLLAMA_HOST=0.0.0.0 OLLAMA_ORIGINS="*" ollama serve

依旧无效。


七、终极真凶(99% 用户踩坑)

Mac 端 Ollama UI 图形界面在后台运行!

  • GUI 会强制占用 11434 端口
  • 强制监听 127.0.0.1
  • 禁止外部访问
  • 杀进程 → 自动复活
  • 改配置 → 强制覆盖

只要 GUI 不退出,任何配置都无效!


八、终极解决方案

1. 退出 Mac 顶部菜单栏 Ollama GUI

2. 命令行启动 Ollama

bash 复制代码
OLLAMA_HOST=0.0.0.0 OLLAMA_ORIGINS="*" ollama serve

3. 启动 frpc

bash 复制代码
./frpc -c frpc.toml

4. 测试访问

bash 复制代码
curl http://your-server-ip:11434/api/tags

立即返回模型列表,穿透成功!


九、避坑总结(核心)

  1. FRP 0.62+ 必须使用 标准 TOML 配置
  2. Mac 上使用 Ollama 命令行必须 退出 GUI
  3. Ollama 默认只监听本地,必须指定 0.0.0.0
  4. 服务器防火墙 + 云安全组都要放行
  5. 端口冲突、进程复活 99% 是 GUI 导致

十、一句话总结

Mac Ollama + FRP 穿透,不退出 GUI,一切配置都白费!


标签

#FRP #Ollama #公网穿透 #Mac #大模型部署 #FRP0.62.0 #TOML配置 #排障实录


相关推荐
Yupureki1 小时前
《Linux网络编程》5.HTTPS协议
linux·网络·https
网络工程小王2 小时前
【LCEL 链式调用详解】调用篇-2
java·服务器·前端·数据库·人工智能
搬砖的小码农_Sky2 小时前
Linux操作系统:Ubuntu和Debian的区别
linux·ubuntu·debian
江湖有缘2 小时前
基于Ubuntu系统Docker部署Note Mark:从安装到配置全流程
linux·ubuntu·docker
xhbh6663 小时前
路由端口转发常见应用场景有哪些?有什么?
服务器·ip·端口转发·ip地址·流量转发·建站
前端之虎陈随易3 小时前
2年没用Nodejs了,Bun很香
linux·前端·javascript·vue.js·typescript
宁小法3 小时前
Linux批量删除文件
linux·服务器·批量·删除文件
05候补工程师3 小时前
深度解构 ROS 2:如何手动调通 Nav2 A* 路径规划引擎
linux·人工智能·经验分享·算法·机器人
zhangfeng11334 小时前
适合 5人以内小团队的Git 工作流 + Code Review + 自动化部署方案 FastAdmin +linunx服务器宝塔系统 外包项目 —
服务器·git·自动化·php·代码复审
北冥湖畔的燕雀4 小时前
Linux线程编程核心指南
linux·服务器·网络