OpenClaw 配对时 Bot 没反应,日志报错:TypeError: fetch failed。
根因:IPv6 慢回退问题
用 curl -v https://api.telegram.org 测试发现:curl 先连 IPv6 失败,然后才回退到 IPv4 成功。
Node.js v17+ 的原生 fetch (undici) 对 IPv6 处理比较死板。如果 DNS 返回了 IPv6 但实际不通,它可能直接报错而不会像 curl 那样自动回退,导致请求挂掉。
解决方案
强制 Node.js 优先解析 IPv4。
1. 修改 systemd 配置
找到服务文件(如 ~/.config/systemd/user/openclaw-gateway.service),在 [Service] 段落添加环境变量:
[Service]
Environment="NODE_OPTIONS=--dns-result-order=ipv4first"2. 重启生效
systemctl --user daemon-reload
systemctl --user restart openclaw-gateway3. 临时测试
NODE_OPTIONS="--dns-result-order=ipv4first" openclaw start修改后,原本卡住的 Bot 配对请求即可正常响应。