RouterOS(ros)软路由实现DDNS动态域名功能(DNSPOD)

1 篇文章 0 订阅
1 篇文章 0 订阅

    DDNS(Dynamic Domain Name Server,动态域名服务)是将用户的动态IP地址映射到一个固定的域名解析服务上,用户每次连接网络的时候客户端程序就会通过信息传递把该主机的动态IP地址传送给位于服务商主机上的服务器程序,服务器程序负责提供DNS服务并实现动态域名解析。

    如果你家里的宽带有动态公网IP,就可以注册一个域名,通过DDNS功能把你的动态公网IP绑定到你的域名下,就可以通过域名来访问你家里的服务了,相当于家里的电脑就是一台云服务器。使用DDNS动态更新域名的IP,可以避免通过IP访问,IP变动后服务不可用的情况。

    本教程以DNSPOD管理的域名为例。

    通过winbox连接到ros,依次点击System→Scripts,点击➕号添加一个ddns脚本,填写一个名字,脚本填写在最下方空白格里,其他选项不用调整

dnspod-ddns脚本

修改脚本里以下四个参数成你自己的

1、pppoe参数填写ros里拨号上网的那个interface的name

2、token参数里的id,token两个值从DNSPOD平台获取,创建token参考密钥管理 - DNSPod 服务与支持

3、域名domain参数填写你的域名地址

4、子域名subdomain参数填写你要更新的域名前缀,如www,@等

#PPPoE
:local pppoe "yourpppoe"
#DNSPOD token
:local token "id,token"
#域名
:local domain "example.com"
#子域名
:local subdomain "www"
#dname不要动
:local dname ($subdomain.".".$domain)
#获取pppoe拨号ip
:local ipaddr [/ip address get [/ip address find interface=$pppoe] address]
:set ipaddr [:pick $ipaddr 0 ([len $ipaddr] -3)]
#获取域名列表
:local record [/tool fetch url="https://dnsapi.cn/Record.List" http-data="login_token=$token&format=json&domain=$domain&sub_domain=$subdomain&record_type=A" as-value output=user]
#获取id和ip
:set record ($record->"data")
:set record [:pick $record [:find $record "\"records\":"] [:len $record]]
:local recordid [:pick $record ([:find $record "\"id\":\""]+6) [:find $record "\",\"ttl"]]
:local recordip [:pick $record ([:find $record "\"value\":\""]+9) [:find $record "\",\"en"]]
#更新ip地址
:if ($recordip!=$ipaddr) do={
/tool fetch url="https://dnsapi.cn/Record.Ddns" http-data="login_token=$token&format=json&domain=$domain&sub_domain=$subdomain&record_id=$recordid&record_line_id=0&value=$ipaddr"
:log info ("[".$dname."] ip update")
} else={
:log info ("[".$dname."] ip not update")
}

填写完成后保存,脚本就建好了,下面还需要创建一个定时调度任务,定时的去执行我们的ddns脚本,保证ip能及时更新 。点击System→Scheduler→➕加号,创建定时任务

Name随便起一个,interval参数是定时任务执行间隔,建议填写【00:01:00】,为一分钟执行一次,最下方空白处填写上我们刚才创建的脚本的名称,点击确定,这样定时任务就创建好了。

可以通过log查看定时任务的执行情况

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
RouterOS是一种路由操作系统,可以将普通的PC电脑变成专业路由器。它具有大型网络由的功能,并可以用于制作网吧软路由。只需要一台性能好一点的电脑,内存大一点即可,价格在3000元人民币以下。RouterOS经过多次更新和改进,其功能不断增强和完善。安装RouterOS的方法是将U盘插入路由器的USB口,从BIOS中设置从U盘启动模式,然后启动路由器。待U盘启动后,清除密码并自动关机,拔掉U盘后使用默认用户名admin登录即可,密码为空。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [ROUTEROS 路由操作系统](https://download.csdn.net/download/slglove/1251963)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [论文研究-RouterOS路由软件IPv6功能初探 .pdf](https://download.csdn.net/download/weixin_39840588/11564810)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [网大科技RouterOS密码清除工具U盘版.zip](https://download.csdn.net/download/weixin_38744375/11666170)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值