ipv6动态更新至dynv6服务脚本
注意防火墙规则,如禁用非局域网lan的访问以提升安全
/system script new/add name=dynv6 policy=read,write,policy,test source=以下:
:local hostname "domain name"
:local token "dynv6 token"
:local interface "ether1" ;# "ether1" 或 "pppoe-out1"
# 获取接口的全局 IPv6 地址
:local ipv6addr
:set ipv6addr [/ipv6 address get [find interface=$interface global=yes] address]
# 移除子网掩码部分(如 /64)
:set ipv6addr [:pick $ipv6addr 0 [:find $ipv6addr "/"]]
# 构造 dynv6 API URL
:local url "https://dynv6.com/api/update?hostname=$hostname&token=$token&ipv6=$ipv6addr"
# 使用 /tool fetch 发送请求
/tool fetch url=$url mode=https output=user as-value
:log info "dynv6 update: URL=$url"
定时运行
注意权限一致
/system scheduler new/add interval=60m name=dynv6-updater on-event="/system script run dynv6" policy=read,write,policy,test