Agent Skills
返回列表
公网 IP 监测

公网 IP 监测

IT 运维与安全 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_355a2d67/public-ip-watch。

技能介绍

解决动态公网 IP 变更带来的运维盲区

在家庭宽带或中小企业网络中,公网 IP 往往不是静态分配的。当网络重启、运营商重新拨号或发生未知断网恢复时,出口公网 IP 很可能已经悄悄改变。这不仅会导致基于 IP 白名单的 SSH 访问、API 限流或云服务安全组拦截失效,还会让运维人员在排查连接超时问题时摸不着头脑。手动执行 curl ifconfig.me 虽然简单,但无法自动记录历史变更轨迹,也难以直接集成到自动化巡检脚本中。

核心机制与执行流程

该技能通过无状态的定时触发或自然语言指令(如“检查公网 IP 是否变化”)运行,核心逻辑围绕本地缓存文件 ~/.public_ip_cache.json 展开:

  • IP 探测与提取:按优先级请求第三方公共服务获取当前出口 IP,自动过滤无效返回,并提取纯 IP 字符串。
  • 状态比对:读取本地 JSON 缓存。若文件不存在则判定为首次检测;若存在,则将新获取的 IP 与缓存中的 ip 字段进行严格比对。
  • 告警与缓存刷新:若 IP 发生变更,输出带有 ⚠️ 标识的醒目提示,指出旧 IP 与新 IP;若未变更则静默确认。无论结果如何,均将最新 IP 与 ISO 8601 格式的时间戳写入缓存文件。
  • 运维建议联动:在检测到 IP 变更时,主动提示用户检查依赖该 IP 的下游服务(如域名解析、防火墙白名单等)。

适用边界与注意事项

此技能适用于出口 IP 可能发生变动的边缘网络环境,但它本身不提供 IP 绑定或 DDNS 自动更新功能。它仅作为“感知层”工具,负责发现变更并发出通知。此外,依赖第三方公共服务获取 IP 时,需确保执行环境的出网策略未阻断这些特定域名;若所有探测服务均失效,技能将无法获取有效 IP。最后,缓存文件仅存储在本地,多机部署时需注意各自维护独立的缓存状态。

使用场景

  • 用户问「看看我的公网 IP 是多少」时,直接返回当前出口地址
  • 用户说「检查一下我的公网 IP 变了没有」时,对比缓存并明确告知是否变更
  • 网络断开又恢复后,需要快速确认出口 IP 是否因重新拨号而改变
  • 自动化定时任务每天执行一次,用于持续监控出口 IP 的变动情况

适合人员

  • 在家宽带没有固定公网 IP 的玩家,需要在网络重启后确认出口地址是否变动
  • 依赖 IP 白名单做 SSH 访问的运维工程师,需要在出口 IP 变更时及时更新防火墙策略
  • 在个人服务器上部署定时巡检脚本的开发者,需要自动记录公网 IP 的变更时间
  • 远程办公且公司网络频繁切换出口 IP 的员工,需要在网络恢复后确认当前公网地址