Linux服务器--1.DNS服务器

Linux服务之DNS服务--DNS的基本概念

1.DNS(Domain Name System)域名系统。在网络上为了方便用户访问互联网,而不用去记住能够被直接访问的IP,就有了作为域名与IP相互映射的一个分布式数据库。DNS协议运行在UDP和TCP之上,使用53号端口。(其中在DNS解析查询时用到UDP协议,而在主从传递区域数据库文件时,用到TCP协议。)

2.DNS功能:

DNS服务器实现的是IP到域名的解析和域名到IP的解析。

主机名与IP有两种映射关系:

1.静态映射:在每台设备上都有主机到IP的映射关系,只供此设备使用,如hosts文件中。

2.动态映射:指通过DNS服务器配置主机到ip的映射关系。通过DNS服务器查询主机对应的IP地址

3.域名的组织结构和层次:

域名的结构采用树型层次性结构形成域名空间。

域名的管理机制:

域名的管理采用逐级委托机制。顶级域将管辖子域内DNS服务器的域名解析,运行和维护,授权给子域注册单位自主管理。

3.DNS的查询方式:

DNS的查询方式有两种:

1.递归查询:从客户端到本地DNS服务器的查询是属于递归查询。

(1)递归查询

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

2.迭代查询:DNS服务器之间的交互查询就是迭代查询。

(2)迭代查询

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

4.DNS服务器的类型:

主域名服务器:本区域内权威域名解析信息源所在地。全面负责本地域名的解析和外层域名解析请求的传递。一个域只能有一个主域名服务器,需要系统管理员构建和配置。

从域名服务器:也称辅助域名服务器。其维护的域名与IP地址的映射记录来源于主域名服务器。

缓存域名服务器:也称高速缓存服务器。通过向其他域名查询获得域名与IP地址的对应记录,将域名查询结果缓存到本地,提高重复查询的速度。

5.DNS域名解析的顺序:

(定义在/etc/host.conf)-->查询/etc/hosts文件规定的顺序策略-->查询/etc/resolve.conf文件规定的命名策略--->DNS 服务器。

现今用量最多,稳定性较好的DNS服务器软件为BIND。在Linux上提供域名解析的平台或框架,nsswitch和两个库文件(libness_files.so、libness_dns.so)。nsswitch为完成域名解析提供了一个平台,它本身不能进行域名解析。nsswitch提供了为应用程序向不同的解析库进行名称解析的手段和顺序。真正提供域名解析机制的是:libness_files.so和libness_dns.so库文件。当用户在提交查询请求时,nsswitch 会根据自身的配置文件(/etc/nsswitch.conf)来提供域名解析的手段和顺序,然后通过nsswitch这个框架去这两个库文件进行查找的。

在nsswitch配置文件中/etc/nsswitch.conf有这么一行:hosts: files dns。

这行files就是通过libness_files.so去查找/etc/hosts文件内的IP域主机的对应关系来完成解析。如果解析失败就是通过DNS服务来解析。当我们真正访问一个主机名的时候,主机名是不能和我们建立关系的,但它会调用一个文件库来完成主机名和IP的转换,这个机制称为stub resolver。stub resolver第一步先查找nsswitch的配置文件中指定的files文件查找有没有对应的IP的地址,如果有就调用一个文件库来完成主机名和IP的转换,查找成功,没有,就通过DNS服务器来解析。

6.DNS服务器的配置文件DNS数据库记录结构:

DNS服务的配置文件:

/etc/named.conf:DNS服务的基本配置文件,定义了ZONE区域和一些基本配置。

/var/named/named.ca:指向上级DNS(指根DNS) 该文件不需要管理员更改,而是系统自带。

/var/named/named.local:本地子域解析。将localhost反向解析为127.0.0.1

在/var/named/目录下还有正向解析文件和反向解析文件。

DNS数据库记录结构:

资源记录(RR):RR将DNS域名映射到特定类型的资源信息中,以供在名称空间中注册或解析名称使用。在Linux系统中通常“名称解析库”的每一行成为一个资源记录。

DNS数据库资源记录类型结构:

格式: [name] [ttl] IN  type value

各个字段说明:

name:域对象的名称。它可以使单独的主机名或FQDN

ttl:以秒为单位的生存周期,用于确定该资源记录中的信息在缓存中保存的时间长度。

IN:表明记录为Internet DNS资源记录。

type:记录的类型

value:资源信息数据

其中type记录类型有:

SOA:(Start Of Authority)起始授权记录。表示服务器管理的起始开始位置。SOA记录说明了在众多的NS记录里那台才是主服务器

name:当前区域的名字。如”zkchang.com.”

value:有多部分组成

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

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

SOA记录中有几段时间序列:

Serial number:反应域名信息变化的序列号,每次域名信息发生变化后需要增大次序列号。以便从服务器获取新的数据

Refresh:刷新时间或核对时间,设置从服务器多长时间与主服务器进行核查,主服务器的数据是否发生变化。

Retry:这项是如果从服务器试图获取主服务器的serial时,但主服务器没有相应,多久再重试。

Exprie:当从服务器无法连接上主服务器时,从服务器可以在多长时间内认为其缓存是有效的,并供用户查询。

Minimum:缓存DNS服务器可以缓存记录多长时间。

如:

            zkchang.com. 86400 IN SOA  ns1.zkchang.com. admin.zkchang.com. (
                                2015091404
                                6H
                                5M
                                2D
                                1D
                                )

NS:(Name Server):NS记录也称名称服务器记录,授权域名服务器。用于说明此区域内有哪些DNS服务器来承担解析任务,SOA记录说明在众多的DNS服务器中哪一个才是主服务器。

name:当前区域的名字

value:当前区域的DNS服务器的名字如:ns1.zkchang.com.

注意:相邻的两个资源记录的name相同时,后续的可以省略;

在添加NS记录后,后续要有一个A记录与之对应。

如:

            zkchang.com.    IN      NS      ns1.zkchang.com.        
            zkchang.com.    IN      NS      ns2.zkchang.com.

A:(Adress)主机名转化为IP地址,任何一个主机只能有一个A记录。

name:某主机的FQDN,如:www,zkchang.com.。

value:主机名与之对应的IP地址。

如:

            mail                         IN      A       172.16.99.1    
            www.zkchang.com.             IN      A       172.16.99.1

注意:

*.zkchang.com.IN  A  1.1.1.4

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

MX:(Mail eXchange):邮件交换记录。定义邮箱服务器,和邮件处理级别(数字越小级别越高)。

CNAME:(Canonic NAME)命名主机别名,主机规范名在A中定义。

PTR:IP地址转换成主机名

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

value.FQDN

完整的正向区域数据和反向区域数据解析:

正向:

            $TTL 1D            
            zkchang.com.    IN      SOA     ns1.zkchang.com.        admin.zkchang.com. (
                                            2015091405
                                            6H
                                            5M
                                            2D
                                            1D
                                            )
            zkchang.com.    IN      NS      ns1.zkchang.com.
            zkchang.com.    IN      NS      ns2.zkchang.com.
            zkchang.com.    IN      MX 3    mail.zkchang.com.
            ns1             IN      A       172.16.99.1
            ns2             IN      A       172.16.99.2
            mail            IN      A       172.16.99.1
            www             IN      A       172.16.99.1
            www1            IN      A       172.16.99.1

反向:

            $TTL 1D
            @   IN      SOA     ns1.zkchang.com.        admin.zkchang.com. (
                                                    2015091405
                                                    6H
                                                    5M
                                                    2D
                                                    1D
                                                    )
            99.16.172.in-addr.arpa.         IN      NS      ns1.zkchang.com.
                            IN      NS      ns2.zkchang.com.
            1               IN      PTR     ns1.zkchang.com.
            2               IN      PTR     ns2.zkchang.com.
            1               IN      PTR     mail.zkchang.com.
            1               IN      PTR     www.zkchang.com.
            1               IN      PTR     www1.zkchang.com.

时间: 2024-10-10 04:51:14

Linux服务器--1.DNS服务器的相关文章

Linux下搭建DNS服务器

一.修改Linux主机名 1.hostname 主机名 [[email protected] named]# hostname ifs.com 2.vi /etc/hosts [[email protected] named]# vi /etc/hosts 127.0.0.1 ns.ifs.com ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 ~ 3.vim /etc/sysconfi

linux环境下DNS服务器

DNS (Domain Name Service) 域名服务 用于主机名和IP的转换.分为正向解析(FQDN--->IP)和反向解析(IP--->FQDN) UDP协议,53端口 TCP协议,53端口 DNS服务器类型: 主DNS服务器:维护所负责的区域内解析库的服务器 从DNS服务器:定时同步更新主DNS服务器的内容记录.只有当主服务器当机后,从服务器才会接替其工作 高速缓存服务器:把经常要查询DNS记录缓存到本地,以便下次更快进行解析反馈 转发服务器:负责将非本区域内的域名转发到其他DNS

Linux下搭建DNS 服务器

CentOS6.6下DNS服务器的搭建 Linux下的DNS的软件包为bind,有如下几个软件包: bind           #DNS服务的主程序 bind-utils # 工具,包含dig,nslookup等网络诊断工具. bind-chroot      # 修改named 的root目录,这样named被入侵后,黑客也被限制在指定的目录下,不能切换到/,避免造成更大的破坏.[下面的演示中,为了简单起见就没安装该组件] # 安装bind软件包 yuminstall bind bind-u

Linux服务器--2.DNS服务器的主从配置

Linux服务器--DNS服务器的主从配置 DNS 服务器的安装: 1.DNS服务器安装所需的主要安装包有: bind:DNS服务器的主程序包 bind-utils:此安装包提供了DNS查询工具软件 bind-chroot:为了服务器系统的安全安装此包,可以把DNS在一个虚拟的根目录下运行. 2.安装DNS服务器,只需要yum安装即可,也可以源码安装. 3.DNS服务主要提供了三个配置文件,一个是主配置文件/etc/named.conf ,两个区域数据库文件:正向解析数据库文件,反向解析数据库文

Linux学习之DNS服务器

概念: DNS:Domain Name System 域名系统 FQDN:Fully Qualified Domain Name 完整主机名 正向解析:由主机名查IP地址 SOA:开始验证(Start of Authority)的缩写, NS:名称服务器(Name Server)的缩写 A 地址记录(Ipv4)AAAA 地址记录(Ipv6)AFSDB Andrew文件系统数据库服务器记录(应该是一种文件服务器的类型)ATMA ATM地址记录(不是自动提款机,具体功能不知道)CNAME 别名记录H

Linux防火墙设置-DNS服务器篇

亲测可用,对于刚刚搭建了DNS服务器,需要开启防火墙但又不知道该怎么设置的朋友,可以参考下面的内容,或者直接使用我下面给出的脚本程序. 如果服务器是作为DNS服务器使用的,针对绝大多数的情况,为了开启防火墙同时又能正常地提供相关的服务,一般的设置如下: [1]第一步:清除默认防火墙规则 iptables -F iptables -X iptables -Z ·参数说明: -F:清除所有的已制定的规则 -X:清除所有用户自定义的chain(应该说的是tables) (扩展:table--Linux

LINUX中搭建DNS服务器,实现正向、反向以及访问不同DNS解析

实现目标: 搭建DNS服务器 1)新浪服务器(dns.sina.com) dns.sina.com -->192.168.4.5 www.sina.com-->1.2.3.40 news.sina.com-->1.2.3.45 2)搜狐服务器(dns.sohu.net) dns.sohu.com-->192.168.4.6 movie.sohu.net-->5.6.7.80 study.sohu.net-->5.6.7.85 客户机测试: 向192.168.4.5能查询

Linux环境下DNS服务器原理及主服务器简单配置

1,DNS介绍 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析). 监听的协议端口:UDP/TCP 53 软件实现:bind 2,DNS数状结构: 如下图: 根域:. 一级域如下: 组织域:.com, .org, .net, .mil, .edu, .gov, .info, .cc, .

Linux学习之服务器搭建——DNS服务器

DNS服务器其实是域名解析系统,需要的前提条件只是,两台虚拟机可以ping同即可,因此可以在基础网络配置下单独联系,也可以跟着DHCP服务器一起练习,只是我们以前ping的是IP地址,现在变成ping域名(例:ping www.qq.com) DNS可以说是最重要的,只有DNS域名解析建立起来了,上网才不用输入IP地址来登录我们的网站或网页,这就涉及到了我下一小节要提到的Apache服务器,这里就不详解了. 下面我开始讲DNS服务器了(DNS文件很多,要注意的地方也是细节问题,稍有不慎就会pin