当前位置:文档之家› DNS协议原理与智能DNS

DNS协议原理与智能DNS


DNS协议报文(9)
随后的4个16bit字段说明最后4个变长字段 中包含的条目数。对于查询报文,问题数 通常是1,其他三项为0。类似地,对于应 答报文,回答数至少是1,剩余两项可以是 0或非0
DNS协议报文(10)
DNS查询报文中每个查询问题的格式
DNS协议报文(11)
查询名:要查找的名字 查询类:通常值为1,表示是互联网的地址, 也就是IP协议族的地址 查询类型:有很多种查询类型,一般最常 用的查询类型是A类型(表示查找域名对应 的IP地址)和PTR类型(表示查找IP地址对 应的域名)
ARPA域的作用
DNS服务器不仅可以根据域名解析出IP地 址,而且也可以根据IP地址解析出域名来, 这个是怎么实现的呢?在第10页中,我专 门的列出了一个这样的域in-arpa.arpa, 根据 该域我们就可以根据ip地址解析对应的域名 了。是这样实现的,在DNS的服务器中, 将要解析的点分十进制的ip地址反过来写, 然后将该域名跟在这个反写的IP地址的后面 就形成一个反向查询域,然后客户端就可 以根据该ip地址来解析对应的域名了。
DNS协议报文(1)
DNS报文的ip封装格式
UDP Header DNS
IP Header
DNS协议报文(2)
从上图中可以看出: DNS处于IP分层结构的应用层,是一种应 用层协议 DNS协议数据单元封装在UDP数据报中 DNS服务器端使用公用端口号53监听客户 端的连接请求
DNS协议报文(3)
DNS协议报文结构
DNS协议报文(4)
从上图可以看出 DNS数据包由12字节的固定报文头和可变 长度的报文头组成 标识字段:占两个字节,由客户程序设 置,并由服务器返回结果 标志字段:该字段占两个字节长,被细分 成8个字段,如下图所示:
DNS协议报文(5)
标志字段:
DNS协议报文(6)
DNS的工作模式(4)
迭代模式: DNS服务器收到解析请求,首先在本地的 数据库中查找是否有相应的资源记录,如 果没有,则向客户提供另外一个DNS服务 器的地址,客户负责把解析请求发送给新 的DNS服务器地址
DNS的工作模式(5)
迭代模式的好处: 对于DNS服务器来说,比较简单,因为它 只需查找本地的数据库
其他应用场景
1、镜象网站:在网通及电信的机房放置多个相同的镜象站点, 让不同的地方 客户访问不同的站点。 2、负载均衡:对于流量比较大的网站,可以通过该功能把流量分配到几台不 同的服务器上,以提高网站的运行速度。
3、个性化站点服务:比如通过IP表的重新定义, 让国外的客户自动访问英文
版的网站; 让国内的客户自动访问中文版的网站。 4、CDN加速器:通过与squid等WEB缓存软件结合实现CDN加速器。
DNS概述
使用IP地址访问互连网太麻烦了,并且人们也 不愿意记忆这些没有意义的数字,怎么办? 于是有人便给这些没有意义的ip地址赋予一 个便于自己记忆的名字 让这些名字和ip地址一一对应起来 并且将这种对应关系保存在自己的电脑里 面
DNS概述
通过名字访问互连网 做好上述的准备工作之后,我们便可以通过 名字访问互连网了 我们访问互连网时直接输入我们存储在计 算机中的名字,然后通过一个程序将这些名 字转换成计算机熟悉的ip地址 不过这种方式已经不适合时代的发展了,我 们现在使用更高级的DNS来做这件事情
智能DNS的最原始需求
• 什么是智能DNS
智能DNS解析是针对目前电信与网通互联互通不畅的问题推出的一种DNS 解决方案。具体实现是:把同样的域名如的A记录分别设置指向网通 和电信IP,当网通的客户访问时,智能DNS会自动判断访问者来路,并返回网 通服务器的IP地址;电信的客户访问时会自动返回电信的IP地址。 这样,就可以避免网通的客户去访问电信的网络,以及电信的客户去 访问网通的网络,很好的解决了客户跨网访问不畅的问题。当然亦可加入多 IP,由智能DNS自动“选路”。
DNS协议报文(12)
DNS响应报文种的资源记录格式如下:
DNS协议报文(13)
域名:和前面的查询问题格式种的查询名 相同 类型:跟前面查询问题格式中的查询类型 相同 类: 同前面查询问题格式中的查询类
DNS协议报文(14)
生存时间:客户程序保存该资源记录的秒 数 资源数据长度:说明后面资源数据的数量 资源数据:服务器端返回给客户端的记录 数据
Server
Client
Reply: 的ip地址是1.1.1.1
Server
DNS的解析过程(3)
对上图的说明如下: Client发出请求报文,要求Server解析 主机的ip地址 DNS Server收到该请求之后,在自己的数据库中 寻找主机的ip地址 DNS服务器在自己的数据库中寻找到相应的记录, 发送应答报文给Client Client收到自己需要的内容之后,就不会再找 Server的麻烦了,这样一个解析过程便完成了
实际示例
蓝色箭头为询问地址 返回ip地址1.1.1.1 智能dns
返回地址2.2.2.2
返回地址2.2.2.2
网通dns 返回地址1.1.1.1
教育网dns 返回地址2.2.2.2
电信及其他dns 返回地址2.2.2.2
网通用户
教育网用户
电信用户及其他
网通服务器 1.1.1.1
DNS重要概念之三(续)
树根
Arpa
cn
edu

In-arpa
edu
com
DNS重要概念之三(续)
从上图我们可以看出以下的一些内容 在分层的域名系统中,最顶层是没有命名 的树根 第二层属于顶级域 第三层属于第二级域 依次类推,直至叶子节点
DNS重要概念之三(续)
将从叶子节点开始直到树根的每一个节点 的名字用“.”连接起来,便形成了一个完整 的域名,树根的名字用“.”表示。
实现原理--具体案例
• 主配置文件 named.conf
options { directory "/var/named"; pid-file "/tmp/named.pid"; version "Unsupported on this platform"; allow-transfer { 127.0.0.1; }; }; include "cnc.conf"; include "edu.conf"; view "cnc"{ match-clients{ CNC;}; recursion no; zone "" IN { type master; file ""; allow-update { none; }; }; view "edu"{ match-clients{ EDU;}; recursion no; zone "" IN { type master; file ""; allow-update { none; }; }; view "any"{ match-clients{any;}; recursion no; zone "" IN { type master; file ".tel"; allow-update { none; }; };
DNS协议原理
DNSNS的历史说起
DNS概述
使用IP地址访问互连网 在Internet网中使用IP地址唯一的标识一台 主机 如果要去互联网上逛逛的话当然可以通过IP 地址访问互联网上的一切服务 互联网上的服务很多,每一种服务我们都有 可能需要,那么太多的ip地址需要记忆了
DNS的解析过程(1)
DNS是一种典型的C/S结构 由Client向指定的DNS Server发出DNS请 求报文,Server收到该请求报文之后,会回 给Client一个应答报文,满足Client的域名 解析要求 图示如下
DNS的解析过程(2)
Client
Request: 主机的ip是多少?
DNS概述
什么是DNS DNS:域名系统(Domain Name System),是 Internet网中承担域名解析工作的一群计算 机的集合,这些计算机按照一定的组织结构 被组织起来,分工合作共同在Internet网上完 成域名解析的任务!
DNS重要概念之一
域: 域是一个逻辑上的概念 在初始瓜分互联网的时候,Internet组织将世界上 的计算机进行分类一共是划分了这样的若干个大 类,如com、gov、org、net、mil、edu、int、cn、 us等等 每一个大类我们称之为一个域 当然每一个大类里面我们又可以划分出比较小一 点的类出来,也就是子域,所以说,域是可以嵌套 的,大的域包含小的域,小的域又可以包含更小 的域。
DNS的工作模式(1)
DNS为什么要使用分层的结构? 网络上的每一台DNS服务器不可能保存所 有主机的域名记录 使用分层结构之后,每台DNS服务器只用 维护跟自己相关域的主机的信息
DNS的工作模式(2)
在本地域的DNS Server上查询一个不存在的 主机的信息时候该怎么办呢?在DNS域名解 析系统中,提出了两种解析域名的方式,分 别是: 第归解析方式 迭代解析方式
DNS重要概念之二
域名: 在每一个域里面,都有很多的主机,每个 主机都有一个主机名 我们将这个在这个主机名后面冠上该主机 所在的域的名称就是该主机在Internet网络 上的域名。

DNS重要概念之三
域名系统: 域名系统是一个分层的组织结构 域名系统从外形上看更像是一颗倒长的树 下图便是域名系统的一部分
实现原理
• 工作原理
1、定义IP表:定义各个不同客户群的IP表,以区别客户来源。 2、定义智能DNS解析:为每一种不同的客户来源定义一条个性化的 DNS解析记录。 使他们之间访问的IP地址不同
相关主题