360 Secure SkillHub
360 安全技能中心

get-public-ip

通过命令行调用外部 IP 查询节点检测本机公网出口 IP:优先尝试国内节点,失败后回退国际节点,单节点 5 秒超时、总超时 20 秒,并对结果做 IP 格式校验。声称零外部依赖,Windows 使用 PowerShell,macOS/Linux 使用 curl。

regexl
regexl
热度 29.33
最近更新 2026-05-11 17:47:56
分类:自动化依赖:代码执行 / 第三方 API应用场景:自动化脚本 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add get-public-ip
Metadata
name
get-public-ip
description
检测公网出口 IP,支持国内和国际网络环境,自动切换最优节点,超时保护,秒级完成。
emoji
🌐
openclaw
{"version":">=2026.1"}
tags
["network","utility","ip-check","windows","cross-platform"]

get-public-ip

检测本机公网出口 IP,兼容国内/国际网络环境,自动选择最快节点。

功能

  • ✅ 自动识别网络环境,优先使用国内节点(更快)
  • ✅ 多节点自动 fallback,确保高可用性
  • ✅ 超时保护(单节点最多 5 秒)
  • ✅ IP 格式验证,结果可信
  • ✅ 纯系统命令执行,不耗 LLM token
  • ✅ 零外部依赖

触发方式

直接说或写中文即可:

  • "获取公网IP"
  • "我的IP是多少"
  • "检查出口IP"

国内节点(优先,延迟 150~700ms)

节点 地址 延迟
ipip.net https://myip.ipip.net ~157ms
ip.sb https://ip.sb ~680ms
icanhazip https://icanhazip.com ~580ms

国际节点(fallback,延迟 500~900ms)

节点 地址 延迟
httpbin https://httpbin.org/ip ~890ms

输出格式

成功:

当前公网IP:171.83.108.245 | 来源:ip.sb | 耗时:681ms

失败:

❌ 无法获取公网IP,请检查网络连接

执行逻辑

当收到获取 IP 请求时,用 PowerShell 执行以下逻辑(Windows 直接调用,macOS/Linux 用 curl):

国内节点优先

依次尝试:

  1. https://ip.sb - 提取纯文本 IP,格式验证
  2. https://myip.ipip.net - 提取 当前 IP:xxx 中的 IP
  3. https://icanhazip.com - 提取纯文本 IP

国际节点兜底

国内全失败时尝试: 4. https://httpbin.org/ip - 解析 JSON 中的 origin

每个节点最多 5 秒超时,任一成功立即返回。

超时保护

每个节点最多 5 秒,全节点总超时 20 秒。远超即判定失败。

依赖

无外部依赖。Windows 使用内置 Invoke-WebRequest,macOS/Linux 使用 curl。

设计原则

  1. 不调用 LLM:纯命令执行,毫秒级响应
  2. 结果可验证:IP 格式正则验证,假 IP 不返回
  3. 多节点兜底:任一节点可用即成功,不依赖单一服务
  4. 国内优先:国内节点比国际快 3~5 倍