`
izuoyan
  • 浏览: 8950265 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用Bind配置DNS Load Balancing

阅读更多

1. 负载均衡

最原始的负载平衡,可以在 DNS 里使用多个 A 纪录来达到效果。假设,如果你有三台 WWW 服务器,它的 IP 地址分别为 10.0.0.1,10.0.0.2 以及 10.0.0.3,使用以下的设定方式,每台服务器都会被分到 1/3 的联机。

Name TTL CLASS TYPE Resource Record (RR) Data
WWW 600 IN A 192.168.1.1
  600 IN A 192.168.1.96
  600 IN A 192.168.1.99

当有客户端寻问这三笔纪录时,BIND 会使用不同的顺序轮流回复这三个 IP 地址。如上面这个例子,客户端将会接到任意的顺序,如 1,2,3 ,2,3,1 以及 3,1,2。大部份的客户端会使用第一个顺序,并且忽略其余的。

2.rrset-order 功能

rrset-order {
[ class class_name ]
[ type type_name ]
[ name "domain_name"]
order ordering }; //ordering 可為 fixed / random / cyclic
 

范例 :
rrset-order {class IN type A name "sip.com" order random;};

rrset-order 多笔 FQDN 时响应的方法,也就是当您有 Round Robin 的数据(一个名称对应到多个 RDATA)时,其响应的方式:

random: 随机选取,原来之系统默认值
cyclic: 循环式回答,即有三笔资料的话,即依 1->2->3->1->2…回答

3.Bind配置

这里以sip.com为范例:

/etc/named.conf

...

options {
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
recursion yes;
rrset-order {
class IN type A name "sip.com" order random;
};

}

...

zone "sip.com" IN {
type master;
file "named.sip.zone";
};

/var/named/named.sip.zone

; BIND db file for sip.com

$TTL 86400

@ IN SOA primary.sip.com. admin.sip.com. (
2008090301; serial number YYMMDDNN
28800 ; Refresh
7200 ; Retry
864000 ; Expire
86400 ; Min TTL
)

NS primary.sip.com.
NS secondary.sip.com.

MX 10 mail.sip.com.
MX 20 mail-spool.sip.com.
_sip._udpSRV0 1 9 primary.sip.com.
SRV0 3 9 secondary.sip.com.
primaryINA10.30.32.30
secondaryINA10.30.32.31
mailINA10.30.32.32
mail-spoolINA10.30.32.34
wwwIN A192.168.1.96
wwwIN A192.168.1.99
wwwIN A192.168.1.1
$ORIGIN sip.com.

这里www.sip.com配置了3个ip地址,分别为192.168.1.1 , 192.168.1.96, 192.168.1.99.

4.Test

重新加载配置:

/etc/init.d/named reload

#第一次查询

dig www.sip.com

; <<>> DiG 9.5.0-P1 <<>> www.sip.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32738
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.sip.com. IN A

;; ANSWER SECTION:
www.sip.com. 86400 IN A 192.168.1.1
www.sip.com. 86400 IN A 192.168.1.96
www.sip.com. 86400 IN A 192.168.1.99

;; AUTHORITY SECTION:
sip.com. 86400 IN NS primary.sip.com.
sip.com. 86400 IN NS secondary.sip.com.

;; ADDITIONAL SECTION:
primary.sip.com. 86400 IN A 10.30.32.30
secondary.sip.com. 86400 IN A 10.30.32.31

;; Query time: 9 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Sep 4 00:01:39 2008
;; MSG SIZE rcvd: 155

# 第二次查询

dig www.sip.com

; <<>> DiG 9.5.0-P1 <<>> www.sip.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28609
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.sip.com. IN A

;; ANSWER SECTION:
www.sip.com. 86400 IN A 192.168.1.99
www.sip.com. 86400 IN A 192.168.1.1
www.sip.com. 86400 IN A 192.168.1.96

;; AUTHORITY SECTION:
sip.com. 86400 IN NS secondary.sip.com.
sip.com. 86400 IN NS primary.sip.com.

;; ADDITIONAL SECTION:
primary.sip.com. 86400 IN A 10.30.32.30
secondary.sip.com. 86400 IN A 10.30.32.31

;; Query time: 5 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Sep 4 00:01:41 2008
;; MSG SIZE rcvd: 155

注意红色部分,www.sip.com返回的地址顺序已经改变了!

5. Reference

BIND 9 Administrator Reference Manual

分享到:
评论

相关推荐

    centos通过bind配置DNS服务

    centos通过bind配置DNS服务器,配置正向区域解析,配置反向区域解析

    BIND_DNS配置详解

    BIND DNS配置详解,包括相信配置信息截图。

    DNS与BIND配置

    DNS与BIND的工作原理以及配置实例步骤!

    bind dns服务器的安装和配置

    BIND是一种开源的DNS(Domain Name System)协议的实现,包含对域名的查询和响应所需的所有软件...它是互联网上最广泛使用的一种DNS服务器,主要应用与linux和unix系统下,本文讲解的是BIND DNS服务器 安装、升级步骤。

    Solaris10 BIND9 DNS 配置例程

    Solaris10 BIND9 DNS 配置例程

    DNS服务器的配置实验报告.doc

    二、 实验内容: 在一台安装好 Linux 系统的真实机上进行BIND软件包的安装,启动DNS,为其配置文件(包括主配置文件,区 域数据库文件,与域名解析相关的文件)。配置好服务器之后进行测试。 三、实验环境 1、开启...

    BIND的DNS解决方案

    DNS是访问互联网的必备设备,最近发现存在重大的安全问题,解决办法请看里面的PPT。

    bind9 dns new

    bind9 最新的,经测试过了没有什么问题,在linux 下使用起来没有什么buge

    使用bind构建高可用智能dns服务器

    目前智能DNS的实现主要有两种方式,一种是使用F5公司的BIG-IP GTM,另一种是使用bind自带的view来实现。BIG-IP GTM是一款商业产品,功能、性能极为强大,但是由于价格昂贵,中小型企业基本不会考虑花巨资购买此产品...

    Bind 9 DNS服务器安装教程

    Bind 9 DNS服务器安装教程及应用

    使用bind构建高可用智能DNS

    使用bind构建高可用智能DNS,超详细,不可错过

    DNS与BIND构建DNS

    DNS原理,LINUX下构建CASH服务器

    DNS And Bind 5th edition

    DNS And Bind 5th edition

    DNS介绍+bind9配置精讲.rar

    DNS介绍+bind9配置精讲,20字呀20字,20字呀20字,20字呀20字

    bind9配置手册

    Bind9配置参考手册

    linux下DNS配置bind包

    linux下配置dns服务器所需要的包,下面是包名 bind-9.3.6-4.P1.el5.i386.rpm bind-chroot-9.3.6-4.P1.el5.i386.rpm bind-devel-9.3.6-4.P1.SEL5_4.2.i386.rpm bind-libs-9.3.6-4.P1.el5.i386.rpm bind-utils-9.3.6-4...

    Bind DNS域名服务

    域名服务,可以安装在局域网中的一台机器上,然后路由修改DNS服务指向该服务器IP,然后就可以自定义域名了。学习下域名如何弄的,挺不错的。

    DNS与BIND 原版 第五版

    DNS与BIND 原版 第五版 需要的同学可以下载 // BIND configuration file options { directory "/var/named"; // Place additional options here. }; zone "movie.edu" in { type master; file "db.movie.edu"; }; ...

    Ubuntu-Server-DNS服务器的配置方法.doc

    2 DNS配置  DNS 配置文件在 /etc/bind 目录中。 安装bind9后会生成如下三个配置文件:  named.conf;named.conf.options;named.conf.local。  其中named.conf是主配置文件,里面包含了named.conf.options和...

Global site tag (gtag.js) - Google Analytics