1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 金庸武功之“天罗地网势”DNS-那些事儿

金庸武功之“天罗地网势”DNS-那些事儿

时间:2023-03-16 14:25:45

相关推荐

金庸武功之“天罗地网势”DNS-那些事儿

一.DNS为何物

DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

二.递归查询和迭代查询的区别

(1)递归查询

递归查询是一种DNS 服务器的查询模式,在该模式下DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机。如果DNS 服务器本地没有存储查询DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。

(2)迭代查询

DNS 服务器另外一种查询方式为迭代查询,DNS 服务器会向客户机提供其他能够解析查询请求的DNS 服务器地址,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果,而是告诉客户机另一台DNS 服务器地址,客户机再向这台DNS 服务器提交请求,依次循环直到返回查询的结果

为止。

三.主辅DNS

主-辅DNS服务器:

主DNS服务器:维护所负责解析的域数据库的那台服务器;读写操作均可进行;

从DNS服务器:从主DNS服务器那里或其它的从DNS服务器那里“复制”一份解析库;但只能进行读操作;

“复制”操作的实施方式:

序列号:serial, 也即是数据库的版本号;主服务器数据库内容发生变化时,其版本号递增;

刷新时间间隔:refresh, 从服务器每多久到主服务器检查序列号更新状况;

重试时间间隔:retry, 从服务器从主服务器请求同步解析库失败时,再次发起尝试请求的时间间隔;

过期时长:expire,从服务器始终联系不到主服务器时,多久之后放弃从主服务器同步数据;停止提 供服务;

否定答案的缓存时长:

主服务器”通知“从服务器随时更新数据;

区域传送:

全量传送:axfr, 传送整个数据库;

增量传送:ixfr, 仅传送变量的数据;

四.区域数据库文件

区域数据库文件:

资源记录:Resource Record, 简称rr;

记录有类型:A, AAAA, PTR, SOA, NS, CNAME, MX

SOA:Start Of Authority,起始授权记录; 一个区域解析库有且只能有一个SOA记录,而且必须放在第一条;

NS:Name Service,域名服务记录;一个区域解析库可以有多个NS记录;其中一个为主的;

A: Address, 地址记录,FQDN --> IPv4;

AAAA:地址记录, FQDN --> IPv6;

CNAME:Canonical Name,别名记录;

PTR:Pointer,IP --> FQDN

MX:Mail eXchanger,邮件交换器;

优先级:0-99,数字越小优先级越高;

资源记录的定义格式:

语法:name [TTL] INRR_TYPE value

SOA:

name: 当前区域的名字;例如”.”,或者“2.3.4.in-addr.arpa.”;

value:有多部分组成

(1) 当前区域的区域名称(也可以使用主DNS服务器名称);

(2) 当前区域管理员的邮箱地址;但地址中不能使用@符号,一般使用点号来替代;

(3) (主从服务协调属性的定义以及否定答案的TTL)

例如:

. 86400 IN SOA . . (

010801; serial

2H ; refresh

10M ; retry

1W; expire

1D; negative answer ttl

NS:

name: 当前区域的区域名称

value:当前区域的某DNS服务器的名字,例如.;

注意:一个区域可以有多个ns记录;

例如:

. 86400 IN NS .

. 86400 IN NS .

MX:

name: 当前区域的区域名称

value:当前区域某邮件交换器的主机名;

注意:MX记录可以有多个;但每个记录的value之前应该有一个数字表示其优先级;

例如:

. IN MX 10 .

. IN MX 20 .

A:

name:某FQDN,例如.

value:某IPv4地址;

例如:

.IN A1.1.1.1

.IN A1.1.1.2

.IN A1.1.1.1

AAAA:

name:FQDN

value: IPv6

PTR:

name:IP地址,有特定格式,IP反过来写,而且加特定后缀;例如1.2.3.4的记录应该写为4.3.2.1.in-addr.arpa.;

value:FQND

例如:

4.3.2.1.in-addr.arpa. IN .

CNAME:

name:FQDN格式的别名;

value:FQDN格式的正式名字;

例如:

. IN CNAME .

注意:

(1) TTL可以从全局继承;

(2) @表示当前区域的名称;

(3) 相邻的两条记录其name相同时,后面的可省略;

(4) 对于正向区域来说,各MX,NS等类型的记录的value为FQDN,此FQDN应该有一个A记录;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。