DNSbed改版说明

由于近期大量用户滥用DNSbed,导致DNS解析系统持续遭遇大流量的DDoS攻击。我们已多次更换服务器,并且购买了防火墙服务,但是恶意的攻击仍然经常发生,严重影响正常用户的服务。鉴于此,我们决定暂停免费用户使用DNS解析服务。之前已经注册的用户,仍可继续使用,不会受到影响。新用户如果想使用DNSbed,请成为我们的VIP用户。VIP有如下好处:

  • 无限域名、无限记录数
  • 专享NS服务器
  • 自定义你自己的NS服务器
  • 通过API管理DNS
  • 更短的TTL
  • 记录立刻更新

DNSbed自成立来,一直为用户提供干净的、免费的服务。互联网DNS的事实标准是ISC的BIND,我们的后台是原生的BIND 9,没有使用任何影响安全和性能的扩展模块。因此,DNSbed提供安全、标准的DNS解析服务,您在使用时不会有各种后顾之忧。这次改版,暂停新的免费用户使用,也是希望能集中资源,给真正想使用DNSbed的用户,提供更好的服务。

DNSbed API使用说明

DNSbed的API路径是:http://www.dnsbed.com/api/方法名。这里的方法名是要执行的方法的名字,目前有如下方法(请注意大小写):

  • addZone: 增加一个zone
  • delZone: 删除一个zone
  • listZones: 列出所有zone
  • addRecord: 增加一条记录
  • modifyRecord: 修改一条记录
  • delRecord: 删除一条记录
  • listRecords: 列出记录
  • searchRecords: 搜索记录

每个方法执行时,必带的参数是uid和token,其中uid是你在DNSbed系统里的用户ID,token是验证字串(注意不是密码)。uid和token请发邮件到[email protected] 联系系统管理员获取。可以用任何程序语言执行这些方法调用,例如Java、Python、Ruby、Perl、PHP,甚至Shell都可以。风河写过一个Perl客户端放在CPAN上,可以直接使用。如下用Linux Shell的curl命令演示如何使用API方法。

(一)增加一个zone

$ curl http://www.dnsbed.com/api/addZone -d “uid=1″ -d “token=***” -d “zone=example.com”

上述zone参数是要添加的zone名,运行后返回:

{“info”:{“zid”:”2896″,”status”:0,”zone”:”example.com”},”id”:0}

返回id:0表示正常,其他任何id都表示错误,后面的方法也一样。

(二)列出所有zone

$ curl http://www.dnsbed.com/api/listZones -d “uid=1″ -d “token=***”

列出这个uid下的所有zone,返回:

{“info”:[{"zid":"2896","createDate":"2013-06-16 11:22:29","status":"1","zone":"example.com"},
{"zid":"201","createDate":"2012-06-15 13:39:17","status":"1","zone":"geocast.net"}],”id”:0}

上述返回里,请注意每个zone的zid是有用的,比如删除zone就要指定zid。

(三)删除一个zone

$ curl http://www.dnsbed.com/api/delZone -d “uid=1″ -d “token=***” -d “zid=2896″

返回略。

(四)增加一条记录

$ curl http://www.dnsbed.com/api/addRecord -d “uid=1″ -d “token=***” -d “zid=201″ -d “rname=test” -d “rvalue=1.2.3.4″ -d “rtype=A” -d “ttl=300″

上述参数里,除了uid、token、zid外,还需要指定rname(主机名)、rtype(记录类型)、rvalue(记录值)、ttl(缓存时间)。返回:

{“info”:{“zid”:”201″,”mxnum”:”0″,”ttl”:”300″,”rvalue”:”1.2.3.4″,
“rtype”:”A”,”rid”:”19422″,”rname”:”test”},”id”:0}

上述返回里,请注意每个记录的rid是有用的,比如修改记录就要指定rid。

(五)修改一条记录

$ curl http://www.dnsbed.com/api/modifyRecord -d “uid=1″ -d “token=***” -d “zid=201″ -d “rid=19422″ -d “rname=test” -d “rvalue=5.6.7.8″ -d “rtype=A” -d “ttl=300″

上述参数跟增加记录差不多,不同的是要指定rid。返回:

{“info”:{“zid”:”201″,”mxnum”:”0″,”ttl”:”300″,”rvalue”:”5.6.7.8″,
“rtype”:”A”,”rid”:”19423″,”rname”:”test”},”id”:0}

请注意修改记录后,返回的rid变了。

(六)删除一条记录

$ curl http://www.dnsbed.com/api/delRecord -d “uid=1″ -d “token=***” -d “zid=201″ -d “rid=19423″

删除指定rid的记录,返回略。

(七)列出记录

$ curl http://www.dnsbed.com/api/listRecords -d “uid=1″ -d “token=***” -d “zid=201″

列出这个zid下的所有记录,返回略。也可以指定rid只列出部分记录。

(八)搜索记录

$ curl http://www.dnsbed.com/api/searchRecords -d “uid=1″ -d “token=***” -d “zid=201″ -d “keyword=www”

上述keyword表示要搜索的关键字,返回:

{“info”:[{"mxnum":"0","ttl":"900","rvalue":"1.2.3.4",
"rtype":"A","rid":"16904","rname":"www"}],”id”:0}

完整的API文档请参考:http://www.dnsbed.com/API.pdf

在使用API的过程中有任何问题,请随时联系我们:[email protected]

DNSbed使用帮助

DNSbed的服务条款是什么?

  • 您不得使用DNSbed解析私服、色情、赌博、挂马等违规网站,一经发现我们有权删除域名、封锁账号。
  • 您添加的域名,若长时间未使用(未将该域名的NS记录指向DNSbed的DNS服务器),我们有权删除该域名。
  • 您添加的域名,若遭受大规模对DNS的DDoS攻击,影响了系统中其他正常用户,我们有权通知您将该域名的DNS解析尽快转移走。

DNSbed的官方DNS服务器是什么?
免费DNS服务器有4组:

  • ns1.cloudwebdns.com
  • ns2.cloudwebdns.com
  • ns3.cloudwebdns.com
  • ns4.cloudwebdns.com

我们会根据实际情况调整DNS服务器的位置和数量,但上述4组NS服务器的名字不会改变。VIP是另外的独立NS服务器。

如何使用DNSbed解析我的域名?

  1. 在DNSbed里注册一个账号,添加您的域名。
  2. 到您的注册商那里,将域名的DNS服务器变更为上述4组;如果您的注册商只支持2组,那么写任意2组。
  3. 在DNSbed的记录管理面板,设置该域名的DNS记录,包括www、CNAME、MX记录等。
  4. 等待DNS生效,一般这个过程很快。

DNSbed支持二级域名和泛域名吗?
暂不支持二级域名。
支持泛域名。

DNSbed提供API吗?
对VIP用户提供API。使用API后,您可以用程序来管理域名和DNS记录,例如添加、删除域名,添加、修改、删除DNS记录。

DNSbed支持DNS负载均衡吗?
其实任何DNS都支持负载均衡。您对某个子域名,添加多条A记录,指向多个不同的IP地址,就实现了DNS负载均衡。

为什么空的子域名不能设置CNAME?
这是因为CNAME是垄断性的,空的子域名下面,至少有NS记录、SOA记录,CNAME不能与它们共存。如果修改系统强行添加空的子域名的CNAME记录,那么该域名的NS记录、SOA记录就无效。

添加记录时提示CNAME与其他记录冲突是怎么回事?
如上一条所述,CNAME是垄断性的,如果某个子域名已经有任何其他类型的记录存在,例如A、MX、TXT、NS,就不能再添加一条CNAME。反过来也一样,如果某个子域名已经有CNAME了,就不能添加任何其他类型的记录。

新增或修改记录后,要多久才生效?
新增记录一般是立刻就生效。修改记录的生效时间,取决于旧的记录的TTL时间。如果旧的记录的TTL设置为900秒,那么修改后最长要等待900秒才生效。