阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux下DNS服务器的安装

414次阅读
没有评论

共计 4103 个字符,预计需要花费 11 分钟才能阅读完成。

概念部分
linux 客户端默认的 dns 查找顺序:

本地 DNS 缓存→本地 hosts 文件→首选的 DNS 服务器(递归)

linux 的 DNS 服务器查找顺序:
首选服务器的 DNS 缓存→首选服务器自己所负责的域→向外迭代查询信息。

DNS 缓存:
    ttl:time to live

    就是被请求的域名或主机名等对应的 IP 条目在客户端本地的有效时间。

    这个时间由被请求域的 主 DNS 服务器根据其条目的变化频率自行决定,而非本地可以定义。

    但是客户端本地可以查看和清除。例如:

    windows 上:ipconfig/displaydns 查看 DNS 缓存,ipconfig/flushdns 清除 DNS 缓存。

迭代查询:
    一般由缓存 DNS 服务器向其他 DNS 服务器发起,从根 ”.” 开始,然后顶级域 ”.com.”, 直到找到目标域。

递归查询:
    一般由客户端向缓存 DNS 服务器(首选 DNS 服务器)发起,然后由其向外进行迭代查询,返回给客户端的则是最终的答案。

权威应答:
    由被请求域的 DNS 服务器 返回的答案。

非权威答案:
    由缓存服务器提供的答案,

缓存 DNS 服务器:

    直接响应客户端请求,为其从根开始直到返回答案,或者提供客户端已经被缓存过的条目。

主 DNS 服务器:

    由管理员手动完成新条目的添加、删除及修改的服务器。同时向外提供权威 DNS 答案。

从 DNS 服务器:
    为了实现负载均衡、冗余等功能而设计的服务器。

    但是在主 DNS 服务器宕机一定时间后,从服务器也会停止响应服务。
DNS 解析类型:
    正向解析:FQDN→IP,由 FQDN 查找 IP。

              正向根:”.”

    反向解析:IP→FQDN,由 IP 查找 FQDN。

              反向根:”.in-addr.arpa.”

DNS 服务器软件:
  bind:linux 端软件
  powerdns:windows 端软件。
下面以 bind 为例:

名称解析库:
    位于 /var/named/, 其中的部分 ”.zone” 结尾的文件中就存储我们需要查询的条目。

资源记录格式:
  /var/named/*.zone 文件中存储条目的一种固定格式:

  [domain]    IN    [[RR type]    [RR data]]

  域名.      IN    SOA            管理此域的 7 个重要参数

  域名.      IN    NS            管理这个域的服务器的主机名字

  域名.      IN    MX  优先级    邮件服务器的主机名字

  主机名.    IN    A              IPv4 的 IP 地址

  主机名.    IN    AAAA          IPv6 的 IP 地址

  主机别名.  IN    CNAME          实际的主机名字

 

  IP          IN    PTR            实际的主机 FQDN(这里必须是 FQDN, 不能有任何省略)

RR  data:

(注意:这里的主机名不是指 hostname 命令看到内容,而是 DNS 查询中所定义使用的主机名)
SOA:
  通常是第二行($TTL 等为第一行),用于查询管理域名的服务器的管理信息。

  1、确定此域的 主 DNS 服务器 是哪个。

  2、管理员的 Email 地址。

      在创建资源记录时,会使用 ”@” 代替 ” 域名.”,也就是配置文件中的 zone 后的 ”baidu.com.”。

      所以由于 @具有其他意义,所以这里使用 ”.” 替代。例如 ”root.baidu.com.”。

  3、序列号,数字是越大越新,在从 DNS 服务器要判断是否主动下载新的资源记录条目时的依据。

  4、刷新频率,就是 Slave(从 DNS 服务器)每隔多长时间主动向 Master(主 DNS 服务器)发起更新。

      但在序列号没有增大时,就不会进行下载更新。

  5、重试时间,在上一次连接 Master 刷新失败的情况下,Slave 会再隔一个 ” 重试时间 ” 重试刷新。

  6、失效时间,当重试一直在失败,直到达到 ” 失效时间 ”,那么 Slave 就不会重试刷新,

      而且停止 DNS 的响应服务器,等待管理员的处理。

      刷新时间 >=  重试时间 *2

      刷新时间 + 重试时间 < 失效时间

      失效时间 >= 重试时间 *10

      失效时间 >=  7 天

  7、如果当资源记录内容中没有我们要求的条目,那么就会以此值作为查询端的 TTL 值。
NS:
  Name Server,指定当前域的 DNS 服务器有哪些。

  如果此域有从 DNS 服务器,就必须也写上。否则 Mster 不会主动通知 Slave 数据已经改变。

  后面必须同时指定 NS 记录中的服务器的 A 记录,也就是 IP 地址。

MX:
  查询当前域的邮件服务器的主机名。

  其数字部分表示优先级,数字越小,优先级越高。

  后面同样需要跟上其 A 记录。
注意:
  在域名相同的情况下,除第一个,其他的域名都是可以省略的,
  所以格式上习惯将 SOA、NS、MX 记录连续记录。

  而 SOA 又可以使用 ”@” 符号进一步简化。

A:
  用来指定主机名对应的 IPv4 地址的。

AAAA:
  用来指定主机名对应的 IPv6 地址的。

CNAME:
  用来附加表示旧的主机名。

下面是一个以 yy.com 域为例的正向解析资源记录:

$TTL 600  ; 使用宏定义了 ttl 值,前面不能有空白行
@      IN      SOA    dns1.linuxidc.com.    root.linuxidc.com. (
                        20140310 ;Serial
                        1H  ;Refresh
                        5M  ;Retry
                        7D  ;Expire
                        1M) ;Minumum TTL
        IN      NS      dns1  ; 调用配置文件 zone 后的 ’linuxidc.com.’ 域名
        IN      NS      dns2
        IN      MX  99  mail  ; 此三行都借用 SOA 行的 @,表示 ’linuxidc.com.’
dns1    IN      A      192.168.25.11  ;dns1 表示 ’dns1.linuxidc.com.’
dns2    IN      A      192.168.25.12
www    IN      A      192.168.25.13
pop    IN      A      192.168.25.13 ; 一个 IP 可以对应多个主机名,但是更改时费事,建议用 CNAME
ftp    IN      A      192.168.25.15
ftp    IN      A      192.168.25.16 ; 一个主机可以对应多个 IP,起到负载均衡的作用 bind 的配置文件

 

bind 的配置文件:
rpm -ql  bind-utils
  /usr/bin/dig    现在主流 DNS 测试工具。

  /usr/bin/host  在不联网的情况下,可能会与 dig 产生不同答案。

  /usr/bin/nslookup 通用于 windows 的工具

下面是 dig 的使用方法:
dig -t 资源记录类型 名称 [@dns_server_ip]
dig -x IP    反向解析
dig +trace  显示全部解析的追踪过程
dig -t axfr linuxidc.com  对 linuxidc.com 域进行完全区域传送
dig -t NS  linuxidc.com  查询 linuxidc.com 的 NS 记录

下面是 nslookup 在 windows 上的使用方法:

nslookup
server 192.168.25.11 使用指定的 dns_server_ip
set q=a
www.linuxidc.com  查询 www.linuxidc.com 的 A 记录
set q=NS
linuxidc.com    查询 linuxidc.com 的 ns 记录

rpm -ql  bind:

  /etc/named.conf    主配置文件
  /etc/named.rfc1912.zones    定义了本地配置文件。被包含在 named.conf 中

在 /etc/named.conf 中:

//    表示注释单行内容
/* 多行内容 */    表示注释多行内容
options 表示全局配置:
directory      “/var/named”; // 表示 named 进程工作的目录,其区域 zone 的文件存放就是以此作为                              // 相对目录的
allow-transfer {none;};    // 在全局配置中定义表示哪些主机进行全部区域的传送。
                            // 在 zone 中定义则表示可以哪些主机可以对此区域传送

                            //none,表示所有的不可以。还可以使 IP 地址

下面是区域定义的格式:

主 DNS 服务器的区域配置:
zone “linuxidc.com” IN {
    type master;
    file “linuxidc.com.zone”;
};
zone “25.168.192.in-addr.arpa” IN {
    type master;
    file “192.168.25.zone”;
};
从 DNS 服务器的区域配置:
zone “linuxidc.com” IN {
    type slave;
    file “slaves/linuxidc.com.zone”; // 注意 slaves 文件的属主、属组、权限 
    masters {192.168.25.10;  // 注意 master 的复数,所以可以写多个
              192.168.25.11;  // 无论有多少个 Mster,都要有分号。
            };
};

 

相关阅读

RHEL6 服务器搭建 DNS 服务器 http://www.linuxidc.com/Linux/2013-10/91256.htm

精解 Linux RHEL 6.x DNS 服务器 http://www.linuxidc.com/Linux/2013-08/88986.htm

Ubuntu DNS 服务器配置 http://www.linuxidc.com/Linux/2013-07/87181.htm

Solaris 中配置 DNS 服务器 http://www.linuxidc.com/Linux/2013-06/86724.htm

CentOS 6.3 x64 下借助 MySQL 和 DNS view 实现智能 DNS http://www.linuxidc.com/Linux/2013-06/86430.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计4103字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7982169
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛 NAS 玩转 Frpc 并且配置,随时随地直连你的私有云 大家好,我是星哥,最近在玩飞牛 NAS。 在数...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件

【开源神器】微信公众号内容单篇、批量下载软件 大家好,我是星哥,很多人都希望能高效地保存微信公众号的文章,用于...
手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板 前言 大家好,我是星哥。星哥发现很多新手刚接触服务器时,都会被“选购...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

颠覆 AI 开发效率!开源工具一站式管控 30+大模型ApiKey,秘钥付费+负载均衡全搞定

  颠覆 AI 开发效率!开源工具一站式管控 30+ 大模型 ApiKey,秘钥付费 + 负载均衡全...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装 2026 年最强个人助理 ClawdBot、完整安装教程 一、前言 学不完,根本学不完!近期,一款名...
星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛NAS硬件02:某鱼6张左右就可拿下5盘位的飞牛圣体NAS

星哥带你玩飞牛 NAS 硬件 02:某鱼 6 张左右就可拿下 5 盘位的飞牛圣体 NAS 前言 大家好,我是星...
手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板

手把手教你,购买云服务器并且安装宝塔面板 前言 大家好,我是星哥。星哥发现很多新手刚接触服务器时,都会被“选购...