linux------DNS域名解析

一、什么是域名解析

域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换过程。域名的解析工作由DNS服务器完成。

域名解析也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。

互联网中的地址是数字的IP地址,域名解析的作用主要就是为了便于记忆。

二、域名解析主要内容

在域名注册商那里注册了域名之后如何才能看到自己的网站内容,用一个专业术语就叫“域名解析”。

域名是为了方便记忆而专门建立的一套地址转换系统,要访问一台互联网上的服务器,最终还必须通过IP地址来实现,域名解析就是将域名重新转换为IP地址的过程。一个域名对应一个IP地址,一个IP地址可以对应多个域名;所以多个域名可以同时被解析到一个IP地址。域名解析需要由专门的域名解析服务器(DNS)来完成。

解析过程,比如,一个域名为:abc.com,是想看到这个现HTTP服务,如果要访问网站,就要进行解析,首先在域名注册商那里通过专门的DNS服务器解析到一个WEB服务器的一个固定IP上:211.214.1.XXX,然后,通过WEB服务器来接收这个域名,把abc.com这个域名映射到这台服务器上。那么,输入abc.com这个域名就可以实现访问网站内容了.即实现了域名解析的全过程;

人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是对应的,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。

域名解析协议(DNS)用来把便于人们记忆的主机域名和电子邮件地址映射为计算机易于识别的IP地址。DNS是一种c/s的结构,客户机就是用户用于查找一个名字对应的地址,而服务器通常用于为别人提供查询服务。

三、DNS服务器类型

  • 缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,

    但是没有自己控制的区域地址数据。构建缓存域名服务器时,必须设置根域或指定

    其他 DNS 服务器作为解析来源。

  • 主域名服务器:管理和维护所负责解析的域内解析库的服务器

  • 从域名服务器

    从主服务器或从服务器"复制"(区域传输)解析库副本

    序列号:解析库版本号,主服务器解析库变化时,其序列递增

    刷新时间间隔:从服务器从主服务器请求同步解析的时间间隔

    重试时间间隔:从服务器请求同步失败时,再次尝试时间间隔

    过期时长:从服务器联系不到主服务器时,多久后停止服务

    通知机制:主服务器解析库发生变化时,会主动通知从服务器

IPv4的根名称服务器:全球共13个负责解析根域的DNS服务器,美国10个,英国1,瑞典1,日本1

IPv6的根名称服务器:全球共25个,中国1主3从,美国1主2从

四、DNS原理及查询方式

1、查询方式

  • 递归查询:一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)

  • 迭代查询:一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需要发起多次查询。(需要自己动手)

2、查询原理

正向解析查询过程: ①先查本机的缓存记录 ②查询hosts文件 ③查询dns域名服务器,交给dns域名服务器处理 以上过程成为递归查询:我要一个答案你直接会给我结果 ④这个dns服务器可能是本地域名服务器,也有个缓存,如果有直接返回结果,如果没有则进行下一步 ⑤求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域服务器 ⑥求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器然他去找二级域服务器 ⑦求助二级域服务器,二级域服务器查询发现是我的主机,把查询到的ip地址返回给本地域名服务器 ⑧本地域名服务器将结果记录到缓存,然后把域名和ip的对应关系返回给客户端。

五、DNS服务器级别介绍(DNS的分布式互联网解析库 )

根. 根域名DNS服务器:专门负责根域名

一级DNS服务器:专门负责一级域名的解析(一般代表一种类型的组织机构或国家地区) .com(工商 企业) .net(网络供应商) .edu(教育机构) .cn(中国国家域名) .org(团体组织) .gov (政府部门)

二级DNS服务器:专门负责二级域名的解析 .net.cn .edu.cn .com.cn

子域名DNS服务器:专门负责子域名的解析 也称为三级域名 ina.com.cn .pku.edu.cn

主机站点 tts9 tts6 mail www

域名代理/注册/购买服务商 

新网,云服务器_网站建站_域名注册_虚拟主机_企业邮箱_新网知名的互联网基础应用服务提供商 万网,域名注册-工商财税-知识产权-资质备案-智能设计-网站建设-万网-阿里云旗下品牌 

中国互联,网站建设-加盟星-百度爱采购-腾讯企业邮箱

域名体系结构

所有的域名必须以点结尾 www.qq.com. www.baidu.com.

根域名(.)

一级域名:.cn(中国) .us .tw .kr(韩国) .jp(日本) .hk(香港)uk(英国) ........

二级域名:.com.cn(中国商业组织) edu.cn(教育机构) .org.cn(非盈利) .net.cn(中国运营商)

三级域名:sina.com.cn nb.com.cn haixi.com.cn .........

组织域:.com .org .net .CC 国家域:.cn .tw(台湾) .hk(香港) .iq .ir .jp(日本)

反向域

114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用。 8.8.8.8是GOOGLE公司提供的DNS,该地址全球通用,相对来说,更适合国外以及访问国外网站的用户使用 223.5.5.5 和 223.6.6.6:阿里云DNS IPV6 2400:3200::1 和 2400:3200:baba::1 江苏省南京市(中国电信) 首选DNS为:218.2.135.1 备用DNS为:61.147.37.1

六、linux中本地解析配置文件及windows中查询DNS缓存命令

Linux: /etc/hosts
windows: c/windows/system32/drivers/etc/hosts

windows系统查询dns缓存命令:ipconfig /displaydns
windows系统清理dns缓存命令:ipconfig /flushdns

linux清dns缓存需要安装nscd软件,启动、执行nscd -i hosts

[root@localhost ~]#vim /etc/nsswitch.conf
#修改dns的优先级
hosts:      files dns myhostname
#修改 files和 dns的先后  优先级就不同。如果files在前面,那么file优先级就比较高

示例:验证DNS与files的优先级

[root@localhost ~]# vim /etc/nsswitch.conf

hosts:      files dns myhostname        //现在是files优先级高


 说明dns优先级高

[root@localhost ~]#rpm -q --scripts bind
#查看安装脚本

七、正向解析及各种资源记录

区域解析库:由众多资源记录RR(Resource Record)组成

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

SOA:Start Of Authority,起始授权记录;一个区域解析库有且仅能有一个SOA记录,必须位于解

析库的第一条记录SOA,是起始授权机构记录,说明了在众多 NS 记录里哪一台才是主要的服务器。在任何DNS记录文件中,都是以SOA ( Startof Authority )记录开始。SOA资源记录表明此DNS名称服务器是该DNS域中数据信息的最佳来源。

A(internet Address):作用,域名解析成IP地址

AAAA(FQDN): --> IPV6

PTR(PoinTeR):反向解析,ip地址解析成域名

NS(Name Server):,专用于标明当前区域的DNS服务器,服务器类型为域名服务器

CNAME : Canonical Name,别名记录

MX(Mail eXchanger)邮件交换器

TXT:对域名进行标识和说明的一种方式,一般做验证记录时会使用此项,如:SPF(反垃圾邮

件)记录,https验证等

SOA记录与NS记录的区别:NS记录表示域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析;SOA记录设置一些数据版本和更新以及过期时间等信息。

1、SOA记录 

name: 当前区域的名字,例如"kgc.com."

value: 有多部分组成

注意:

  1. 当前区域的主DNS服务器的正向解析,也可以使用当前区域的名字

  2. 当前区域管理员的邮箱地址;但地址中不能使用@符号,一般用.替换

例如:admin.kgc.com

  1. 主从服务区域传输相关定义以及否定的答案的统一的TTL

范例:

$TTL 1D
@       IN SOA  master.kgc.com. admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum


 2、NS记录

name: 当前区域的名字

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

注意:

  1. 相邻的两个资源记录的name相同时,后续的可省略

  2. 对NS记录而言,任何一个ns记录后面的服务器名字,都应该在后续有一个A记录

  3. 一个区域可以有多个NS记录

范例

master IN NS kgc.com.

master IN NS kgc.com.

3、MX记录 

name: 当前区域的名字

value: 当前区域的某邮件服务器(smtp服务器)的主机名

注意:

  1. 一个区域内,MX记录可有多个;但每个记录的value之前应该有一个数字(0-99),表示此服务器的

优先级;数字越小优先级越高

  1. 对MX记录而言,任何一个MX记录后面的服务器名字,都应该在后续有一个A记录

范例:

mail  IN MX 10 mx1.kgc.org.
      IN MX 20 mx2.kgc.org.
mx1 A   192.168.91.10
mx2 A   192.168.91.10

4、A记录 

name: 某主机的域名解析,例如:www.kgc.com

value:主机名对应主机的IP地址

避免用户写错名称时给错误答案,可通过泛域名解析进行解析至某特定地址

范例:

www.kgc.com. IN A 1.1.1.1
www.kgc.com. IN A 2.2.2.2
www.kgc.com. IN   A 3.3.3.3
www.kgc.com. IN   A 4.4.4.4
* IN A 5.5.5.5
#代表泛域名
@   IN   A 6.6.6.6
#代表不需要名字

5、PTR记录

 name: IP,有特定格式,把IP地址反过来写,1.2.3.4,要写作4.3.2.1;而有特定后缀:inaddr.arpa.,所以完整写法为:4.3.2.1.in-addr.arpa.
value: FQDN

例如:

4.3.2.1.in-addr.arpa. IN PTR www.kgc.org.
#如1.2.3为网络地址,可简写成:
4 IN PTR www.kgc.com

6、CNAME别名记录

name: 别名的FQDN
value: 真正名字的FQDN

ftp.kgc.com.  IN CNAME www.kgc.com

#固定格式
name    [TTL]       IN              rr_type         value
        缓存时间     internet记录     区域解析库        值


$TTL 1D
@       IN SOA  master.kgc.com. admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master.kgc.com.
master  A       192.168.91.100
www     A       192.168.91.103
db      A       192.168.91.101
IN      MX 10   mail.kgc.com.
mail    A       192.168.91.10
ftp     CNAME   www



$TTL 1D                                            #有效解析记录的生存周期
@   in SOA benet.com. admin.benet.com. (   #“@"符号表示当前的DNS区域名
                     0   ; serial              #更新序列号,可以是10位以内的整数
                    1D   ; refresh             #刷新时间,重新下载地址数据的间隔
                    1H   ; retry               #重试延时,下载失败后的重试间隔
                    1W   ; expire              #失效时间,超过该时间仍无法下载则放弃#
					3H)  ; minimum             #无效解析记录的生存周期,
        NS      benet.com.                     #记录当前区域的DNS服务器的名称
        A     192.168.80.10                   #记录主机IP地址
IN   MX 10    mail.benet.com.            #MX为邮件交换记录,数字越大优先级越低
www  IN A     192.168.80.10              #记录正向解析www.benet.com对应的IP
mail IN A     192.168.80.11              #MX为邮件交换记录,数字越大优先级低 
ftp  IN CNAME  www                       #CNAME使用别名,ftp 是www的别名
*    IN A   192.168.80.100               #泛域名解析,“*"代表任意主机名


注意:

  1. TTL可从全局继承

  2. 使用 "@" 符号可用于引用当前区域的域名

  3. 同一个名字可以通过多条记录定义多个不同的值;此时DNS服务器会以轮询方式响应

  4. 同一个值也可能有多个不同的定义名字;通过多个不同的名字指向同一个值进行定义;此仅表示通

过多个不同的名字可以找到同一个主机

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值