在ROS的PPPOE IP变的时候自动修改DNS记录,实现DDNS

网上此类教程比较多了

从更新方式看:

1. 使用 /tool dns-update 配合 www.changeip.com 账户提交

2. 使用 /tool fetch 构造url提交 

当然第二种更具灵活性, 可以随意选择dns服务提供商

从提交检测上看:

1. 不检测IP变化, 定时提交当前IP

2. 随时检测IP变化, 只在IP变化的时候才提交更新

当然第二种更及时,且不会导致服务器端由于频繁提交更新而导致问题


下面是使用 http://zonomi.com  DNS服务的一个示例, 放到scheduler下2秒检查一次即可:

global gout201
local lout201 [/ip address get [/ip address find interface="pppoe-out201"] address]

if ( ( $lout201 != "" ) && ( $lout201 != $gout201 ) ) do={
log info "DDNS: Sending UPDATE!"
put $lout201
local end [find $lout201 /]
local addr [pick $lout201 0 $end]
local url ("http://zonomi.com/app/dns/dyndns.jsp?action=SET&name=xxx.com&value=".$addr."&type=A&ttl=1&api_key=xxx")
/tool fetch url=$url
}

global gout201 $lout201

 

思路:

将当前的IP保存为global 变量, 这样在脚本结束的时候, 变量还存在, 下次执行脚本的时候就可以对比 IP 是不是有变化

当前的IP有变化的时候, 也可能是拨不上号了, 当前IP为空, 这样的话不交更新, 只有获得IP且不和上次一样的时候才更新

另外还有一种简单的获取当前ros IP的办法:

/tool netwatch add host=x.x.x.x  interval=1 

然后在x.x.x.x 上抓icmp包即可





  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值