文档章节

dnspod-sr内网轻量级DNS首选方案

小运
 小运
发布于 2014/02/10 10:01
字数 990
阅读 395
收藏 4

dnspod-sr介绍
dnspod-sr 是一个运行在 Linux 平台上的高性能的递归 DNS 服务器软件,强烈公司内网或者服务器内网使用dnspod-sr,具备高性能、高负载、易扩展的优势,非 BIND、powerdns 等软件可以比拟。
dnspod-sr特性

  •     高性能,比所有流行的开源 DNS 软件性能高出2倍以上

  •     安全,能抵御一般攻击

  •     稳定,有效降低解析失败率

  •     主动刷新缓存,响应速度更快

  •     易于扩展,非常容易部署

  •     防污染,能够正确解析被污染域名

dnspod-sr安装

方法一:下载源码(推荐)
# git clone https://github.com/DNSPod/dnspod-sr.git
# cd dnspod-sr

方法二:下载压缩包

# wget https://github.com/DNSPod/dnspod-sr/zipball/master

编译源码
# cd src
# make
不需要make install

运行
# ./dnspod-sr

备注:切记一定要在相对路径下执行

dnspod-sr配置
如果你仅仅需要一个dns转发器,那么什么都不需要配置,直接可以使用。但是如果你想解析自己的域名。修改dnspod-sr上层目录的root.z

增加NS记录

ttlsa.com.           172800  IN      NS       ns1.ttlsa.com.
ttlsa.com.           172800  IN      NS       ns2.ttlsa.com.

增加A记录

ns1.ttlsa.com.           172800  IN      A       173.255.219.122
ns2.ttlsa.com.           172800  IN      A       173.255.219.122

备注:经过测试发现它不支持CNAME、官方文档几乎是空白.无奈.root.z的最后一行一定要一个空行,否则最后一条记录解析不到。

验证dns配置
验证A记录配置

# dig  @127.0.0.1 ns1.ttlsa.com

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> @127.0.0.1 ns1.ttlsa.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 7843
;; flags: qr ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ns1.ttlsa.com.                 IN      A

;; ANSWER SECTION:
ns1.ttlsa.com.          604800  IN      A       173.255.219.122

;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun Dec 22 04:29:35 2013
;; MSG SIZE  rcvd: 47

验证NS记录配置

# dig  ns @127.0.0.1 ttlsa.com    

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> ns @127.0.0.1 ttlsa.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39842
;; flags: qr ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ttlsa.com.                     IN      NS

;; ANSWER SECTION:
ttlsa.com.              604800  IN      NS      ns1.ttlsa.com.
ttlsa.com.              604800  IN      NS      ns2.ttlsa.com.

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sun Dec 22 04:30:17 2013
;; MSG SIZE  rcvd: 75

指定NS服务器
需要修改配置文件:sr.conf默认配置文件为当前目录下的 sr.conf,也可以在命令行参数中指定

# ./dnspod-sr /path/of/sr.conf

如果需要为特定域名指定DNS服务器,以 xfer 开头,如下:

    xfer:
    googleusercontent.com.:8.8.8.8
    google.com.:8.8.8.8
    youtube.com.:8.8.8.8
    s-static.ak.facebook.com.edgekey.net.:8.8.8.8
    :

最后一行以`:`结束。以上的几个域名解析请求都会中转到8.8.8.8上.

配置日志文件目录(可选)

    log_path:
    ./log/

dnspod-sr性能

dnspod-sr 依托于 DNSPod 多年运营和优化 DNS 服务的经验,针对国内复杂的网络情况,对递归 DNS 进行了一系列的优化,比较其他开源软件,性能得到大幅提升。
测试环境
千兆网卡,4核 CPU,4G 内存,Linux 64位系统。
性能测试

  •     dnspod-sr: 15万 qps

  •     BIND 9.9: 7万 qps

  •     unbound 4.7: 8万 qps

测试如图:

  • dnspod-sr_benchmark

  • dnspod-sr_benchmark

集群式部署
DNSPOD-SR说明文档里面提到支持集群,也没看出怎么支持集群,如果你想实现集群,同步root.z文件,前端可以用lvs、haproxy、keepalived等等来实现集群,方法很多,不在多说了。

最后
在内网使用dnspod-sr值得推荐,配置简单,集群搭建也简单。相比bind等等要简单很多,但是功能也简单。但是内网下足够用了。dnspod-sr的wiki基本上空白,官方文档没本文详细。官方文档只包含了安装,并未提到如何配置。
参考文章
DNSPOD-SR Wiki: https://github.com/DNSPod/dnspod-sr/wiki

网站:运维生存时间   网址:http://www.ttlsa.com/linux/dnspod-sr-little-dns/


© 著作权归作者所有

小运
粉丝 102
博文 761
码字总数 659803
作品 0
福州
系统管理员
私信 提问
DNS 服务器--dnspod-sr

DNSPod Security Recursive DNS Server 关于 dnspod-sr 是一个运行在 Linux 平台上的高性能的递归 DNS 服务器软件,具备高性能、高负载、易扩展的优势,非 BIND 等软件可以比拟。 特性 高性能...

DNSPod
2012/06/01
22.6K
12
美国半个互联网瘫痪对开发者使用DNS的启发

版权声明:本文由腾讯云DNSPod团队原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/174 来源:腾云阁 https://www.qcloud.com/community 美国时间的10月...

偶素浅小浅
2016/11/09
7
0
DNSPod (简称DNSPod-sr)正式开源发布

dnspod-sr 是一个运行在 Linux 平台上的高性能的递归 DNS 服务器软件,具备高性能、高负载、易扩展的优势,非 BIND 等软件可以比拟。

oschina
2012/06/01
9
0
中小企业自建DNS服务器解决方案(待续)

中小企业自建DNS服务器解决方案 目录: 1.背景分析 2.技术分解 2.1 网络架构 2.2 基础概念 2.3 DNS架构 2.4 DNS主从结构 3. 安全防护 3.1 配置规范 3.2 ***防护 3.3 DDos防护 3.4 劫持防护 ...

心的哲学
2018/07/02
0
0
如何把dnspod-sr作为局域网的一个DNS服务器

@DNSPod 你好,想跟你请教个问题: dnspod-sr 是否适用于以下场景: 我想在局域网的 192.168.1.2(Linux系统)运行DSN服务器,添加 *.my-host.me 指向 192.168.1.10,其它的机器(Windows系统...

heiing
2013/02/04
1K
3

没有更多内容

加载失败,请刷新页面

加载更多

String为什么是final

https://blog.csdn.net/sdmxdzb/article/details/83003734

Java搬砖工程师
15分钟前
0
0
【图解AI:动图】各种类型的卷积,你认全了吗?

卷积(convolution)是深度学习中非常有用的计算操作,主要用于提取图像的特征。在近几年来深度学习快速发展的过程中,卷积从标准卷积演变出了反卷积、可分离卷积、分组卷积等各种类型,以适...

雪饼
16分钟前
0
0
壮丽70年·奋斗新时代|蒸妙集团熏蒸设备的特点与功效

熏蒸仪具有显著、强大、持久的生理、药理效应。目前熏蒸仪普遍采用先进的中药汽化装置,通过数字智能化控制恒温或者电脑控温,使中药药液产生中药蒸汽。患者在薰蒸治疗时,能通过蒸汽热敷使全...

公益传承
22分钟前
0
0
容器服务Windows Kubernetes使用阿里云日志服务来收集容器日志

目前,容器服务Windows Kubernetes支持将业务容器产生的stdout输出、日志文件同步到阿里云日志服务(SLS)进行统一管理。 支撑组件安装 在Windows Kubernetes集群安装界面勾选使用日志服务,...

阿里云云栖社区
59分钟前
3
0
sql查询问题收集

sql的使用容易犯的错误 1、ISNULL使用 在多表关联时,最好只使用到最外层,不然会出现 空值。 sql的使用规范: 1,尽量避免大事务操作,慎用holdlock字句,提高系统并发能力。 2,尽量避免反...

轻轻的走过
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部