dynv6 IPv6更新,Linux Shell脚本读取IPv6

家里原来用长城宽带,运营商好说话,给我申请了个公网IP,用来架设私有云,搞个花生壳动态域名就行了。
最近由于搬家,新地方没有长城宽带,只能换用移动宽带了,移动不肯给公网IP,只有大内网IP,好在移动支持IPv6,赶紧去dynv6.com申请了个域名,然后,他们推荐用ddclient来更新,可是我电脑ddclient老是报无法解析IP的错误,最后实在没办法,自己写个脚本来更新。现分享给大家。

写个更新脚本

cat /usr/bin/ddns.dynv6.sh

#!/bin/sh
export PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
ipv6=$(ifconfig wlp3s0 | grep 'inet6 2409' | awk '{print $2}' | head -1)
## ------------ openwrt --------------
#ipv6=$(ifconfig pppoe-wan| grep ' 2408' | awk '{print $3}' | sed 's/\/64//')
wget --no-check-certificate -q -O dynv6.log 'http://dynv6.com/api/update?hostname=<你的域名>&token=<你的令牌>&ipv6='$ipv6'&ipv6prefix='$ipv6
##路由器:
ifconfig pppoe-wan | grep 'inet6 addr: 2408' | awk -F '/' '{print $1}' | awk '{print $3}' | head -1

其中,wlp3s0 是我的网卡名,要换成你自己的网卡名。2409是你的IPv6的前缀,我移动的是2409,这个主要是为了防止读错了,读成局域网IP了。

变成可执行

chmod +x /usr/bin/ddns.dynv6.sh

开机自动执行

在/etc/rc.local加入一行:
/usr/bin/ddns.dynv6.sh

这样每次电脑开机,都能把新的IPv6更新到dynv6,然后就用你的域名可以直接访问私有云了。

定时任务

如果你用的是无线网卡,一般启动时,可能无线网卡还没来得及连接,更新IP就会失败。所以,建议放在crontab中:

sudo crontab -l


*/10 * * * * /usr/bin/ddns.dynv6.sh

每10分钟更新一次。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值