BIND视图机制在多ISP接入网络环境中的应用
2010-01-25周德荣
周德荣,夏 龄,舒 涛
(四川民族学院 网络信息中心,四川 康定 626001)
BIND(Berkeley Internet name domain service)是DNS的一个实现版本,由美国加州大学伯克里分校开发,是互联网上使用最广的域名解析软件.目前BIND有BIND 8.x和BIND 9.x两个版本同时发展,最新版本分别是8.4.7和9.4.2.BIND 8里融合了许多提高效率、稳定性和安全性的技术.而BIND 9则增加了一些新的特性[1],如IPv6支持,多处理器支持,线程安全操作,增量区传送,视图机制等.本文基于多ISP(Internet Service Provider,即互联网服务提供商)网络接入环境,介绍视图机制及其在高校校园网中的应用.
1 DNS基本原理
域名系统是分级的分布式数据库.它储存IP地址与主机名的对应信息、邮件路由信息和其他网络应用方面的数据.它允许对整个数据库的各个部分进行本地控制,同时整个网络也能通过客户/服务器方式访问每个部分的数据,借助备份和缓存机制,DNS将更强壮,保证有足够的性能.
DNS的分布式数据库以域名为索引,每个域名是一棵很大的逆向树中路径,这棵逆向树称为域名空间.如图1所示,树的最大深度不得超过127层,树中每个节点都有一个可以长达63个字符的文本标号.
图1 DNS树型结构图
DNS系统采用分级的分布式管理,下面以客户机访问www.scun.edu.cn网站为例,介绍DNS分级查询的原理(客户机上DNS服务器设定为61.139.2.69).
(1)客户机首先查询61.139.2.69这个主机中是否有与域名www.scun.edu.cn相对应的IP地址信息,有则返回,没有则向.(root)主机查询.
(2)若61.139.2.69上没有要查询的数据,61.139.2.69通过.(root)主机查询.cn主机数据,.(root)返回给它.cn域名的管理主机地址M.
(3)61.139.2.69到M主机上查询,M主机返回给它edu.cn这个域名的管理主机地址N.
(4)最终61.139.2.69将得到scun.edu.cn这个域名的管理主机X,通过在主机X查询,将得到www.scun.edu.cn域名对应的IP地址为Y,将结果Y返回给客户机.与此同时,61.139.2.69将结果记录在本机缓存中.下次有客户机查询www.scun.edu.cn时,它直接将缓存在本地的结果返回给客户机.
2 多ISP接入环境下服务器对外服务现状
目前,高校校园网网络环境一般都有两个及以上的ISP为其提供互联网接入服务,通过多ISP接入提高了访问互联网的速度,但也带来了新的问题[2]:互联网用户在访问高校对外提供的服务时,由于各ISP之间的互联存在瓶颈,造成一部分用户访问速度很快,另一部分用户访问速度很慢.
以对外提供www服务为例,为实现不同ISP的用户快速访问学校网络服务的目的,通常采用公布多域名、搭建多服务器的方法.对www服务,分别设立电信站、网通站、教育网站,不同接入商的用户直接访问对应网站即可.这种方式的缺点是:(1)要对外发布两个或以上域名,访问者难于确定采用哪个域名访问更快;(2)多域名方式增加了购买服务器硬件、软件、域名服务及维护的成本.
3 BIND视图机制的核心思想
BIND9软件的视图机制实现了对同一个域名,根据请求者源IP地址自动解析得到不同的IP地址.要达到上述目的,利用BIND视图机制来实现,其基本思想是:利用ACL技术根据各ISP的IP地址段建立不同区域;根据不同区域分别添加各自的DNS服务记录;当用户请求DNS服务时,根据请求者的源IP地址判断其所属的区域,再在对应的区域中查找NS记录并返回给用户;用户得到的IP地址就能访问到临近最快的服务器,从而解决不同ISP的用户访问学校资源的速度差异问题.
采用BIND视图机制提供DNS查询服务,用户请求访问www.scun.edu.cn域名的流程如图2所示.
图2 用户查询域名流程
4 IND视图机制的实现
4.1 LINUX环境下BIND视图机制配置
以四川民族学院网络环境为例,学校现有电信和教育网两个ISP提供互联网访问服务,域名为scun.edu.cn,DNS服务器地址为210.41.112.1,学校门户网站为www.scun.edu.cn,域名信息如表1所示.
表1 门户网站域名信息
DNS服务器的配置步骤[3]如下:
①从ftp://ftp.isc.org/网站下载并安装BIND.②named.conf的配置.③更新区文件.④验证配置.
在DNS服务器上,采用BIND9实现本文所述视图机制,下面介绍与视图机制密切相关的named.conf配置.
(1)首先利用ACL[4]根据ISP的IP段建立不同区域,教育网区域为edu,电信区域为tele.edu区域包括教育网的所有IP地址段,除edu区域所包括的IP地址外的所有其他IP都属电信tele区域,在配置视图时用any代替.
acl “edu”{58.154.0.0/15;58.192.0.0/12;59.64.0.0/12;116.13.0.0/16;116.56.0.0/15;118.202.0.0/15;118.228.0.0/15;118.230.0.0/16;121.48.0.0/15;121.52.160.0/19;121.192.0.0/14;121.248.0.0/14;122.204.0.0/14;125.216.0.0/13;162.105.0.0/16;166.111.0.0/16;202.4.128.0/19;202.38.64.0/18;202.38.140.0/23;202.38.184.0/21;202.38.192.0/18;202.112.0.0/13;202.120.0.0/15;202.127.216.0/21;202.127.224.0/19;202.179.240.0/20;202.192.0.0/12;203.91.120.0/21;210.25.0.0/17;210.25.128.0/18;210.26.0.0/15;210.28.0.0/14;210.32.0.0/12;211.64.0.0/13;211.80.0.0/13;218.192.0.0/13;219.216.0.0/13;219.224.0.0/13;219.242.0.0/15;219.244.0.0/14;222.16.0.0/12;222.192.0.0/12;}.
(2)视图的建立.在实际应用中建立教育网edunet和公众网telenet两个视图,如下所示.
view “edunet” in{
match-clients{edu;};
recursion yes;
zone “.” {
type hint;
file “named.ca”;
};
zone “localhost”{
type master;
file “named.local”;
};
zone “scun.edu.cn.” {
type master;
file“scun.edu.cn.zone.edu”;
};
zone “0.0.127.in-addr.arpa” {
type master;
file “127.0.0.zone”;
};
zone“112.41.210.in-addr.arpa”{
type master;
file “210.41.112.zone”;
};
};
view “telenet” in {
match-clients{ any;};
recursion yes;
zone“.”{
type hint;
file “named.ca”;
};
zone “localhost” {
type master;
file “named.local”;
};
zone “scun.edu.cn.” {
type master;
file“scun.edu.cn.zone.tele”;
};
zone “0.0.127.in-addr.arpa” {
type master;
file “127.0.0.zone”;
};
zone “112.41.210.in-addr.arpa” {
type master;
file “210.41.112.zone”;
};
};
(3)修改区文件.在scun.edu.cn.zone.edu文件添加A记录, www.scun.edu.cn对应IP为210.41.112.1.在scun.edu.cn.zone.tele文件添加A记录, www.scun.edu.cn对应IP为202.98.109.187.
4.2 测试
在教育网和电信网上分别利用Windows XP系统自带的nslookup工具测试DNS服务.
在教育网用户计算机上(IP地址210.41.119.4)测试结果为:
Nslookup
Default Server: dns.scun.edu.cn
Address: 210.41.112.1
> www.scun.edu.cn
Server: dns.scun.edu.cn
Address: 210.41.112.1
Name: www.scun.edu.cn
Address: 210.41.112.3
在电信网用户计算机上(IP地址221.236.245.3)测试结果为:
Nslookup
Default Server: ns.sc.cninfo.net
Address: 61.139.2.69
> www.scun.edu.cn
Server: ns.sc.cninfo.net
Address: 61.139.2.69
Name: www.scun.edu.cn
Address: 202.98.109.187
5 结束语
本方案全部采用开源软件构建,具有成本低、灵活性强、有一定扩展能力等优点.系统在四川民族学院校园网中运行一年来,效果良好.
参考文献:
[1]http://www.isc.org/products/BIND/[EB/OL].
[2]李孜,张灵玲.DNS策略解析及实现[J].洛阳工业高等专科学校学报,2007,17(5).
[3](美)CRAIG HUNT.Linux DNS Server管理指南[M].电子工业出版社,2001.
[4]鸟哥编著.鸟哥的LINUX私房菜——服务器架设篇[M].北京:机械工业出版社,2008.