收起左侧

利用定时任务更新dynv6的ipv6 DDNS

0
回复
260
查看
[ 复制链接 ]

2

主题

1

回帖

0

牛值

江湖小虾

2025-5-16 14:56:20 显示全部楼层 阅读模式

准备工作,注册dynv6账号(免费),新增一个免费二级域名

https://dynv6.com/

步骤 1:安装必要工具(飞牛可跳过)

--首先确保系统已安装 curl 和 cron:

sudo apt update

sudo apt install curl cron -y

步骤 2:创建更新脚本

--创建一个用于更新 Dynv6 的脚本文件:

sudo nano /usr/local/bin/dynv6-update.sh

--添加以下内容(替换 YOUR_DOMAIN 和 YOUR_TOKEN):

#!/bin/bash

# Dynv6 IPv6 DDNS 更新脚本

DOMAIN="YOUR_DOMAIN.dynv6.net" # 你的域名

TOKEN="YOUR_TOKEN" # Dynv6账户的API Token (instructions页面的password)

LOG_FILE="/var/log/dynv6.log" # 日志文件路径

# 获取当前IPv6地址(通过icanhazip服务)

CURRENT_IPV6=$(curl -s -6 https://icanhazip.com)

# 检查是否成功获取

IPv6if [ -z "$CURRENT_IPV6" ]; then

echo "$(date): 获取IPv6失败" >> "获取失败(date):获取IPv6失败">>"$LOG_FILE"

exit 1

fi

# 更新Dynv6记录

RESPONSE=$(curl -s "https://dynv6.com/api/update?hostname=$DOMAIN&token=$TOKEN&ipv6=$CURRENT_IPV6&ipv6prefix=auto")

# 记录更新结果

echo "$(date): IP=$CURRENT_IPV6, 响应=$RESPONSE" >> "$LOG_FILE"

保存并退出(按 Ctrl+X,然后按 Y 和 Enter)。

步骤 3:设置脚本权限

--确保脚本可执行:

sudo chmod +x /usr/local/bin/dynv6-update.sh

步骤 4:配置定时任务(Cron)

--编辑系统级 cron 表:

sudo crontab -e

--在文件末尾添加以下行(每小时执行一次):

0 * * * * /usr/local/bin/dynv6-update.sh

保存并退出。

步骤 5:验证配置

--手动执行一次脚本,检查是否正常工作:

/usr/local/bin/dynv6-update.sh

--查看日志确认更新结果:

cat /var/log/dynv6.log

通过以上配置,系统将自动定期更新 Dynv6 的 IPv6 地址,确保 DDNS 记录始终指向最新的公网 IPv6。后续只需要在路由器上开放相关端口,即可在外网访问飞牛系统及相关服务。

收藏
送赞
分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则