DNS正反解析及主从同步的实现

主DNS服务器:172.16.249.138

辅(slave)服务器:172.16.249.177

~]# cat /etc/redhat-release

CentOS release 6.6 (Final)

~]# uname -r

2.6.32-504.el6.x86_64

用户一次完整的DNS查询请求:

Client客户端发起查询请求 --> /etc/hosts会首先查询自己的本地hosts文件是否有DNS定义,如果有返回结果,否则继续请求查询 --> DNS Service通过DNS服务器发起查询请求 --> Local Cache会先查看本地是否有缓存记录,如果有返回结果,否则继续请求查询 --> DNS Server 向DNS服务器发起查询请求,一次递归请求 --> Server Cache 服务器端会查询自己是否有缓存记录,如果有返回结果,否则会根据请求查询 --> iteration迭代直至返回结果给Client

DNS服务器的类型:

主DNS服务器;

辅助DNS服务器;

缓存DNS服务器;

转发服务器;

FQDN: Full Qualified Domain Name  完全合格域名

服务脚本:/etc/rc.d/init.d/named
主配置文件:/etc/named.conf, /etc/named.rfc1912.zones, /etc/rndc.key /etc/rndc.conf
解析库路径:/var/named/

本地名称解析路径: /etc/hosts

编辑name.conf配置文件.    //在named里是注意某一行的意思,修改完成后记得重启

[[email protected] ~]# vim /etc/named.conf 
options {        listen-on port 53 { 172.16.249.138; };    # 监听 172.16.249.138的 53号端口        directory       "/var/named";                    # 就是在这里默认定义了解析库路径//      dump-file       "/var/named/data/cache_dump.db";//      statistics-file "/var/named/data/named_stats.txt";//      memstatistics-file "/var/named/data/named_mem_stats.txt";        allow-query     { any; };        recursion yes;        dnssec-enable no;        dnssec-validation no;        dnssec-lookaside no;        /* Path to ISC DLV key *///      bindkeys-file "/etc/named.iscdlv.key";////      managed-keys-directory "/var/named/dynamic";};
[[email protected] ~]# service named restart #     重启服务器

定义区域配置文件,在文件内追加这两个zone,ibm.com是正向区域解析库,249.16.172.in-addr.arpa则是反向区域解析库。

[[email protected] named]# vim /etc/named.rfc1912.zones
zone "ibm.com" IN {        type master;                     # 可选类型{master|hint|slave|forward}        file "ibm.zone";                # master:主DNS服务器 hint:根DNS服务器 slave:辅助DNS服务器 forward:转发服务器
};                                                                # 每个语句后面必须要有分号 --> ; <-- zone "249.16.172.in-addr.arpa" IN {          # 反向区域格式必须这样定义 --> IP反过来.in-addr.arpa 例如: 1.2.3.4 --> 4.3.2.1.in-addr.arpa        type master;        file "249.16.172.zone";};

检查named配置文件是否有错,如果没有信息提示,则说明没有语法错误

[[email protected] named]# named-checkconf

区域解析库由众多Resource Record简称RR 资源记录组成

资源记录常用的有如下几种:

SOA: 起始授权记录,一个解析库只能有一个,并且需要定义在解析库文件的第一条

A,AAAA: 完全合格域名指定其对应的IP地址 A是IPv4, AAAA是IPv6

PTR: IP --> FQDN

NS: 名称服务器 主要用于表明当前区域的DNS服务器

MX: 邮件交换

CNAME: 别名记录

编辑正向区域文件

@: 引用当前区域的名字

$TTL 全局定义  全局都可以继承$TTL指定的值

[[email protected] named]# vim ibm.zone 
$TTL [email protected]       IN      SOA     ibm.com.        mail.ibm.com. (          # SOA记录必须是第一条                                        2015091601     # 序列号,用于定义配置版本,从服务器判断同步的关键                                         1H          # 从服务器上主服务器上同步的刷新时间间隔                                         3m         # 从服务器上主服务器上同步失败后重新发起同步的时间间隔                                         1W         # 联系不上主服务器的最大时间期限                                         1D)         # 否定答案TTL值         IN      NS      ns1                         # 定义ns记录主配置文件内除了SOA记录ibm.com.不可省略
        IN      NS      ns2                             ,其余可省略ibm.com. 
ns1     IN      A       172.16.249.138     # NS,MX,都必须要有一条A记录ns2     IN      A       172.16.249.177mail    IN      A       172.16.249.21           IN      MX 10   mail                    # 在定义MX与其他记录不同的时,必须要指定优先级www     IN      A       172.16.249.138    # 一条记录可以定义多次www     IN      A       172.16.249.21      # 出现多次的记录会以轮询方式工作web     IN      CNAME   www               # web.ibm.com.别名到www.ibm.com.

检查正向区域配置文件是否有错,如果没有报错信息,则说明没有语法错误

[[email protected] named]# named-checkzone ibm.com /var/named/ibm.zone
zone ibm.com/IN: loaded serial 2015091601OK

编辑反向区域文件

[[email protected] named]# vim 249.16.172.zone           
$TTL [email protected]       IN      SOA     ibm.com.        mail.ibm.com. (                                        2015091601                                              1D                                                               10M                    
                                        5D                                                              1D)                             IN      NS      ns1.ibm.com.               # 同主配置文件一样        IN      NS      ns2.ibm.com.               138     IN      PTR     ns1.ibm.com.          # 反向区域不用定义A、MX记录177     IN      PTR     ns2.ibm.com.21       IN      PTR     mail.ibm.com.138     IN     PTR    www.ibm.com.21     IN       PTR     www.ibm.com.

检查反向区域配置文件是否有错,,如果没有报错信息,则说明没有语法错误

[[email protected] named]# named-checkzone 249.16.172.in-addr.arpa /var/named/249.16.172.zone
zone 249.16.172.in-addr.arpa/IN: loaded serial 2015091601
OK

测试是否配置成功可以使用

dig、host、nslookup

正解:FQDN-->IP
         # dig -t A FQDN
         # host -t A FQDN
     反解:IP-->FQDN
          # dig -x IP
          # host -t PTR IP

[[email protected] named]# dig -t A www.ibm.com @172.16.249.138; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.30.rc1.el6 <<>> -t A www.ibm.com @172.16.249.138;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37874;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2;; QUESTION SECTION:;www.ibm.com.               IN     A;; ANSWER SECTION:www.ibm.com.          86400     IN     A     172.16.249.138www.ibm.com.          86400     IN     A     172.16.249.21;; AUTHORITY SECTION:ibm.com.          86400     IN     NS     ns1.ibm.com.ibm.com.          86400     IN     NS     ns2.ibm.com.;; ADDITIONAL SECTION:ns1.ibm.com.          86400     IN     A     172.16.249.138ns2.ibm.com.          86400     IN     A     172.16.249.177;; Query time: 0 msec;; SERVER: 172.16.249.138#53(172.16.249.138);; WHEN: Mon Sep  7 20:06:25 2015;; MSG SIZE  rcvd: 129
[[email protected] named]# host -t A mail.ibm.com 172.16.249.138Using domain server:Name: 172.16.249.138Address: 172.16.249.138#53Aliases:mail.ibm.com has address 172.16.249.21

下面我们演示一下DNS的主从复制:

主从复制需要注意以下几点:

1、应该是一台单独的服务器

2、主服务器的区域解析库文件ns记录一定要有一条指定slave服务器

3、slave只需要定义区域即可,不需要提供解析库文件,而在定义区域时,应该讲解析库文件指定在/var/named/slaves目录下

4、主服务器需要允许slave进行区域传送

5、主从的服务器时间应该同步一致

6、bind程序的版本应该保持一致,否则的话 slave的版本应该高于主DNS服务器的版本

编辑修改Slave的named.conf配置文件,只修改如下部分

[[email protected] slaves]# vim /etc/named.conf   
          options {
        listen-on port 53 { 172.16.249.177; };
        directory       "/var/named";
        allow-query     { 172.16.0.0/16; };
        recursion yes;
编辑区域文件增加如下内容
[[email protected] slaves]# vim /etc/named.rfc1912.zones
zone "ibm.com" IN {        type slave;        masters { 172.16.249.138; };        file "slaves/ibm.zone";};zone "249.16.172.in-addr.arpa" IN {        type slave;        masters { 172.16.249.138; };        file "slaves/172.16.249.zone";};
[[email protected] slaves]# rndc reload   # 重载主配置文件和区域解析库文件
查看是否同步成功,
[[email protected] slaves]# pwd/var/named/slaves[[email protected] slaves]# lltotal 8-rw-r--r-- 1 named named 430 Sep 16 14:42 172.16.249.zone-rw-r--r-- 1 named named 432 Sep 16 14:23 ibm.zone

到这里我们的DNS配置已经全部完成,谢谢

完。

时间: 2024-08-11 03:38:33

DNS正反解析及主从同步的实现的相关文章

基于BIND实现的DNS正反解析及主从DNS的配置

测试环境 准备2台虚拟机,一台为主DNS,IP地址为:192.168.103.161.另一台为从DNS,IP地址为:192.168.103.162两台都装好bind,所需包有:bind,bind-utils,bind-libs 主DNS的配置文件 配置主文件/etc/named.conf,如下所示 // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // se

DNS基本工作原理,及正反解析,主从同步,子域授权和视图

网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别IP地址,而不能认识域名.我们无法记住多个IP地址的网站,所以我们访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面,这是因为有一个叫"DNS服务器"的计算机自动把我们的域名"翻译"成了相应的IP地址,然后调出IP地址所对应的网页. 什么是DNS? DNS( Domain Name System)是"域名系统"的英文缩写,是一种

DNS工作原理,正反向解析及主从同步

dns基本工作原理,及正反向解析和主从同步一.定义      DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析.      BIND:bekerley internat name daemon, 网络域名管理软件.二.原理 1.DNS 服务器的类型 主DNS服务器 (域内的域名解析,由管理员维护) 从D

DNS基本工作原理,及正反向解析和主从同步测试

DNS基本工作原理 及正反向解析和主从同步测试 域名系统DNS是一个分布式数据库,它在本地负责控制整个分布式数据库的部分段,每一段中的数据通过客户服务器模式在整个网络上均可存取,通过采用复制技术和缓存技术使得整个数据库可靠的同时,又拥有良好的性能. 一.基本工作原理 域名是分层次的.最顶部是根域:这一域上的信息驻留在从整个Internet中所选的一些根服务器上.在根域下面是顶级域,也就是国家代码或机构代码.国家代码的例子有SG(新加坡)和CA(加拿大)等;而机构代码则包括众所周知的COM(商业机

配置DNS的正反向解析与主从同步

配置DNS的正反向解析与主从同步 准备: 本实验基于两台centos6.5其内核版本号为2.6.32-431.el6.x86_64 配置时间同步 # echo "#update system date by jiajie at 20170506" >>/var/spool/cron/root  # echo "*/5 * * * * /usr/sbin/ntpdate time.nist.gov > /dev/null 2>&1" &

+++++++DNS基本工作原理、DNS正反向解析及主从同步

dns基础工作原理 bind Berkerley Information Name Domain DNS Domain Name Server TCP/UDP 53 UDP 53 无连接协议,域名解析 TCP 53 面向连接协议,区域传送 历史IANA 统一名字,自己hosts中维护(%windows%/system32/etc/hosts, /etc/hosts) 统一维护,定时任务计划 统一查询,glibc共享库作为客户端基于UDP协议解析域名 hash 数值分布式 域名分布式:授权方式,将

DNS 基本工作原理,及正反向解析和主从同步:

DNS 基本工作原理,及正反向解析和主从同步:   今天给大家介绍一下DNS的基本工作原理以及正反向解析和主从同步的应用:   DNS是域名系统(Domain Name System),它是由解析器和域名服务器组成的. 域名服务器是指保存有该网络中所以主机的域名和对应的IP地址,并具有将域名转换为IP地址功能的服务器.域名必须有IP地址,而IP地址不一定有域名. 域名系统太用类似目录树的等级结构, 最上层是根域,一般以 . 开头,根域下面是顶级域,顶级域包含com(商业机构).edu(教育机构)

DNS(二)--正反解析及主从配置

实验题目: 1.DNS的正反向解析 2.DNS的主从同步 实验环境: 1.VMware虚拟机 2.两台以上linux子机 3.XP测试机 实验过程: 一.DNS的正反向解析 实验拓扑:     说明:其实这里面不需要指定网关,只是为了好看就设定了吧.服务器的DNS指向自己.要不然用ping的时候ping不通. 目的就是要让客户端用域名解析到IP或用IP解析到域名.这里只是为了测试,实际情况下,反解风险很大,慎用! 1.服务器端: 安装DNS服务器(bind),挂载光盘镜像 安装bind服务和bi

【详解】DNS服务工作原理、正反向解析和主从同步

目录: 一.理论部分 二.实验部分 ******************************理论部分*************************************** 正文: 一.什么是DNS服务. DNS服务是互联网的基础性服务之一.全称为Domain Name System(域名系统).DNS是因特网上作为域名和IP地址相互映射的一个分布式数据库,提供将域名转换成对应IP地址的信息条目,能够使用户更方便的通过域名(如baidu.com)去访问互联网,而不用去记住能够被机器直接