|
本帖最后由 mantouboji 于 2024-3-2 13:40 编辑
可以挂在pppoe profile的On Up后面,拨号后同时更行dynv6.net、duckdns.org、ipv64.net 上的动态域名。
同时更新IPv4和IPv6地址。
你可以按照自己的需要去掉你不需要的动态域名供应商语句。
按照你自己的情况修改脚本里面几个大写字母的参数哦。
- :local theinterface "pppoe-out1"
- #dynv6
- :local token YOUR_DYNV6_TOKEN
- :local ddnshost YOUR_DYNV6_HOSTNAME
- #duckdns
- :local ducktoken YOUR_DUCKDNS_TOKEN
- :local duckhost YOUR_DUCKDNS_HOSTNAME
- #ipv64
- :local ipv64token YOUR_IPV64_TOKEN
- :local ipv64host YOUR_IPV64_HOSTNAME
- # IPv4
- :local test [ /ip address get [/ip address find interface=$theinterface ] address ]
- :local ipv4 [ :pick $test 0 [find $test "/"]]
- #IPv6
- :set test [/ipv6/address get [:pick [find global interface=$theinterface ] 0 ] address]
- :local ipv6 [:pick $test 0 [:find $test "/"]]
- :if ( ([ :typeof $ipv6 ] = nil ) \
- || ( $ipv6 = "::1" ) \
- ) do={
- :log info ("DynDNS: IPv6 no change or No ip address on $theinterface .")
- } else={
- #ipv64.net
- :local str1 "key=$ipv64token&host=$ipv64host&ip=$ipv4&ip6=$ipv6"
- :local t2 ([/tool/fetch url="https://ipv64.net/nic/update?$str1" as-value output=user]->"data")
- #ducknds
- :set str1 "domains=$duckhost&token=$ducktoken&ip=$ipv4&ipv6=$ipv6"
- :local t3 ([/tool fetch url="https://www.duckdns.org/update?$str1" as-value output=user]->"data")
- #dynv6.net
- :set str1 "zone=$ddnshost&ipv4=$ipv4&ipv6=$ipv6&token=$token"
- :local t1 ([/tool fetch url="https://dynv6.com/api/update?$str1" as-value output=user]->"data")
- :local logstr "DynDNS: IP updated to $ipv4 and $ipv6!, dynv6: $t1, ipv64: $t2, duckdns: $t3"
- :log info $logstr
- }
复制代码
|
|