DNS(domain name system ):
DNS为应用层协议的原因:
①使用客户机/服务器的模式在通信的终端运行。
②在端系统之间通过下面的端到端运输层协议传送DNS报文。
DNS系统的组成:
①一个分层的DNS server 实现的分布式数据库。
②一个允许主机查询分布式数据库的应用层协议。
DNS服务器通常是运行着BIND(berkeley internet name domain)软件的unix服务器。
DNS运行在UDP上,且为其他应用层协议所使用(如HTTP 、FTP、SMTP)。
用浏览器描述DNS工作过程:
①同一台主机运行着DNS应用的客户端。
②浏览器将域名传输给DNS应用的客户端。
③DNS客户机端向DNS服务器发送一个包含主机名的DNS请求。
④DNS服务器返回一个(或一个集合)对应的主机IP地址。
⑤HTTP通过返回的IP与对应主机建立TCP连接。
DNS的其他功能:
①主机别名(host aliasing):主机由唯一的规范主机名(和一个与之对应的IP集),但可能有多个与之对应的简单的易于记忆的别名,
DNS将其转化为规范主机名,从而可以获得对应的IP。
②邮件服务器别名。
③负载分配:同一域名下可能有不同的主机,位于不同的地理位置,有不同的IP地址。DNS返回IP地址是很多时候返回的是IP集合。DNS可以通过改变
IP集合中IP的顺序从而改变不同服务器的负载(因为应用程序一般选择IP集合前面的IP)。
客户机程序>...........①提供目的主机的域名............>DNS客户端应用程序>......②53号端口 UDP DNS 查询报文........>DNS服务器>.
^ . ^ .
^ ....................④与目的主机相对应的ip集 < <....................................................③DNS 应答报文.......
DNS系统 的实现:
单DNS服务器:
缺点:①单点故障。
②通信容量巨大(traffic volume)
③远距离集中式数据库。
④维护困难。
分布式层次数据库:
13个根DNS服务器
|
.....................................................
顶级域名服务器 (TLD) *.com *.org *.cn .........
| | |
DNS服务器/权威DNS服务器 google.com....... ....... .........
顶级域名服务器:top level domain 简称TLD。
本地DNS服务器:一般而言,本地DNS服务器并不属于DNS系统,本地DNS服务器只是相当于一种缓存。
权威域名服务器:每一个在internet中的有公共可访问主机的组织或机构,必须提供公共可访问的DNS记录,并将之存放在权威DNS服务器中。
权威DNS服务器可以是本组织的服务器也可以租用其他组织的服务器。权威DNS服务器位于DNS系统的底层,可以返回对应主机的IP。
权威DNS存在的理由:每一个机构都有很多的主机,这些主机可能位于不同的地理位置,有不同的IP地址,但他们可能有相同的域名,如果这些
信息全部由顶级域名服务器进行管理,工作量太大。
DNS的查询可以使用递归形式和迭代查询:
递归查询:每次查询都使用相同的步骤,但这些步骤是串行的,即只有下一步的操作完成,上一步的操作才能执行。
迭代查询:每次查询都使用相同的步骤,但每次查询之间没有什么联系,某一步的查询是否完成对其他的查询没有影响。
DNS记录(resource record 简称RR)的格式:
(name value type TTL )
TTL(time to live )用于记录本地记录的生存时间,当TTL大于一个值时,记录会被删除。
DNS记录的四种形式:
(name value A TTL):value为主机名name对应的IP
(name value NS TTL):value为主机name所属的权威DNS服务器的主机名(不是IP地址)。很多机构的权威DNS服务器是租赁的。
(name value CNME TTL):value为主机别名为name的规范主机名。
(name value MX TTL):value 为主机别名为name的主机的邮件服务器的规范主机名。
相同的别名但当请求不同的DNS记录时会获得不同的DNS记录,可能是主机的规范主机名或邮件服务器的规范主机名。
DNS服务只有两种报文,分别为查询报文和回答报文,且二者的报文格式是相同的。回答报文可能有多个,因为同一个域名可能有多个IP。
注册一个全新的域名最少要向对应的TLD注入A型与NS型两种记录。
如果一台DNS服务器是某个主机的权威DNS服务器其中含有一个A型记录。
如果一台DNS服务器不是某个主机的权威DNS服务器,则其中含有两条记录:①NS型记录,记录对应主机所属的权威DNS服务器的主机名。
②A型记录,①中权威DNS服务器的IP。
大部分的DNS洪泛攻击可以由本地DNS缓存缓解。
中间人攻击:
中间人攻击(Man-in-the-MiddleAttack,简称“MITM攻击”)是一种“间接”的入侵攻击。
这种攻击模式是通过各种技术手段将受入侵者控制的一台计算机虚拟放置在网络连接中的两台通信终端之间,这台计算机就称为“中间人”。