找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888广告投放联系QQ68610888
查看: 2792|回复: 2

[openwrt(x86)] ddnspod自动解析ipv6,心得体会

[复制链接]
发表于 2022-4-9 14:02 | 显示全部楼层 |阅读模式
本帖最后由 tudoubocai 于 2022-4-9 14:19 编辑

openwrt x86主路由-j1900双网卡-电信100m-ipv6-dnspod自动更新
……opkg安装了动态dns、腾讯dns、ddnspod,都没法正确获取路由器的ipv6,已经折腾了2周。有一种想要放弃的感觉。


由于使用最广泛的dnspod.sh--https://github.com/rehiy/dnspod-shell 不能(或许是我没找到)指定网卡,导致脚本没法从我的路由器上正确获取公网ipv6。
突然想起以前用过的脚步和上面这个不太一样,于是多方查找之后,最终让我找到了ddnspod.sh最古老的版本进化版--https://gitcode.net/mirrors/imki911/ardnspod

这个脚本可以自己指定网卡/虚拟网卡,轻松自动获取到正确的ipv6

新手操作:老鸟不需要看这个,浪费时间。
https://gitcode.net/mirrors/imki911/ardnspod克隆脚本,我选了zip格式,其它也可以,看个人爱好
下载好的zip解压得到ardnspod-master文件夹
修改里面的dns.conf文件
按`TokenID,Token`格式填写自己的artoken
arToken="12345,7676f344eaeaea9074c123451234512d"

按这个格式填入域名
# 每行一个域名
arDdnsCheck "test.org" "subdomain"

…………组合起来的域名是subdomain.test.org这种形式

修改ddnspod.sh
#Please select IP type
IPtype=3  #1.WAN 2.LAN 3.IPv6 4.Local-WAN

……3代表ipv6。

大概在第66行
ip addr show dev pppoe-wan | sed -e's/^.*inet
##pppoe-wan是我的路由器有公网ipv6的网卡,你的是啥就改成啥

……………………
改好后,把文件夹下的dns.conf、dns.conf.example、ddnspod.sh这三个文件用scp命令上传到路由器
终端ssh登录路由器
scp /root/ardnspod-master/dns.config root@192.168.1.1:/root/scp /root/ardnspod-master/ddnspod.sh root@192.168.1.1:/root/
scp /root/ardnspod-master/dns.config.example root@192.168.1.1:/root/
##说明
##1、scp后面的/root是电脑上ardnspod-master文件夹的位置,改成你自己的。
##2、192.168.1.1是你的路由器的ip地址
##3、最后面的/root是路由器上脚本的存放位置,推荐/root下,方便以后查找和管理。
##4、每条命令后,都需要输入路由器ssh的密码。
上传完成后

电脑打开dnspod的控制台,新建一个AAAA的解析,域名就是设置到dns.conf文件里面的。

ssh登录到路由器,执行./ddnspod.sh就能更新dnspod上的解析地址了。等几分钟就能域名访问路由器。
##如果域名打不开路由器管理界面,很可能是你的宽带封了80、443端口。可以尝试其他业务打开的端口来确认。

打开openwrt的web管理
以次点开系统-计划任务
在末尾填入
*/20 * * * * /root/ddnspod.sh
保存
##代码意思是每隔20分钟执行一次/root目录下的ddnspod.sh脚本(如果你改变了文件存放的目录,请做相应的修改)。这样就算路由器重启获取了新的ipv6,也能在20分钟后重新获得正确的解析。
最好是重启一下路由器

完成!

………………………………………………………………
作者的readme.md

# ArDNSPod

基于DNSPod用户API实现的纯Shell动态域名客户端,适配网卡地址。

# Usage

[详细介绍使用方法的博文](https://blog.csdn.net/Imkiimki/article/details/83794355)(老鸟请略过)

首先要在dnspod网页上新建解析记录,然后获得api token。  
复制`dns.conf.example`到同一目录下的`dns.conf`并根据你的配置修。  
在 `ddnspod.sh` 文件开头修改要解析的ip类型(ipv4/ipv6)   
执行时直接运行`ddnspod.sh`,支持cron任务。

++++++++大概再第66行,改eth0为路由器/电脑中获取到ipv6的网卡名称,可以是虚拟网卡如pppoe+++++++

配置文件格式:

```
# 安全起见,不推荐使用密码认证
# arMail="test@gmail.com"
# arPass="123"
(现在dnspod已经完全废除密码认证的方式了)

# 推荐使用Token认证
# 按`TokenID,Token`格式填写
arToken="12345,7676f344eaeaea9074c123451234512d"

# 每行一个域名
arDdnsCheck "test.org" "subdomain"
```
如需使用Local-WAN模式,请安装miniupnpc
```
# debian/ubuntu setup:
# sudo apt-get install miniupnpc
```

# 最近更新

2015/2/24

- 增加token鉴权方式 (by wbchn)

2015/7/7

- 使用D+服务获取域名解析

2016/2/25

- 增加配置文件,分离脚本与配置,适配内网。
- 加入Mac支持
- sed脚本POSIX化,可跨平台

2016/3/23

- 进一步POSIX化,支持Mac和大部分Linux发行版
- 更改配置文件格式

------forked from origin-----

2018-11-07

- 支持选择IP地址类型,包括外网/内网/IPv6

2019-05-24

- 支持IPV6(如你所料,之前所说的支持是假的)
- 根据网站的更新,api调用使用TLS v1.2,解决了之前调用失败的问题(感谢@lth410 指出)。

2020-01-03
- 修复了12月31日由于 dnspod API 改动导致的失效。

2020-01-09
- API返回格式又变了,更改正则表达匹配。

2021-06-06
- 支持Local-WAN模式:Local-WAN是指路由器作为一个大局域网的子网,某些场景下需要获取当前路由器的WAN IP,这些WAN IP一般仍然是一个子网IP

# Credit

Original: anrip
Forked form anrip/ArDNSPod



只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2022-5-6 23:30 | 显示全部楼层
看看看看看
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2022-7-30 11:56 | 显示全部楼层
爱快的设置不生效一般是问题哪里
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-11-1 09:05

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

快速回复 返回顶部 返回列表