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配置 #排障实录


相关推荐
A小辣椒1 天前
TShark:Wireshark CLI 功能
linux
A小辣椒1 天前
TShark:基础知识
linux
AlfredZhao1 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao2 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334662 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux
猪脚踏浪2 天前
linux 拷贝文件或目录到指定的位置
linux
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
bush43 天前
嵌入式linux学习记录十四、术语
linux·嵌入式
载数而行5203 天前
Linux 11 动态监控指令top
linux