欢迎来到天天文库
浏览记录
ID:19765874
大小:126.00 KB
页数:7页
时间:2018-10-06
《【网络高级技术】dns 论询》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、linux实现DNS轮询实现负载平衡DNS轮询机制会受到多方面的影响,如:A记录的TTL时间长短的影响;别的DNS服务器Cache的影响;windows客户端也有一个DNSCache。这些都会影响DNS轮询的效果。因此DNS的轮询机制并不能做为一个loadbalancing的解决方案,只能作为一个loaddistribution方案。不过有一个参数你可以试试看是否能调整一下轮询的效果:在named.conf中可以设置bind的round-robin的给出结果的顺序:options{rrset-order{
2、orderrandom;};};rrset-order支持三个参数:fixed,random,cyclic。fix会将多个A记录按配置文件的顺序固定给出random会随机给出cyclic会循环给出 DNS轮询就是指DNS服务器将域名解析请求按照A记录的顺序,逐一分配到不同的IP上,同时在一定程度上也实现了简单的负载均衡。 我们先看一下WINDOWS2003下如何设置DNS轮询。比如:有两台WEB主机,A主机ip是192.168.1.1,B主机ip是192.168.1.4,企业里有单独一台DNS服务器,然后
3、在该DNS服务器的正向区域里(域名为haiquan.net)分别建立两个主机A记录,第一个主机记录的记录IP是192.168.1.1,第二个主机记录的记录IP是192.168.1.4,附图: 然后在DNS主机QINGYG上点击右键选择属性,在出现的对话框中勾选"启用循环",如图: 注意:网络掩码排序可以根据子网掩码来判断dns地址和客户端是否在同一个网段或者离的比较近,然后优先返回较近的服务器的地址。设置完毕后,我们看一下效果: 注意:WINDOWS会缓存DNS结果,为方便观察轮询情况,我们需要用"ipc
4、onfig /flushdns"来清空DNS缓存。 下面我们看一下LINUX下如何设置DNS轮询,以RHEL5为例:1、首先需要安装BIND并搭建DNS服务器(具体DNS搭建过程请参考相关资料)#yum install -y bind* caching-nameserver*安装DNS服务器一般需要安装以下三个数据包:bind-utils-9.3.3-7.el5 查询用bind-chroot-9.3.3-7.el5 安全机制caching-nameserver-9.3.3
5、-7.el5 配置文件2、修改区域数据配置文件(example.com.db),这里主要看一下DNS轮询配置 IN MX 10 mail.example.com. ... ... mail IN A 192.168.1.9 IN A 192.168.1.10 IN A 192.168.1.11 在以上配置中,mail.example
6、.com对应了3个IP地址,此时具体选择哪一条A记录,是由rrset-order语句决定的。另外,在反向解析文件中,这3个IP也都要对应mail主机,以免有些邮件服务器为了反垃圾邮件进行反向查询时出现问题。这是在/etc/named.conf文件中options语句有关rrset-order配置的一个例子:rrset-order{classINtypeAname"mail.example.com"orderrandom;ordercyclic;};这个设置会使处于IN类中的A记录的响应以随机顺序返回,IN
7、类以"mail.example.com"为后缀。其他的记录以循环记录被返回。rrset-order支持三个参数:fixed,random,cyclic。 fixed 将多个A记录按配置文件的顺序固定给出 random 随机给出 cyclic 循环给出注:rrset-order语句并不被BIND9支持,BIND9目前只支持"random-cyclic"排序,服务器随机选择RRset集中的开始点,有顺序返回在那个点开始的记录。 3、测试看结果:[root@linux252:/]#hos
8、t mail.example.com mail.example.com hasaddress192.168.1.9 mail.example.com hasaddress192.168.1.10 mail.example.com hasaddress192.168.1.11 总结一下: DNS轮询的配置是比较方便的,如果网络扩增,新增的Web服务器只要增加一个公网IP即可。但相对来说,DNS轮询也有其自身的一些缺点,这个工作当
此文档下载收益归作者所有