Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5379441
  • 博文数量: 1144
  • 博客积分: 11974
  • 博客等级: 上将
  • 技术积分: 12312
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-13 20:06
文章存档

2017年(2)

2016年(14)

2015年(10)

2014年(28)

2013年(23)

2012年(29)

2011年(53)

2010年(86)

2009年(83)

2008年(43)

2007年(153)

2006年(575)

2005年(45)

分类: LINUX

2007-05-23 13:25:20

全新下一代DNS系统


在一个TCP/IP架构的网络环境中,DNS是一个非常重要且常用的系统。DNS本质上作为一个数据库,主要功能就是将人易于记忆的Domain Name与人不容易记忆的IP Address作转换。 DNS系统中的服务器按照在网络中的功能可分为具有授权能力的Authoritative Name Server和具有缓存功能的Caching Name Server。目前全球所采用的DNS大多都是由ISC(Internet Software Consortium)发布的BIND(Berkeley Internet Name Domain)。但是由于BIND软件是针对简单网络设计的,随着网络的迅速发展,BIND 系统已经不适应在如今复杂的网络环境下提供DNS服务了。DNS的创造者,Nominum公司主席兼首席科学家Paul V. Mockapetris博士认为,DNS要满足未来的网络需求,特别是在处理能力和安全性能等方面的要求,必须向下一代技术发展。

目前DNS系统BIND存在的问题

  作为一款公开代码的DNS 服务程序,BIND 在现行的DNS 的系统中,得到了非常广泛的运用。但BIND开发只是针对早期网络环境,即使是最新版本的BIND9也只适应90 年代中期的网络环境,而且由于架构设计的原因,很多问题无法通过软件升级来解决。

  Paul V. Mockapetris博士介绍,BIND系统所存在的问题主要有以下几个方面:处理能力差,经常导致查询丢失和查询速度异常缓慢;安全性能不高,DNS欺骗 ,利用软件的漏洞来发动攻击,利用网络协议的漏洞来发动DOS攻击;可靠性不强,需要经常的耗时不短的重启;管理不方便,管理BIND服务器需要系统和网络管理员的大量时间;可扩展性有限,即使BIND 9并不适合当今的大规模的网络;出了问题找不到人解决,因为使用的是免费程序,找不到人为这样的程序负责。

下一代DNS系统能做什么?  

  针对目前要解决的问题,Nominum公司推出了下一代DNS系统Foundation。按照功能划分,包括CNS(Caching Name Server)、ANS(Authoritative Name Server)和FMC(Foundation Management Center)。CNS完成缓存(Cache)功能,ANS完成授权(Authority)功能,FMC完成对系统的图形化管理。其中授权域名服务器应该部署在宽带骨干网中,冗余备份以提高可靠性。缓存域名服务器应当部署在靠近客户端的地方。Foundation把缓存功能和授权功能分开处理,这对于提高DNS的性能、可靠性和安全性等方面是十分重要的。

  Foundation CNS 是一高性能的缓存域名服务器,可以提供电信级的服务,响应大量客户端的域名解析请求。相对于其他DNS 服务器来说,对成功的或不成功的请求,CNS 都可以提供更快的请求响应时间。CNS 还提供了对网络中广泛传播的针对UNIX 系统的各种攻击的防范措施,此外,CNS还支持一些高级设置,比如Global forwarding、Domain-specific forwarding 和IPv6 等。
Foundation ANS 是一授权域名服务器,符合所有的DNS 授权服务器标准,包括DNSSEC、Notify、Dynamic Update、EDNS、IXFR 和IPv6,提高可支持上百万的域名和上百万的区域,可进行灵活、快速地配置,并采用了Berkeley 的数据库技术和更多的安全措施。由于采用了很多先进的技术,ANS 可以提供极高的性能和可靠性。

  Nominum的FMC是一个综合的IP网络地址管理系统,使得IP网络的部署和管理更为简单。FMC的管理对象包括DNS和DHCP服务器。其目标主要是提供一个统一的,可以管理CNS/ANS/BIND 系统的、方便易用的控制管理中心。通过其API,可以订制客户化的管理机制以及与其他管理系统的集成。该系统基于SUN 或者Linux 的平台和Oracle/HSQL 数据库,可以提供高的可靠性和扩展性。同时,该系统还支持SNMP。

Foundation 系统的特点

  Foundation 系统有着极高的处理能力。在Red Hat Linux、SuSE 或FreeBSD 系统下,CPU 为Pentium IV 2.4GHz 或更高,RAM 为1GB,磁盘空间2GB 以上的配置环境下,CNS 每秒可以处理88,000 个查询,ANS每秒可以处理66,000 查询。这表明了在相同硬件配置下Foundation 的查询速度大约是BIND 的4~8 倍,在相同的QPS (查询速度)的情况下,Foundation的CPU 利用率大约是BIND 的1/5,RAM 的利用率也大大提高,而且其在高峰期的查询丢失率也比BIND 大大降低。

  Foundation 系统相对于BIND 有着不可比拟的安全性。首先,Foundation 的处理能力大大强于BIND,所以对于很多针对DNS 系统的攻击,Foundation 可以充分“吸收”。另外,由于对于一个响应的请求时间大大缩短,也在一定程度上较少了被所谓的“Man in the Middle”攻击的可能性。其次,Foundation 是全新编写的程序,没有共享BIND 的任何代码。再次,BIND 的一个有毒的或者非法的网站域名代替一个经常被访问的网站的域名,就会感染授权服务的数据,这是灾难性的。而在Foundation 中,缓存服务器和授权服务器是分开的,这就避免了这样的问题。而且在CNS 中还可以对特定的非法记录进行删除操作,这也是BIND所不具备的功能。最后,Foundation实现了很多先进的安全技术,使得该DNS系统更加安全,这包括:DNSSEC(DNS Security Extension)、Upstream Recursion Control(这一技术保证系统遭到很多攻击时,CNS 仍能够正常的工作)、Glue Segregation(这种技术可防止缓存中毒)、RV(Response Validation)(可以通过RV防止广为人知的弱点攻击,CNS是唯一可以防止该攻击的缓存域名服务器)。
Foundation 的可靠性。Foundation 系统在对配置进行修改的可靠性;在配置过程中,系统还会自动给出提示,对错误进行修改,无需重新启动;Foundation 系统的重启时间相对BIND 要短,进程加载只需要一秒钟。

  Foundation 系统灵活的可扩展性。首先,由于Foundation 系统提供极高的处理能可以为更大规模的网络服务。其次,Foundation 系统可以处0,000 个左右,而每个区域的容量可达100,000,000 条记录左右,这些都远远大于BIND所能够处理的数目,大约是其100 倍。
Foundation 系统提供很多管理信息。可查询速度计参数,比如recursion-contexts-in-use、uptime、user-time、system-time等等;ANS可以统计的信息包括服务器收到的关于每种资源记录类型的请求的数目,也可以随时提供Slaves6的状态。另外,ANS的区域配置模板是一种非常强大的工具,能够有效并容易地创建DNS的配置。此外,ANS可以提供很多其他的统计参数,也和CNS 一样支持命令行,其它DNS 系统都不提供这样的功能。其次,Foundation 系统还可以通过FMC 提供更多的管理功能:定义DNS 数据(Defining DNS Data)、导入DNS 数据(Importing DNS Data)、配置DNS 数据(Deploying DNS Data)、对应DNS 和IP(Bridging DNS and IP),其中对应DNS 和IP 被应用在动态DNS(DDNS)中。

   支持众多的新技术。Foundation 还支持很多新技术,包括:命令信道(Command channel)、DNSSEC、动态DNS、EDNS(Extended DNS)、NOTIFY 、IXFR、负载均衡技术等。如:命令信道技术也就是命令行方式的管理和控制,可以在服务器仍然正常工作的同时,控制服务器、更改配置和其他的应用进行交互。动态DNS则是可以自动对其更新等纪录进行更新。再如负载均衡技术:CNS/ANS 提供一定的负载均衡能力,但是需要两个条件配合,Anycast和BGP,也就意味着主和从服务器需要是同一个IP 地址。在满足了这两个条件后,CNS/ANS 可在服务器组间均衡流量。

Foundation 对环境的要求

    Foundation 系统在不同的硬件配置下的性能表示是不同的,依情况而定。在使用Foundation 系统为DNS 的时候,一般没有必要附加任何硬件设备如防火墙、负载均衡设备等。在性能方面,我们的优越性已是毫无疑问,在通常情况下,可以轻松地处理业务负荷;在安全方面,我们符合所有的DNS 基于安全方面的标准采用了更多的技术保证安全,我们也不会受到任何知道BIND 安全弱点的人的攻击;在通信量非常大的情况下,可在Foundation 前端采用负载均衡系统。  

带给客户超值的投资回报
“尽管Foundation有着BIND无可比拟的技术优势,不过BIND的巨大优势在于它是免费的系统,因此决定采用Foundation替代BIND还是需要考虑的。”Paul V. Mockapetris博士说:“那么我们现在就再来分析一下采用BIND和Foundation所带来的其他方面的成本对比。”

  就服务器硬件成本来说,Foundation 的性能是BIND 的几倍,所以一般来说,采用Foundation 后,服务器的数量至少可以减少一半。另外,其他方面的成本节省也不能忽视,包括空调、供电、机架。在一般情况下,采用Foundation 系统后,每台服务器第一年最少节省$8,000。

  服务器管理成本,虽然BIND系统是免费的,但是由于其代码实际上也是免费的,所以造成了很多管理BIND 系统方面的成本。BIND 系统每4 到6 个月就会发布补丁来弥补其不断出现的新问题,这就意味着维护DNS工程师必须等到深夜才能对系统去进行升级以尽量减少影响。减少了服务器的数目,也就意味着减少了维护的工作量。采用了Foundation 系统后,每台服务器节省的成本大概是$100,000*5%=$5,000。

  业务连续性成本,由于BIND系统固有的技术问题,常使DNS系统经常不可用,这直接导致Internet 的应用变慢甚至使整个网络业务瘫痪。对于电信运营商和ISP来说和一般的企业来说,代价都是惨重的。但采用了Foundation 系统后,由于业务连续性每年节省的成本大约是$150,000*100%=$150,000。

  从以上可以看出,尽管BIND 系统本身是免费的,可采用了Foundation 系统后,在其他方面节省的投入远远超过Foundation 本身的成本。
阅读(2679) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~