首页 教程 分类 Skills下载 关于
ZH EN JA KO
高级用法

openclaw dns 发现服务命令教程

· 7 分钟

命令概述

openclaw dns 命令管理 OpenClaw 的服务发现功能。在多节点部署中,服务发现让各个 Gateway 节点可以自动找到彼此,无需手动配置每个节点的地址。

查看服务发现状态

openclaw dns status
DNS Service Discovery:
  Mode: mDNS (local network)
  Status: Active
  This node: gateway-1 (192.168.1.10:3000)

  Discovered nodes:
    gateway-2    192.168.1.11:3000    ● Online    2ms
    gateway-3    192.168.1.12:3000    ● Online    3ms

启用服务发现

mDNS 模式(局域网)

适合同一网络内的多节点部署:

openclaw dns enable --mode mdns

配置:

{
  "dns": {
    "enabled": true,
    "mode": "mdns",
    "serviceName": "openclaw",
    "port": 3000,
    "metadata": {
      "version": "1.2.3",
      "role": "primary"
    }
  }
}

DNS-SD 模式

基于 DNS 服务发现,适合跨网络部署:

{
  "dns": {
    "enabled": true,
    "mode": "dns-sd",
    "domain": "openclaw.local",
    "registryUrl": "https://registry.example.com"
  }
}

Consul 模式

使用 HashiCorp Consul 进行服务发现:

{
  "dns": {
    "enabled": true,
    "mode": "consul",
    "consulUrl": "http://consul.example.com:8500",
    "serviceName": "openclaw-gateway",
    "healthCheckInterval": "10s"
  }
}

注册与注销

# 手动注册当前节点
openclaw dns register

# 注销当前节点
openclaw dns deregister

# 注册时指定元数据
openclaw dns register --meta role=primary --meta region=us-east

发现其他节点

# 列出所有发现的节点
openclaw dns discover
Discovered OpenClaw Nodes:
  Name        Address           Port   Role      Region    Status
  ────────────────────────────────────────────────────────────────
  gateway-1   192.168.1.10     3000   primary   us-east   ● Online
  gateway-2   192.168.1.11     3000   replica   us-east   ● Online
  gateway-3   10.0.0.5         3000   replica   eu-west   ● Online

与负载均衡配合

服务发现可以自动更新负载均衡器的后端列表:

{
  "dns": {
    "loadBalancer": {
      "enabled": true,
      "strategy": "round-robin",
      "healthCheck": {
        "interval": 10000,
        "timeout": 5000,
        "unhealthyThreshold": 3
      }
    }
  }
}

事件监听

# 监听节点变化事件
openclaw dns watch
Watching for node changes...
  [10:30:01] NODE_JOIN    gateway-4  192.168.1.13:3000
  [10:35:22] NODE_LEAVE   gateway-2  192.168.1.11:3000
  [10:35:25] NODE_JOIN    gateway-2  192.168.1.11:3000  (reconnected)

配置自动同步

当发现新节点时自动同步配置:

{
  "dns": {
    "autoSync": {
      "enabled": true,
      "syncConfig": true,
      "syncSecrets": false,
      "primaryNode": "gateway-1"
    }
  }
}

诊断

openclaw dns diagnose
DNS Discovery Diagnostics:
  ✓ mDNS service running
  ✓ Port 5353 available
  ✓ Network interface: eth0 (192.168.1.10)
  ✓ Multicast enabled
  ✓ 2 nodes discovered
  ✓ All nodes healthy

安全配置

{
  "dns": {
    "security": {
      "requireAuth": true,
      "authToken": "{{DNS_AUTH_TOKEN}}",
      "encryptTraffic": true,
      "allowedNetworks": ["192.168.1.0/24", "10.0.0.0/8"]
    }
  }
}

禁用服务发现

openclaw dns disable

总结

openclaw dns 为多节点部署提供了自动化的服务发现能力。无论是局域网内的 mDNS 还是跨网络的 Consul 集成,都能让多个 Gateway 节点自动发现彼此并协同工作,大大降低了分布式部署的运维复杂度。

OpenClaw 是开源免费的个人AI助手,支持 WhatsApp、Telegram、Discord 等多平台接入