Files
Hermes-Skills/okx-auto-position/references/mihomo-clash-node-supplier-dns-2026-07-21.md
T
mike b660debd06 v2026-07-21: 实战教训汇总 (push 11 文件)
新增 8 reference:
  - dividend-stability-score: A 股 5 维评分 (派息年数/CAGR/波动/最近/连续) → 0-100 分 + 5 星
  - dividend-yield-rate-sort: 按股息率% 倒序 (用户偏好 2026-07-13)
  - longport-http-module: longport_http.py 公共模块 (替代 SDK WSS)
  - leverage-pass-through-bug: process_signal.py 丢失 leverage 字段 (5x 实际 10x)
  - follow-trading-iron-laws: 跟单铁律 (用户原话 5+ 次 2026-07-21)
  - forced-skill-entry-okx-trade: okx_trade.sh 强制入口 (替代 ccxt 裸调)
  - mihomo-clash-node-supplier-dns: Clash 节点供应商 DNS 失败处理
  - mihomo-ssl-reconnect-pattern: mihomo 反复 SSL/Timeout 模式
  - v4.5.44-mu-add-to-75pct-cap: MU 加仓 75% 单币种 cap 标准流程

改 2 SKILL.md:
  - dividend-investing: 加 5 维评分 + 长桥 http 模块
  - longbridge-cli: 标注 '不要写 openapi.QuoteContext' + 迁移说明
2026-07-22 13:22:45 +08:00

3.4 KiB

Clash 节点供应商 DNS 解析失败处理 (2026-07-21 实测)

问题场景: mihomo 反复 timeout,但订阅没动,所有节点都连不上。

根因 (实测): 节点供应商的多个域名 DNS 解析返回乱码:

ns1.accor.co.im    → IP: sdaf.rezg.6tie.a.rros.cc.        # 不是 IP
ns1.mercure.zone   → IP: sdaf.rezg.6tie.a.rros.cc.        # 同上,同一 IP
ns1.accor.zone     → IP: hhaq.wwcm.bukx.a.vvps.xyz.      # 也不是 IP
01-synexvm-hk-std.node-ddns.top → IP: 42.200.173.113       # 真 IP, 但 TCP 也 timeout

两个原因叠加:

  1. 节点供应商的 DDNS 域名过期 / 被 DNS 污染 → DNS 返乱码
  2. mihomo 选 select 类型 selector → 不会自动跳死的节点,会反复 retry timeout

诊断步骤 (5 秒内):

# 1. 看 mihomo 还在不在
pgrep mihomo

# 2. 看端口监听
ss -tlnp | grep -E ":7890|:9090"

# 3. 看 mihomo 日志最后几行
tail -10 /tmp/mihomo.log

# 4. 测各节点 DNS + TCP 连通
for dom in ns1.accor.co.im ns1.mercure.zone ns1.accor.zone 01-synexvm-hk-std.node-ddns.top; do
    ip=$(timeout 5 dig +short $dom 2>&1 | head -1)
    echo "$dom → IP: $ip"
    # 正常 IP 应该是 x.x.x.x
done

# 5. 测 TCP 连通 (只对有真 IP 的)
timeout 3 bash -c "echo > /dev/tcp/42.200.173.113/443" 2>&1 && echo "OK" || echo "timeout"

# 6. 确认节点供应商死,不是本地网络问题
#    → 手工跑一次订阅更新 (重新拉节点列表)
timeout 30 bash ~/clash/update-sub.sh

修复方案:

1. 短期(等供应商修)

  • 不要重启 mihomo(浪费 CPU, 也救不了)
  • 换 selector type 从 selectfallback(自动跳死的)
  • 手动重启 mihomo 看新订阅是否还包含相同节点

2. 改 BiXin Network selector 为 fallback(实测有效)

~/clash/config/config.yaml:

# 改 select → fallback, 排序好的节点放前面
proxy-groups:
  - { name: BiXin Network, type: fallback, url: 'http://cp.cloudflare.com/generate_204', interval: 300, proxies: ['🇭🇰 [Lv2] 香港 02', '🇭🇰 [Lv1] 香港 02', '🇭🇰 [Lv2] 香港 01', '🇭🇰 [Lv2] 香港 03', '🇨🇳 [Lv2] 台湾 01', '🇨🇳 [Lv2] 台湾 02', '🇨🇳 [Lv2] 台湾 03', '🇺🇸 [Lv2] 美国 01', '🇺🇸 [Lv2] 美国 02', '🇺🇸 [Lv2] 美国 03', 'Lv2 节点已经全部过时', 请前往官网下载最新版软件, 官网www.bixiny.org] }

关键参数:

  • type: fallback(不是 select 也不是 url-test)—— fallback 按顺序试,死节点自动跳到下一个
  • interval: 300(5 分钟重测,比 url-test 24h 短)—— 死的能被快速跳过
  • 排序: 已知最稳的节点放前(可先用 curl 测一遍每个)

3. 长期

  • 换订阅源: bxy.re 节点供应商问题多,换其他
  • 自建节点: 买个 VPS 跑 SS/VLESS/WireGuard(mihomo 内置支持,见 references/wireguard-outbound-setup.md 如果有)
  • 加多源备份: config.yaml 加 proxy-providers: 多源,某个源挂了自动切

实战教训 (2026-07-21):

  • mihomo timeout 第一次出现时,不应该 restart,应该先 dig +short 查 DNS
  • select 类型 selector 是反模式,永远用 fallbackurl-test (短 interval)
  • 节点供应商的 4 个域名中 3 个 DNS 失败 — 这是节点供应商的"硬挂"标志, 换订阅源才是治本

对 cron 影响:

  • bdf27f3d76f8 Clash 订阅自动更新 (每 2h) — 拉得到,但节点列表没变(订阅源死)
  • 不会自动恢复,需要手动换订阅源