随着原中国电信集团按南北地域分家,新的中国电信和网通集团随即成立,互联网的骨干网也被一分为二了,北有网通、南有电信。从此,细心的网民可以发 现,有些经常访问的网站速度一下子慢了下来,有时候还有访问不到的情况出现。例如北方地区的网络用户访问中国网通的服务器会非常快,而访问中国电信的服务 器时,感觉非常慢。这种现象不仅影响了网站的访问量,更严重的是它直接影响了一些经营性网站的经济效益。据分析,产生这个问题的根本原因是中国电信分家之 后,电信与网通之间的互连存在问题。虽然信息产业部已经在规划电信网通互联互通计划,但在今后相当长的一段时期内,南北方网互连的问题还会存在。
解决方案
智能DNS策略解析很好的解决了上面所述的问题。DNS策略解析最基本的功能是可以智能的判断访问您网站的用户,然后根据不同的访问者把您的域名分别 解析成不同的IP地址。如访问者是网通用户,DNS策略解析服务器会把你的域名对应的网通IP地址解析给这个访问者。如果用户是电信用户,DNS策略解析 服务器会把您域名对应的电信IP地址解析给这个访问者。
智能DNS策略解析还可以实现就近访问机制(即将推出)。有些用户在国外和国内都放置了服务器,使用我们的DNS策略解析服务可以让国外的网络用户访问你国外的服务器,国内的用户访问国内的服务器,从而使国内外的用户都能迅速的访问到你的服务器。
智能DNS策略解析还可以给你的多个主机实现负载均衡,这时来自各地的访问流量会比较平均的分布到你的每一个主机上,主机的数量限制为40个。
要使用的智能DNS策略解析服务您要具备下面的条件:
1.你的主机已经申请了合法的域名。
2.您的主机上配置有电信、网通各一个合法的公网IP地址。
3.你在电信机房和网通机房各放置了一台主机。
4.要使用多主机负载均衡服务,你需要有多台主机并连接到了互联网上。
注意:第二条和第三条只要有一条满足条件即可。主机所使用的操作系统和这个策略解析服务无关。
试验步骤:
第一步:安装dns服务器软件包
[root@test ~]#mount /dev/cdrom /mnt
[root@test ~]#cd /mnt/Server
[root@test Server]# rpm -ivh bind-9.3.3-7.el5.i386.rpm
[root@test Server]# rpm -ivh bind-chroot-9.3.3-7.el5.i386.rpm
[root@test Server]# rpm -ivh caching-nameserver-9.3.3-7.el5.i386.rpm
第二步:建立主配置文件,并修改相关选项;
[root@test ~]# vi /var/named/chroot/etc/named.caching-nameserver.conf
options {
listen-on port 53 { any; };
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";
query-source port 53;
query-source-v6 port 53;
allow-query { any; }; //允许所有客户机请求查询;
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients { localhost; };
match-destinations { localhost; };
recursion yes;
include "/etc/named.rfc1912.zones";
};
acl "cnc" { 192.168.1.251/32; }; //定义网通客户端的地址端范围;(32表示一台主机)
acl "tel" { 192.168.1.252/32; }; //定义电信客户端的地址端范围;
view "cnc" in { //定义网通视图;
match-clients { cnc; }; //定义客户端匹配的条件;
recursion yes;
additional-from-auth yes;
additional-from-cache yes;
zone "xxx.com.cn" IN {
type master;
file "xxx.com.cn.db1";
};
};
view "tel" in { //定义电信视图;
match-clients { tel; }; //定义客户端匹配的条件;
recursion yes;
additional-from-auth yes;
additional-from-cache yes;
zone "xxx.com.cn" IN {
type master;
file "xxx.com.cn.db2";
};
};
第三步:建立区域的数据库文件;
[root@test ~]# cd /var/named/chroot/var/named
[root@test named]# vi xxx.com.cn.db1
$TTL 86400
xxx.com.cn. IN SOA ns.xxx.com.cn. root.xxx.com.cn. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS ns.xxx.com.cn.
ns IN A 192.168.1.102
www IN A 2.2.2.2
[root@test named]# vi xxx.com.cn.db2
$TTL 86400
xxx.com.cn. IN SOA ns.xxx.com.cn. root.xxx.com.cn. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS ns.xxx.com.cn.
ns IN A 192.168.1.102
www IN A 3.3.3.3
第四步:客户机测试
网通客户机
pc1 ip:192.168.1.251 subnetmask:255.255.255.0 dns:192.168.1.102
电信客户机
pc2 ip:192.168.1.252 subnetmask:255.255.255.0 dns:192.168.1.102
pc1测试结果
C:\>nslookup
>server 192.168.1.102
> www.xxx.com.cn
Name: www.xxx.com.cn
Address: 2.2.2.2
pc2测试结果
C:\>nslookup
>server 192.168.1.102
> www.xxx.com.cn
Name: www.xxx.com.cn
Address: 3.3.3.3
结果:同一个域名,在不同的客户机上解析得到不同的ip地址,这就是我们想要的结果。
在实际环境中acl应该放的是网通或电信的ip地址段;