linux 下 dynv6 更新 ddns 域名对应ip

基本原理:

1.通过 某些网站提供 的api 返回 公网ip

2.与 本地文件 记录的 上次 ip 对照,如果相同,结束;如果不同 使用 dynv6 提供的api进行更新

3.将上述逻辑写成脚本,利用 Linux 定时任务crontab 定时执行

脚本:

根据以上原理,可以自己编写shell脚本,dynv6 官网也提供了一个,但是需要进行调整,因为如果接路由,通过 ip 命令只能获取本机ip不能获取公网IP,

即把 第19行 address=$(ip -6 addr list scope global $device | grep -v " fd" | sed -n 's/.*inet6 \([0-9a-f:]\+\).*/\1/p' | head -n 1)

改为 address=$(curl http://www.pubyun.com/dyndns/getip)

只用ipv4地址的话,注释掉 46行 $bin "http://dynv6.com/api/update?hostname=$hostname&ipv6=$current&token=$token"

 

官网脚本地址:Update script for dynv6.com to set your IPv4 address and IPv6 prefix · GitHub

使用命令 token=WCWVa5yaDxchphnx7AgTn1wEfNL6Dw ./dynv6.sh example.dynv6.net

 

其他参考文章:

1.用dig 解析域名ip 获取旧ip,比用文件更加严谨,防止被人篡改,导致无法更新:DDNS脚本dynv6更新ipv4精简脚本_闲书屋的博客-CSDN博客_dynv6 ipv4

posted @   dirgo  阅读(1092)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
历史上的今天:
2016-02-13 [转]Hibernate查询对象所有字段,单个字段 ,几个字段取值的问题
点击右上角即可分享
微信分享提示