DNS排序解析优化
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DNS排序解析优化
【摘要】本文简单介绍DNS排序解析优化。
【关键词】DNS;解析
一、网络现状
目前互联网行业已经成为通信运营商发展中的起到了举足轻重的作用,越来越成为人们关注的焦点,用户的通信模式也更多的走向了互联网。如何更好的发展互联网,提高网络服务是每一个通信运营商不得不面对的问题。全国互联网用户呈几何倍数增长,用户需求也逐渐增多,网络业务也日渐繁重。新疆铁通公司的互联网经过了多年的发展,逐渐走向成熟。
用户数为20万,其中出疆的互联网出口分别为总部出口4个2.5G通道和一个10G通道,以及8个租用第三方的GE通道。通过以上出口来实现新疆铁通互联网用户上网、通信。
新疆铁通互联网通过总部与国内ISP及国际Internet相连。目前新疆铁通整个网络的系统分为三层:核心层、汇接层、接入层,核心层:核心层设备均选用华为NE5000E作为核心路由设备。支持各种广域网的接口和局域网接口,可以满足用户各种广域网的应用,同时华为骨干路由器网络接口模块基本上是通用的。骨干节点在网络中起三个主要功能:连接骨干网络,构成骨干网络通道、连接各种接入节点,包括信息源接入(主机)、设置到省网的出口。汇接层:汇接层在网络规划中是十分重要的,它承担了接入层的数据汇聚,提供强大的交换和转发能力。乌鲁木齐的高性能三层交换机设备为华为的93系列。接入层:现在各种BAS和DSLAM
下图为新疆铁通骨干互联网拓扑图:
二、网络问题
为了能更好的提供网络复苏,让用户能够更快的访问网页,提供更好的网络感受,新疆铁通公司自建两台DNS域名服务器,分别是DNS1域名服务器地址是211.98.127.101;DNS2域名服务器地址是:211.98.127.102,两台服务器分别下挂在省核心交换机9306下。DNS服务器上级DNS域名服务器分别对应的是铁通总部DNS服务器:211.98.4.1与211.98.2.4。通过引用总部的DNS域名服务器对网站的域名进行地址解析,将解析后的IP地址发给客户端。
DNS 是域名系统(Domain Name System)的缩写,是因特网的一项核心服务,是由解析器以及域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互
联网,而不用去记住能够被机器直接读取的IP数串。用户通过DNS域名解析服务器来访问网站,DNS域名服务器提供域名与IP地址的一对一映射。
域名结构
通常Internet 主机域名的一般结构为:主机名.三级域名.二级域名.顶级域名。Internet 的顶级域名由Internet网络协会域名注册查询负责网络地址分配的委员会进行登记和管理,它还为Internet的每一台主机分配唯一的IP 地址。全世界现有三个大的网络信息中心:位于美国的Inter-NIC,负责美国及其他地区;位于荷兰的RIPE-NIC,负责欧洲地区;位于日本的APNIC ,负责亚太地区。在整个INTERNET网络中,域名占据着极其重要的地位,因为它有着一个很严谨的金字塔似的层级结构模式,通常又被称为命名空间。
DNS查询过程
1)客户端将的查询提交给本地DNS服务器(递归查询)。
2)本地DNS服务器检查区域数据库,由于该服务器没有的授权,它将查询传递到根服务器(“.”DNS服务器),请求解析主机名称。根名称服务器把“com”DNS服务器IP地址返回给本地DNS服务器(迭代查询)。
3)本地DNS服务器将请求发给“com”DNS服务器,该服务器根据请求将“”DNS服务器IP地址返回给本地DNS服务器(迭代查询)。
4)本地DNS服务器向“”DNS服务器发送请求,由于该服务器具有“”记录,它将的IP地址返回给本地DNS服务器。
5)本地DNS服务器将的IP地址发送给客户端。
DNS查询分类
1)按查询方式:
(1)递归查询。当DNS服务器接收到查询请求时,不论成功或失败,都会做出对应的响应。(发生在DNS客户端与DNS服务器之间)
(2)迭代查询。DNS服务器根据自己的高速缓存或区域的数据,以最佳结果响应。如果DNS服务器无法解析,它可能返回一个指针。指针指向下级域名的DNS服务器,继续该过程,直到找到拥有所查询名字的DNS服务器,或知道出错、超时为止。(发生在DNS服务器之间)
2)按内容分类
(1)正向查询:由域名查找IP地址。
(2)反向查询:有IP地址查找域名。
由于网站的域名与IP地址对应一般都是一对多的关系,DNS的机制里一个网站域名对应多个IP地址是采用轮询关系。以新浪网站为例,DNS解析服务器新浪网站的地址有许多个,里面既包括铁通的地址,也有电信、联通、移动的地址。由于不能优先选择DNS解析出来的铁通和移动IP地址,采用轮询关系会造成铁通用户打开新浪网站会访问解析出来的电信地址,有时候会访问解析出来的网通地址、有时候会解析出来铁通、移动的地址,这样铁通用户不能访问新浪网站不能访问铁通本网里的新浪服务器,必须出网,通过他网的新浪服务器来访问,会造成网络质量下降,增加网间摊分费用。
三、解决方案
为解决上述问题,在DNS服务器的BIND的软件里更改sortlist的排序机制,一个DNS请求的返回的地址里面包含多条记录(A记录)组成,它们形成了一个地址记录集。用户通过客户端向服务器发出请求,服务器回复的地址记录顺序是随机的(BIND9默认是采用的轮询机制)。排序功能是基于配置文件sortlist 在DNS服务器上实现的,即在配置文件named.conf里增加两个文件cmcc-all.conf 和ctt-all.conf文件,在这两个文件里分别添加移动的IP地址段和铁通的IP地址段,这样增加后DNS解析时会通过sortlist优先选择铁通和移动的地址。当DNS 解析出多个IP地址时,包括电信、网通、铁通地址时,sortlist会在解析出来的地址中先筛选铁通地址,即给用户返回铁通地址;如果解析出来的网站地址不存在铁通、移动地址,再进行电信或者网通的IP地址轮询。定义该两个文件时,需要定义中国铁通IP地址列表和中国移动IP地址列表,该列表需要统一管理,避免数据不同步引发个别系统不能向用户提供服务;该功能主要针对DNS系统设定安全服务策略,禁止非本地运营商用户使用DNS系统做递归查询,避免遭到非本地用户对我们的DNS系统发起强制递归攻击。
具体配置如下:
四、实施效果
措施实施前:
例如:一个铁通用户123.80.1.1/24的客户端向DNS服务器发送了一个的请求,DNS服务器经过查看缓存或递归得知 解析的结果中,即有铁通或移动的地址,同时还有电信、网通的地址.通过DNS轮询机制,就有可能选择不上铁通和移动地址,而选择电信的地址,去外网访问电信的地址。
措施实施后:
增加解析排序sortlist功能后,铁通用户123.80.1.1/24的客户端向DNS服务器发送了一个的获取新浪解析地址的请求,DNS服务器通过sortlist的排序机制