至千万级域名系统; 下面我们将讨论采用路由交换技术实现DNS系统部署的方案,Anycast任播应用在DNS服务中,将用户使用的DNS IP地址通过路由宣告的方式,从所有的DNS服务器向其直连的三层交换机或路由器广播;如果该DNS IP在运营商内部多个节点广播,又可实现用户的就近访问,提高了用户的上网体验和运营商的服务质量;在节点内某台服务器故障时,可以通过定制的健康检查机制自动停止广播路由,以实现负载由内部的其它服务器接管;在某个节点故障时,即可通过骨干路由策略自动将该节点的用户请求转到临近节点或核心节点实现冗余。采用该技术构建的DNS系统可以通过灵活扩展节点和服务器的方式,非常方便的将DNS系统负载能力提高到支持千万级用户规模。 下面是经典DNS部署拓扑图: (一)以解决基本负载能力为目的
(二)以解决四层性能瓶颈,提高系统应对突发流量冲击和高可用性为目的
在采用anycast部署的集中架构时,在遭遇突发流量攻击时,可以避免四层交换机瓶颈,并将攻击流量根据来源在节点内部通过几台DNS的服务振荡实现攻击流量吸震,避免整个节点系统崩溃。
(三)以提高用户体验和应对大规模网络攻击为目的
采用anycast分布式部署时,部署DNS系统的节点内部用户实现就近访问,提高了用户体验和运营商的网络服务质量;在局部发生病毒爆发和攻击时,可以在节点内吸震方式避免攻击影响其他节点;在节点设备或服务故障时,可以自动路由到核心节点或临近节点实现服务;在遭遇大规模攻击时,可通过根据来源节点内部振荡和节点间振荡控制攻击流量在局限的节点内;如:F.ROOT在全球的部署,来自某个国家或地区的流量完全被隔离在该地区,而不会波及全球的根域名系统。提高了域名系统的稳定性、可用性和抗攻击性。
二)、安全、稳定、高性能的系统平台以及系统安全策略管理是域名服务稳定的保障 (一)操作系统
目前国内大部分运营商采用的域名解析软件为ISC维护的开源BIND软件,该软件支持广泛的Unix系统和Windows Server;长期的应用和维护过程中发现在Sun的Solaris系统可以更加稳定的支持域名解析服务;而AIX、HPUnix和Linux系统在支持大用户量访问时经常会出现内存溢出的等问题;在处理能力上Linux表现更强,但因存在进程不稳定的现象,在运营商DNS系统中应用并不广泛; 操作系统安全也是DNS服务安全的基础,一般需要考虑如下内容:定期升级系统Patch、关闭所有无关服务端口、限制登录、口令维护等,也可增加第三方的安全控制系统和入侵监控防护等。 (二)硬件平台
域名服务对CPU的计算要求比较高,在实际应用中选择基于Intel、AMD的PC架构服务器可以获得较好的性价比。
三)、安全、可维护优化、适应国内运营商本地化应用的域名解析软件是域名服务的基础
在域名解析软件选择上,考虑使用使用更为广泛的BIND,在全球域名解析系统占有率达80%以上,在国内可能达到90%以上;广泛的用户基础和开源的特点,使得运营商在使用时,可以随时分享世界各地针对BIND发现的各种问题,并可以获得较快的补丁和升级服务;同时因为开源的原因,我们有机会发现其问题的根源,并可以通过自行修改的方式获得解决。 支持运营商业务的灵活性和复杂性上,也是许多拆分注册和递归的解析软件不能胜任的。 在ISC发布新的BIND版本是,及时进行稳定和性能的测试,并选择适合的版本做升级。 四)、完善、及时的监控维护以及分析手段是保证最终域名服务稳定运行的必备条件 (一)服务、性能监控
建立监控、统计分析等手段,实时了解DNS系统的负载情况、响应状态、解析成功率、cache命中率等各项域名服务指标;服务器CPU、Mem、Disk以及网卡流入、流出等信息;统
计分析负载规律趋势,为DNS系统进一步完善提供数据基础; (二)异常访问监控与防护
建立异常访问或攻击的监测手段和自动防护等措施,在发生网络异常时,系统能具备自我防护和自我恢复的能力;并记录异常行为数据,为进一步分析攻击特点,制定更准确的应急方案提供依据。 (三)告警手段
根据预定规则,监测域名服务的重要指标,在达到预警阀值时,能及时告警到管理员或支持厂家,在服务最终崩溃前得到及时有效的处理,避免域名解析故障。 (四)用户行为分析
建立基于用户来源和访问内容的规律分析机制,可以为业务发展方向提供数据基础;在网络发生异常时,能够及时发现问题的根源;如:5.19暴风事件,通过类似系统,可以立即发现暴风的域名出现问题,并通过监控分析,确认暴风当时的软件设计机制缺陷等。
总结:
DNS是Internet及Internet上的一项基础服务,它为网络应用程序提供域名解析及服务(资源)定位服务。在理解DNS工作原理基础上,优化DNS,可以缩短DNS查询响应时间,减少不必要的网络流量,同时对于各种分布式服务的部署都有一定的借鉴意义。 参考文献
【1】 谢希仁 《计算机网络(第五版)》电子工业出版社 【2】 RFC1034 RFC1035 第一页