平时做技术实践时,很多问题不是概念不会,而是细节没串起来。拿“openclaw允许公网和内网访问的实现方式”来说,它看着像小点,放到项目里常会牵出环境、配置、兼容性和维护成本。下面按实际使用顺序,把思路、关键写法和容易踩坑的地方讲清楚,方便你直接对照操作。
问题原因
理解这一步时,OpenClaw 网关默认只 127.0.0.1:18789(本地回环地址),导致无法借助公网 IP 访问。
排查与修复过程
步骤 1:检查防火墙规则
# 查看防火墙是否放行 18789 端口 openclaw 网关状态检查(通过腾讯云 API 查询)
结果:防火墙已放行 18789 端口
步骤 2:检查 OpenClaw 服务状态
openclaw gateway status
发现:服务运行中,但地址是 127.0.0.1:18789(仅本地)
步骤 3:查看当前网关设置
openclaw config get gateway
输出:
{
"port": 18789,
"mode": "local",
"bind": "loopback", // ← 问题在这里
"controlUi": { ... },
"auth": { ... }
}步骤 4:修改设置允许公网访问
# 将 bind 模式从 loopback 改为 lan(局域网/公网可访问) openclaw config set gateway.bind "lan" # 重启网关服务 openclaw gateway restart
成功提示:
Config overwrite: /root/.openclaw/openclaw.json Updated gateway.bind. Restart the gateway to apply. Restarted systemd service: openclaw-gateway.service
现在可以访问了
请尝试访问:(链接已移除) # 给你分配的公网IP
相关命令速查表
| 命令 | 用途 |
|---|---|
| openclaw gateway status | 查看网关运行状态 |
| openclaw gateway start/stop/restart | 启动/停止/重启网关 |
| openclaw config get gateway | 查看网关设置 |
| openclaw config set gateway.bind “lan” | 设置模式为公网可访问 |
| openclaw config set gateway.port 8080 | 修改端口 |
| openclaw doctor | 诊断设置问题 |
| openclaw logs --follow | 实时查看日志 |
gateway.bind 模式说明
| 模式 | 说明 |
|---|---|
| loopback | 仅本地访问(127.0.0.1) |
| lan | 局域网/公网可访问(0.0.0.0) |
| tailnet | 借助 Tailscale 网络访问 |
| auto | 自动选择 |
| custom | 自定义设置 |
现在您应该能够借助浏览器正常访问 OpenClaw 的 Web 界面了!
实际处理时,总的来说,openclaw公网访问这部分内容适合结合实际项目边做边理解。先抓住核心思路,再逐步补上细节和边界处理,最后效果会更稳定,也更容易复用。

