命令概述
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 节点自动发现彼此并协同工作,大大降低了分布式部署的运维复杂度。