找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 2754|回复: 37

[Router OS] 请问ros下的dynv6的ddns脚本怎么写呢?

[复制链接]
请问ros下的dynv6的ddns脚本怎么写呢?在网上找了几个都是不更新ip
我的恩山、我的无线 The best wifi forum is right here.
本帖最后由 superzjg 于 2023-5-12 07:41 编辑

先 域名检测,地址不一致就用下面update:

http://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv4=<ipaddr>
http://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv6=<ip6addr>
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

我用这个成功的,请根据自己的配置修改。
:local hostname "adblockplusv.dynv6.net"
:local token "sswbb55KF-pByWXvJ2Z8r7dhMvaifz"
:local IPV4 [/ip address get [/ip address find interface=pppoe-out1] address]
:set IPV4 [:pick $IPV4 0 ([len $IPV4] -3)]
:if ([:resolve $hostname server=1.1.1.1] != $IPV4) do={
  /tool fetch url="https://dynv6.com/api/update?hostname=$hostname&token=$token&ipv4=$IPV4" mode=https keep-result=no
  :log info "IPV4 Update: $hostname - $IPV4"
}

点评

这个脚本我试了,不更新ip  详情 回复 发表于 2023-5-12 08:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
sailor0908 发表于 2023-5-12 08:27
我用这个成功的,请根据自己的配置修改。
:local hostname "adblockplusv.dynv6.net"
:local token "sswbb5 ...

这个脚本我试了,不更新ip
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

dynv6只支持ipv6地址吧?如果能执行shell脚本,可以参考下我的帖子

点评

dynv6支持ipv4的,就是找不到合适的脚本  详情 回复 发表于 2023-5-12 08:48
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
aming.ou 发表于 2023-5-12 08:45
dynv6只支持ipv6地址吧?如果能执行shell脚本,可以参考下我的帖子

dynv6支持ipv4的,就是找不到合适的脚本
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

dynv6官网提供了脚本范例,可以直接使用,设置crontab定时执行就行,二楼也给出了最简单的更新方法,如果你设置每小时强制更新一次(这个频次,应该不会被封号),可以跳过地址是否改变的检测,替换下面命令中<??>的内容为你自己的,
wget -q -O- http://dynv6.com/api/update?hostname=<domain>&token=<username>&ipv4=auto

点评

dynv6官网提供的脚本在ros上用不了,能帮忙修改下吗,谢谢。我的脚本是这样的 :local hostname "XXX" :local token "XXX" :local IPV4 [/ip address get [/ip address find interface=pppoe-out1] address] :set IPV  详情 回复 发表于 2023-5-12 09:02
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
aming.ou 发表于 2023-5-12 08:56
dynv6官网提供了脚本范例,可以直接使用,设置crontab定时执行就行,二楼也给出了最简单的更新方法,如果你 ...

dynv6官网提供的脚本在ros上用不了,能帮忙修改下吗,谢谢。我的脚本是这样的
:local hostname "XXX"
:local token "XXX"
:local IPV4 [/ip address get [/ip address find interface=pppoe-out1] address]
:set IPV4 [:pick $IPV4 0 ([len $IPV4] -3)]
:if ([:resolve $hostname server=1.1.1.1] != $IPV4) do={
  /tool fetch url="https://dynv6.com/api/update?hostname=$hostname&token=$token&ipv4=$IPV4" mode=https keep-result=no
  :log info "IPV4 Update: $hostname - $IPV4"
}
点评
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

不懂ros,难道ros不能执行shell命令吗?前面已经给出一行命令,替换下域名和密钥,直接在命令行中执行即可,哪有这么复杂呢?
执行成功后,再添加一条crontab任务
05 * * * * wget -q -O- http://dynv6.com/api/update?host ... 6fjsu&ipv4=auto
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

gcl52 发表于 2023-5-12 08:37
这个脚本我试了,不更新ip

chatGPT4写的你试试看。不行的话下班后将我的拷贝给你。
/system script
add name=update-dynv6-public-ip policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive source={
  :local username "your_dynv6_username"
  :local password "your_dynv6_password"
  :local hostname "your_dynv6_hostname"
  :local ipv4address [/ip address get [find interface=ether1] address]
  :local url "https://ipv4.dynv6.com/api/update?hostname=$hostname&ipv4=$ipv4address&token=$usernamepassword"
  /tool fetch url=$url mode=https keep-result=no
}

这个脚本将使用MikroTik RouterOS设备上“ether1”接口的IPv4地址更新您的dynv6.com主机名。您需要将“yourdynv6username”,“yourdynv6password”和“yourdynv6hostname”替换为您的dynv6.com帐户信息和主机名。

要自动运行此脚本,您可以创建一个计划程序条目:
/system scheduler
add interval=1m name=update-dynv6-public-ip on-event=update-dynv6-public-ip policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive start-time=startup

这将从设备启动开始每分钟运行“update-dynv6-public-ip”脚本。

点评

首先谢谢你,我修改了你的脚本,发现还是不行,脚本如下: /system script add name=update-dynv6-public-ip policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive source={ :local passwor  详情 回复 发表于 2023-5-12 10:20
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
sailor0908 发表于 2023-5-12 09:14
chatGPT4写的你试试看。不行的话下班后将我的拷贝给你。
/system script
add name=update-dynv6-public-i ...

首先谢谢你,我修改了你的脚本,发现还是不行,脚本如下:
/system script
add name=update-dynv6-public-ip policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive source={
  :local password "XXX"
  :local hostname "XXX"
  :local ipv4address [/ip address get [find interface=pppoe-out1] address]
  :local url "https://ipv4.dynv6.com/api/update?hostname=$hostname&ipv4=$ipv4address&token=$password"
  /tool fetch url=$url mode=https keep-result=no
}
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

本帖最后由 sailor0908 于 2023-5-12 10:26 编辑

这句要这样写,那个等号改成冒号(<password>)。
:local url "https://ipv4.dynv6.com/api/update?hostname=$hostname&ipv4=$ipv4address&tokenpassword"

点评

是这样吗?  详情 回复 发表于 2023-5-12 10:40
http://ipv4.dynv6.com/api/update?hostname=$hostname&ipv4=ipv4address&tokenpassword 这样吗?  详情 回复 发表于 2023-5-12 10:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
sailor0908 发表于 2023-5-12 10:25
这句要这样写,那个等号改成冒号()。
:local url "https://ipv4.dynv6.com/api/update?hostname=$hostna ...

http://ipv4.dynv6.com/api/update?hostname=$hostname&ipv4=ipv4address&tokenpassword
这样吗?
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
sailor0908 发表于 2023-5-12 10:25
这句要这样写,那个等号改成冒号()。
:local url "https://ipv4.dynv6.com/api/update?hostname=$hostna ...

是这样吗?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

点评

是的  详情 回复 发表于 2023-5-12 10:44
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报


是的               

点评

试过了,还是不行  详情 回复 发表于 2023-5-12 10:53
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2024-4-30 01:07

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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

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