首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在CloudFlare中使用dd-wrt动态DNS客户端

在CloudFlare中使用dd-wrt动态DNS客户端
EN

Server Fault用户
提问于 2012-01-23 14:54:47
回答 3查看 9.7K关注 0票数 8

我试图用dd (v24-sp2)固件在路由器上配置动态DNS客户端,这样它就可以动态地更改DNS记录中的IP地址。不幸的是,我遇到了一个问题,…下面是来自他们的配置客户端的一个示例请求:

代码语言:javascript
运行
复制
https://www.cloudflare.com/api.html?a=DIUP&u=<my_login>&tkn=<my_token>&ip=<my_ip>&hosts=<my_record> 

如果我在浏览器中使用它,它就能工作,但是在dd中,我得到了以下输出:

代码语言:javascript
运行
复制
Tue Jan 24 00:36:47 2012: INADYN: Started 'INADYN Advanced version 1.96-ADV' - dynamic DNS updater. 
Tue Jan 24 00:36:47 2012: I:INADYN: IP address for alias '<my_record>' needs update to '<my_ip>' 
Tue Jan 24 00:36:48 2012: W:INADYN: Error validating DYNDNS svr answer. Check usr,pass,hostname! (HTTP/1.1 303 See Other 
Server: cloudflare-nginx 
Date: Mon, 23 Jan 2012 14:36:48 GMT 
Content-Type: text/plain 
Connection: close 
Expires: Sun, 25 Jan 1981 05:00:00 GMT 
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 
Pragma: no-cache 
Location: https://www.cloudflare.com/api.html?a=DIUP&u=<my_login>&tkn=<my_token>&ip=<my_ip>&hosts=<my_record> 
Vary: Accept-Encoding 
Set-Cookie: __cfduid=<id>; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.cloudflare.com 
Set-Cookie: __cfduid=<id>; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.www.cloudflare.com 

You must include an `a' paramiter, with a value of DIUP|wl|chl|nul|ban|comm_news|devmode|sec_lvl|ipv46|ob|cache_lvl|fpurge_ts|async|pre_purge|minify|stats|direct|zone_check|zone_ips|zone_errors|zone_agg|zone_search|zone_time|zone_grab|app|rec_se

URL从“位置”完美地工作,参数"a“包括在内。有什么问题吗?

EN

回答 3

Server Fault用户

发布于 2013-06-08 02:59:27

如果您想从您的路由器执行更新,那么您需要在中间添加一些额外的“东西”才能将您的呼叫转换为CloudFlare格式(如果只有DNS-O-马季奇会将它们添加到他们支持的服务中.)。与其自己托管一个中间脚本,不如使用Google AppEngine (这是免费的)为您重新发布。我用这个:

https://cloudflare-updater.appspot.com/

好的,您仍然需要调用CloudFlare以外的其他东西来发布更新,但是至少您不需要自己运行额外的主机或VPS等等。这是完全透明的问题,唯一的问题是,您没有得到一个错误返回,所以您需要检查它是自己工作。一旦它开始工作,它就应该运行和运行。

票数 3
EN

Server Fault用户

发布于 2018-06-28 16:55:21

注意到这一切都过时了,现在需要v4 api代码才能工作。

测试以上的一个它失败-坏用户,通过,xxxx信息。

回顾此方法https://github.com/ScottHelme/CloudFlareDDNS

票数 1
EN

Server Fault用户

发布于 2020-01-23 10:16:55

使用以下方法成功地实现了这个工作:https://github.com/dcerisano/Cloudflare-dynamic-dns

一旦您设置了Cloudflare帐户,所需的信息就很容易找到:

您需要:区域ID

授权密钥(又称全局api密钥)

您的域的记录ID (这是通过运行cloudflare-dns-id.sh脚本获得的),我不得不稍微修剪一下脚本才能工作。

curl -X获取"https://api.cloudflare.com/client/v4/zones/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/dns_records?type=A&name=dynamic“\ -H”X-Auth“-电子邮件: you@youremail.com”\ -H“X键:

我将这两个脚本存储在/jffs中,使它们成为可执行的。

在Cloudflare方面,我按照本指南设置了Cloudflare域记录:

https://support.opendns.com/hc/en-us/community/posts/115000937008-How-to-set-up-DNS-O-MATIC-for-Cloudflare-and-the-other-way-around-and-a-FritzBox

在Cloudflare,您必须设置以下记录:

  • 类型:a_*
  • 类型:cname.name:“yourdomain.xyz”\\ Value: Dynamic.“yourdomain.xyz”
  • 类型:cname.name: www收值:“yourdomain.xyz”

我设置了一个cron作业,每5分钟运行一次cloudflare-ddns.sh来检查IP更改。

我的DD-WRT路由器现在自动更新Cloudflare每当广域网IP被改变.

以上设置大约需要10分钟。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/352734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档