在ROS的PPPOE IP变的时候自动修改DNS记录,实现DDNS
2014-08-13 21:47
288 查看
网上此类教程比较多了
2. 使用 /tool fetch 构造url提交
当然第二种更具灵活性, 可以随意选择dns服务提供商
2. 随时检测IP变化, 只在IP变化的时候才提交更新
当然第二种更及时,且不会导致服务器端由于频繁提交更新而导致问题
思路:
将当前的IP保存为global 变量, 这样在脚本结束的时候, 变量还存在, 下次执行脚本的时候就可以对比 IP 是不是有变化
当前的IP有变化的时候, 也可能是拨不上号了, 当前IP为空, 这样的话不交更新, 只有获得IP且不和上次一样的时候才更新
然后在x.x.x.x 上抓icmp包即可
从更新方式看:
1. 使用 /tool dns-update 配合 www.changeip.com 账户提交2. 使用 /tool fetch 构造url提交
当然第二种更具灵活性, 可以随意选择dns服务提供商
从提交检测上看:
1. 不检测IP变化, 定时提交当前IP2. 随时检测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包即可
相关文章推荐
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!
- PHP实现抓取Google IP并自动修改hosts文件
- 修改IP、DNS、MAC工具VC源码实现
- Shell脚本实现自动修改IP、主机名等功能分享
- 设备中如何实现类似gopro给iphone分配ip但是不修改dns的功能
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!(二)
- PHP实现抓取Google IP并自动修改hosts文件
- 设置WLAN的IP和DNS为自动获取失败,在DOS下手动修改
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理(全)
- 批处理、VBS实现自动设置IP、默认网关、DNS、WINS、IE代理!(一)
- bat文件实现修改IP和DNS
- 设备中如何实现类似gopro给iphone分配ip但是不修改dns的功能
- 浅析如何使用busybox的udhcpc实现开发板ip和dns自动获取
- 使用Python脚本自动修改Windows的IP、网关和DNS设置
- 基于FreeBSD/BIND平台自动解析不同IP的智能DNS服务器架构过程
- ABAP--如何实现交货单的任何一item库位发生人工修改时系统自动更新所有items(感谢天元提供)
- java Web项目中,利用其过滤功能,实现访问者每次访问服务器时,记录访问者的IP,访问时间,Url等信息,并保存到文件的操作
- ABAP--如何实现交货单的任何一item库位发生人工修改时系统自动更新所有items(感谢天元提供)
- ghost后自动修改IP和计算机名的VBS脚本