动态IP家宽,自动检测IP(IPv4)变化情况,并使用Telegram Bot自动上传IPQuality脚本测试结果(png图片)

该脚本可以检测IP的变化情况,如果IP发生变化,则自动执行IPQuality脚本,并通过Telegram Bot通知,并上传IPQuality的测试结果(以PNG图片的形式)

Github仓库

Github仓库地址:https://github.com/Z1rconium/Auto-DynamicIP

功能特点

  • 多源 IP 检测:轮询多个可靠的 API(如 ip.sb, icanhazip.com 等)获取当前公网 IP,确保稳定性。
  • IP 变更监控:自动记录上一次的 IP,仅在 IP 发生变化时触发后续操作。
  • 自动质量检测:集成 IP.Check.Place 脚本,自动进行 IP 质量评估(包含 -E 增强模式)。
  • 生成图片报告:利用 ansilove 将终端的 ANSI 输出转换为高质量的 PNG 图片。
  • Telegram 通知:将变更详情(新旧 IP、时间)及生成的报告图片发送到指定的 Telegram Chat。
  • 日志记录:详细记录检测过程、错误信息及发送状态到日志文件。
  • 自动清理:发送成功后自动清理生成的临时图片。

依赖

除了IPQuality脚本本身需要的依赖,该脚本还需要额外的ansilove的依赖。这也是本脚本的核心依赖,用于将 ANSI 文本转换为 PNG 图片。

完成依赖如下:
curl (用于网络请求)、bash (脚本解释器)、ansilove (核心依赖:用于将 ANSI 文本转换为 PNG 图片)和grep, sed, awk (标准文本处理工具)

建议在运行脚本前将以上的依赖全部安装完成!!!

使用(详见README.md)

使用wget将脚本下载到VPS本地即可。有以下参数需要修改:

  1. Telegram Bot 配置
  2. 文件路径配置
  3. 配置Telegram发送信息的细节
   # Telegram Bot 配置
   TG_BOT_TOKEN="你的_BOT_TOKEN"    # 从 @BotFather 获取
   TG_CHAT_ID="你的_CHAT_ID"        # 接收消息的用户 ID 或群组 ID

   # 文件路径配置
   IP_LOG_FILE="/root/.current_ip_log"  # 用于记录当前 IP 的文件路径
   IMAGE_DIR="/root"                    # 图片生成的目录
   LOG_FILE="/var/log/ip_monitor.log"   # 日志文件路径

注意:请确保脚本对配置的目录(如 /root 或 /var/log)拥有写入权限。如果是普通用户运行,建议修改为用户目录下的路径(例如 ~/ip_monitor.log)。

    # 配置Telegram发送信息的细节
    RESPONSE=$(curl -s -X POST "https://api.telegram.org/bot$TG_BOT_TOKEN/sendPhoto" \
            -F chat_id="$TG_CHAT_ID" \
            -F caption="🚨 **XXXX 家宽 IP 地址已变更**\n新 IP: \`$CURRENT_IP\`\n旧 IP: \`$LAST_IP\`\n时间: $(date '+%Y-%m-%d %H:%M:%S')\n参数: \`-4 -E\`" \
            -F parse_mode="Markdown" \
            -F photo="@$LATEST_PNG")

如果你还不知道如何获取Telegram Bot API和Chat ID,详见下面这个教程:https://www.boyy.org/notebook/mark/141118.html

手动运行

直接运行脚本进行测试:

./monitor_ip.sh

如果是首次运行(或没有历史记录),它会记录当前 IP。如果此时再次运行且 IP 未变,脚本将静默退出。

定时任务 (Cron)

建议将脚本加入 crontab 实现自动化监控。例如每 5 分钟检测一次:

  1. 编辑 crontab:
    crontab -e
  2. 添加如下行:
    */5 * * * * /path/to/monitor_ip.sh

原创文章,作者:mantou,如若转载,请注明出处:https://v2ez.com/1610.html

(0)
mantoumantou
上一篇 2026年1月27日
下一篇 2023年5月28日

相关推荐

发表回复

登录后才能评论