openwrt通过IPV6进行DDNS

目前几大营运商,基本都提供IPV6公网地址了,传统的内网穿透等方法相对比较麻烦。

本文针对移动大内网,分享DDNS最简单方法。
第一步:meibu.com注册账号,获得二级域名一个及密码备用。
第二步:新建 ddns.sh 脚本,复制以下代码,然后注意修改 xxxxxx.msns.cn为申请的二级域名,pwd=密码,保存。

 

#!/bin/sh

# 获取当前文件目录
dir=$(cd $(dirname $0); pwd)

# ip.txt用来保存IP地址,如果IP地址没有发生变化,则不进行地址更新,重复提交地址更新官方会封号。
iptxt="$dir""/ip.txt"

# 获取IPv6地址
ip=$(ip -6 addr list scope global $device | grep -v " fd" | sed -n 's/.*inet6 \([0-9a-f:]\+\).*/\1/p' | head -n 1)
if [ "${ip:-none}" == "none" ]
then
  echo "[ddns] 获取IP错误!"
  exit 12
fi

if [ -f $iptxt ]
then
  oldip=$(tail -n 1 $iptxt)
else
  oldip="::"
fi

# 与ip.txt中的IP地址对比,如果一致,则退出;如果不一致,则将新IP写入ip.txt文件中,并提交动态域名更新。
if [ "$ip" == "$oldip" ]
then
  echo "[ddns] IP无变化!"
  exit 0
fi

# 将变化的ip地址写入ip.txt
echo $ip > $iptxt

# 更新动态域名IP地址,xxxxxx.msns.cn为申请的域名,“pwd=”后面为密码
url="http://www.meibu.com/ipv6zdz.asp?ipv6=${ip}&name=xxxxxx.msns.cn&pwd=xxxxxx"
re=`curl -s $url`
echo "[ddns] 更新域名成功!"

第三步:SecureFX下在/root/下直接新建文件夹ddns,然后把ddns.sh复制进去。当然路径也可以自己设定。
第四步:openwrt后台计划任务添加定时执行,设定为每1分钟获取一次IPV6地址,并在文件夹生成IP.txt,以后每次获取IP对比该txt,如未发生变化则结束。如发生变化则更新。

* * * * * /root/ddns/ddns.sh

到这来基本就完事了,初次添加计划任务后,可能需要等待数分钟才可以通过二级域名访问。也可以直接在ssh执行一次脚本,手动更新一次。

-> 加入科技玩家交流群组:点击加入 注意:
1.文中二维码和链接可能带有邀请性质,请各位玩家自行抉择。
2.请勿通过链接填写qq号与密码、银行卡号与密码等个人隐私信息。
3.禁止纯拉人头,拉app注册等信息,发现必小黑屋。
4.同一种信息仅发一次,多发会被删除。
5.文章中源码或APP等,无法保证其绝对安全,需自行辨别。
6.文章关联方不想展示也可以微信站长“socutesheep”删除。
本文由 @时间煮雨我煮屎 发布。如若转载,请注明出处: 科技玩家 » openwrt通过IPV6进行DDNS

给TA买糖
共{{data.count}}人
人已买糖
教程玩家投稿

华为悦盒EC6108V9C刷机

2022-11-15 17:55:29

教程玩家投稿精选文章

N1盒子从刷机到跑青龙

2022-11-23 0:55:36

8 条回复 A文章作者 M管理员
贴心提醒
请认真对待作者付出,勿发表无意义言论,触发过滤规则的评论将无法提交,包含敏感词的评论会自动变成待审核状态哦。
  1. 小天1070

    感谢分享

  2. 𐃍

    打卡升级

  3. 幻念

    感谢分享,让我好好学习一下

  4. coolice

    打卡升级

  5. coolice

    打卡升级感谢分享

  6. 亦云

    打卡升级

  7. coolice

    很实用啊,谢谢分享

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索