智能DNS解析为网站减压
吉林省政府公众信息网服务中心 沈强
DNS智能分网负载均衡解析技术,又简称为DNS智能解析,是使同时拥有两台或多台不同地区或不同ISP(接入服务商)的镜像服务器的互联网内容信息服务商(ICP),通过DNS智能解析技术,让其内容信息访问者或用户尽可能使用同一地区、同一ISP或互访速度较快的网络来高速访问其提供的服务,从而从根本上解决或者减轻网络拥挤而造成的网站信息访问者或客户丢失而带来的种种直接或者间接的不良影响。
智能DNS技术原理及实现
我们通过对智能DNS解析技术的实现和对策略的配置,使系统能够区分用户的来源,并按照预先设计好的策略,把用户指向他的目的地。在本实例中,我们通过BIND 9.3.2系统来实现智能DNS解析。具体工作原理如图1所示。
图1 智能DNS解析技术原理图
用户在输入www.xxx.com.cn这个域名后,进入域名解析过程,用户将等待域名解析服务器返回的IP地址。智能DNS解析与常规域名解析不同之处在于,它会利用自己的IP地址库比对识别用户的源IP地址属于哪个网络,如果识别出源IP地址为网通地址,就返给用户网通服务器的IP地址。如果识别出源IP地址为电信地址,就返给用户电信服务器的IP地址,如果无法识别,就返给用户带宽最大的网通的服务器IP地址。以此方式来加速用户的访问速度,解决南北带宽瓶颈问题,实现南北互联。
智能解析功能主要通过配置Mame.conf这个配置文件来实现。在这个配置文件中,我们要重点编写两部分的配置脚本。通过BIND中的View功能,来实现对不同区域的地址解析。BIND的配置脚本结构如图2 所示。
在全域参数中,我们将不同区域的IP网段规划到ACL列表中,然后在下面的View语句中加以引用,并解析成不同的地址,以实现不同区域的用户对网站的加速访问。
图2 BIND配置脚本的结构图
访问控制列表部分
在这部分我们要在CNC这个访问控制列表中填加所有的网通IP地址段。在下面View部分我们需要把访问列表CNC引入,这就是我们上面提到的IP地址库。通过把用户的IP地址与IP地址库中的IP进行比对,在库内的IP我们将把它视为网通的用户,并按照网通用户返回解析地址,配置文件编写如下。
acl“CNC”{ ......#在这里填写网通的IP地址段 };
View语句部分
View部分的功能是智能DNS技术的核心。通过View功能,可以根据用户的源IP返给用户响应的解析地址,配置文件编写如下:
第一部分:
如果用户的IP包含在CNC地址库中,它们将统一通过这部分的View脚本实现地址解析,域名将被解析成为中国网通的IP地址,配置文件编写如下:
view“view_cnc”{ match-clients{CNC;}; zone“.”{ type hint; file “named.root”; }; zone“0.0.127.IN-ADDR.ARPA”[19]{ type master; file “localhost.rev”; }; zone“xxx.com.cn"{ type master; file “master/cnc/xxx.com.cn”; }; };
第二部分:
如果用户的IP没有包含在CNC地址库中,它们将统一通过这部分的view脚本实现地址解析,域名默认将被解析成为中国电信的IP地址,配置文件编写如下:
view“view_any”{ match-clients{any;}; zone[21]“.”{ type hint; file “named.root”; }; zone“0.0.127.IN-ADDR.ARPA”{ type master; file “localhost.rev[20]”; }; zone“xxx.com.cn”{ type master; file “master/telecom/xxx.com.cn”; }; };
智能DNS解析应用效果
以XX政府门户网站为例,从流量监控系统的数据分析可以看出,XX政府主站目前月访问量平均增幅在10%左右,同时来自中国电信用户的网络访问大概占到了20%~25%。在没有部署智能DNS解析系统之前,电信用户的响应速度平均为30 秒,极大地影响了电信用户访问和使用网站应用系统的效率和兴趣。
在部署智能DNS解析系统之后,XX政府门户网站利用两台服务器通过网通网络和电信网络分别对网通用户和电信用户提供Web服务,这种方式不仅解决了早期存在的单点故障问题,而且更重要的是使XX政府门户网站对电信用户的平均响应速度提高了10多倍,极大改善了用户端的服务质量,受到了用户的一致好评。此外,由于原有服务器的负载被两台服务器共同承担,所以服务处理能力得到了明显提高。
表1是在真实环境下的实测数据。从表1可以看出,电信用户在改造前和改造后访问XX政府门户网站,得出的访问速度差异是非常大的。最大的差值在上海电信,其速度差异接近40倍。
表1 网站服务器实测数据
注:广东电信用户访问网站:59.42.126.* 上海电信用户访问网站:218.80.213.*