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

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

一、介绍
1.1全世界现有三个大的网络信息中心:

1、位于美国的 Inter-NIC,负责美国及其他地区;

2、位于荷兰的RIPE-NIC,负责欧洲地区;

3、位于日本的APNIC ,负责亚太地区。

1.2DNS的分布式数据结构

223812746.png

缓存域名服务器

·通过想其他域名服务器查询获得域名——》ip 地址记录

·讲域名查询结果缓存到本地,提高重复查询时的速度

主域名服务器

·特定DNS区域的官方服务器,具有唯一性

·负责维护该区域内所有域名——》ip地址的映射记录

从域名服务器

·也称为辅助域名服务器

·其维护的域名——》ip 地址记录来源与主域名服务器

bind-utils

bind

bind-libs

bind-chroot

/etc/named.conf mount

/var/named/chroot/etc/named.conf

主从DNS同步的两种方式:

1、主服务器发送指令让从服务器同步

2、从服务器根据序列号同步主服务器数据库文件

简单DNS配置:

[root@DNS~]# yum install bind bind-utils bind-chroot bind-libs

[root@DNS~]# mount

/dev/mapper/VolGroup-lv_rooton / type ext4 (rw)

proc on/proc type proc (rw)

sysfs on/sys type sysfs (rw)

devpts on/dev/pts type devpts (rw,gid=5,mode=620)

tmpfs on/dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")

/dev/sda1on /boot type ext4 (rw)

/dev/sr0on /media/cdrom type iso9660 (ro)

none on/proc/sys/fs/binfmt_misc type binfmt_misc (rw)

[root@DNS~]# service named start

Generating/etc/rndc.key: [ OK ] //加密处理,有时候或许会在这里卡住,可以在该系统上移动鼠标。

Startingnamed: [ OK ]

[root@DNS~]# mount

/dev/mapper/VolGroup-lv_rooton / type ext4 (rw)

proc on/proc type proc (rw)

sysfs on/sys type sysfs (rw)

devpts on/dev/pts type devpts (rw,gid=5,mode=620)

tmpfs on/dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")

/dev/sda1on /boot type ext4 (rw)

/dev/sr0on /media/cdrom type iso9660 (ro)

none on/proc/sys/fs/binfmt_misc type binfmt_misc (rw)

/etc/named on/var/named/chroot/etc/named type none (rw,bind)

/var/named on/var/named/chroot/var/named type none (rw,bind)

/etc/named.conf on/var/named/chroot/etc/named.conf type none (rw,bind)

/etc/named.rfc1912.zones on/var/named/chroot/etc/named.rfc1912.zones type none (rw,bind)

/etc/rndc.key on/var/named/chroot/etc/rndc.key type none (rw,bind)

/usr/lib64/bind on/var/named/chroot/usr/lib64/bind type none (rw,bind)

/etc/named.iscdlv.key on/var/named/chroot/etc/named.iscdlv.key type none (rw,bind)

/etc/named.root.key on/var/named/chroot/etc/named.root.key type none (rw,bind)

可以看出,是利用mount的方式

[root@DNS ~]# ps aux|grep named

named 1316 0.0 3.0 162844 15172 ? Ssl 20:20 0:00 /usr/sbin/named -unamed -t /var/named/chroot

查看启动进程,运行在chroot的环境中

[root@DNS ~]#netstat -nutpl |grep named

tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 1316/named

tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 1316/named

tcp 0 0 ::1:53 :::* LISTEN 1316/named

tcp 0 0 ::1:953 :::* LISTEN 1316/named

udp 0 0 127.0.0.1:53 0.0.0.0:* 1316/named

udp 0 0 ::1:53 :::* 1316/named

监听53号端口

配置:

在全局定义里,把监听端口和允许访问段都改为any

options {

   listen-on port 53 { any; };

   listen-on-v6 port 53 { ::1; };

   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;

添加一个正向区域名

zone"zhang.com" IN{

   type master;

   file "zhang.com.zone";

};

[root@MASTER ~]#named-checkconf named.conf

none:0: open:named.conf: file not found

[root@MASTER ~]# cd/var/named/chroot/etc/

[root@MASTER etc]#named-checkconf named.conf

[root@MASTER etc]#

检查语法错误

224950495.png

其所属的组为named

[root@MASTER named]#ll

total 36

drwxr-x---. 6root named 4096 Oct 12 20:57 chroot

drwxrwx---. 2 namednamed 4096 Oct 12 21:01 data

drwxrwx---. 2 namednamed 4096 Oct 12 21:01 dynamic

-rw-r-----. 1root named 1892 Feb 18 2008 named.ca

-rw-r-----. 1root named 152 Dec 15 2009 named.empty

-rw-r-----. 1root named 152 Jun 21 2007 named.localhost

-rw-r-----. 1root named 168 Dec 15 2009 named.loopback

drwxrwx---. 2 namednamed 4096 Dec 5 2012 slaves

-rw-r--r--. 1root root 120 Oct 12 21:15 zhang.com.zone

[root@MASTER named]#chgrp named zhang.com.zone

[root@MASTER named]#ll

total 36

drwxr-x---. 6root named 4096 Oct 12 20:57 chroot

drwxrwx---. 2 namednamed 4096 Oct 12 21:01 data

drwxrwx---. 2 namednamed 4096 Oct 12 21:01 dynamic

-rw-r-----. 1root named 1892 Feb 18 2008 named.ca

-rw-r-----. 1root named 152 Dec 15 2009 named.empty

-rw-r-----. 1root named 152 Jun 21 2007 named.localhost

-rw-r-----. 1root named 168 Dec 15 2009 named.loopback

drwxrwx---. 2 namednamed 4096 Dec 5 2012 slaves

-rw-r--r--. 1root named 120Oct 12 21:15 zhang.com.zone

配置正向域

[root@MASTER named]#vim zhang.com.zone

$TTL 1D //缓存时间

@ IN SOAdns.zhang.com. root.zhang.com. (

0 ;serial

                                                                                  3H ;minimum

15M ;

                                   1W ;expire

1D) ;refresh

@ ns dns.zhang.com.

dns IN A 192.168.1.1

www IN A 192.168.1.2

$TTL 1D:设置邮箱地址解析记录的默认缓存时间,默认为1天(1D)

@IN SOA @ rname.invalid. (设置SOA标记、域名、域管理邮箱rname@invalid,由于 @ 有其他含义,所以用“.”代替。注意: @ 在正向区域文件中代表的是“dns.zhang.com. 和 root.zhang.com.”)

0 :更新序列号,用于标示数据库的表换,可以在10位以内,如果存在从dns区域,建议每次更新完数据库,手动加1.

1D :刷新时间,从域名服务器更新该地址数据库文件的间隔时间,默认为1天;

1H :重试延时,从域名服务器更新地址数据库失败以后,等待多长时间,默认为1小时;

1W :失效时间,超过该时间仍无法更新地址数据库,则不再尝试,默认为1周;

3H ;设置无效地址解析记录(该数据库中不存在的地址)

NS @ :域名服务器记录,用于设置当前域的DNS服务器的域名地址;

A 127.0.0.1 :设置域名服服务器的A记录,地址为ipv4的地址127.0.0.1;

AAAA ::1 :设置域名服务器的A 记录,地址为ipv6的地址。

每次配置完后重启服务:

[root@MASTER named]#service named restart

Stopping named: [ OK ]

Starting named: [ OK ]

测试:

[root@MASTER named]#nslookup www.zhang.com

Server: 192.168.41.146

Address: 192.168.41.146#53

Name: www.zhang.com

Address: 192.168.1.2

CNAME 的作用

若在zone文件中添加:

blog IN CNAME www

则会定向到原来的www中,即:

www IN A 192.168.1.2

[root@MASTER named]#nslookup blog.zhang.com

Server: 192.168.41.146

Address: 192.168.41.146#53

blog.zhang.com canonicalname = www.zhang.com.

Name: www.zhang.com

Address: 192.168.1.2

配置反向解析:

格式:一般格式为“ip.arpa”,ip不包含最后一位。

[root@MASTER named]#vim /etc/named.conf

zone"1.168.192.in-addr.arpa" IN {

   type master;

   file "zhang.com.zone.db";

};

[root@MASTER named]#vim zhang.com.zone.db

$TTL 1D

@ IN SOAdns.zhang.com. root.zhang.com. (

                                   1 ;

                                   3H;minimum

                                   15M ;

                                   1W ;expire

                                   1D);refresh

@ ns dns.zhang.com.

1 IN PTR dns.zhang.com. //创建反向PTR指针

2 IN PTR www.zhang.com.

重启服务:

[root@MASTER named]#service named restart

Stopping named: [ OK ]

Starting named: [ OK ]

测试:

[root@MASTER named]#nslookup 192.168.1.1

Server: 192.168.41.146

Address: 192.168.41.146#53

1.1.168.192.in-addr.arpa name= dns.zhang.com.

[root@MASTER named]#nslookup 192.168.1.2

Server: 192.168.41.146

Address: 192.168.41.146#53

2.1.168.192.in-addr.arpa name= www.zhang.com.

配置从服务器:

[root@SLAVE ~]# yuminstall bind bind-chroot bind-utils bind-libs

[root@SLAVE ~]#service named start

Generating/etc/rndc.key: [ OK ]

Starting named: [ OK ]

跟主服务器一样:

在全局定义里,把监听端口和允许访问段都改为any

listen-on port 53 {any; };

allow-query { any; };

添加正向和反向区域:

zone"zhang.com" IN {

   type slave;

masters{ 192.168.41.146; };注意格式

   file "slaves/zhang.com.zone";

};

zone"1.168.192.in-addr.arpa" IN {

   type slave;

   masters { 192.168.41.146; };

   file"slaves/zhang.com.zone.db";

};

/var/named/chroot/var/named/slaves

重启服务。

[root@SLAVE slaves]#ls

[root@SLAVE slaves]#

没有同步到主服务器的文件

所以主服务器要配置防火墙:

防火墙配置:

[root@MASTER etc]#iptables -I INPUT 4 -m state --state NEW -p tcp --dport 53 -j ACCEPT

[root@MASTERetc]# iptables -I INPUT 4 -m state --state NEW -p udp --dport 53 -j ACCEPT

[root@MASTER etc]#service iptables save

[root@SLAVE slaves]#ls

zhang.com.zone zhang.com.zone.db

可以同步。

本地测试:

[root@SLAVE slaves]#nslookup www.zhang.com

Server: 192.168.41.147

Address: 192.168.41.147#53

Name: www.zhang.com

Address: 192.168.1.2

[root@SLAVE slaves]#nslookup

192.168.1.1

Server: 192.168.41.147

Address: 192.168.41.147#53

1.1.168.192.in-addr.arpa name= dns.zhang.com.

远地测试:

先修改/etc/resolv.conf

[root@DNS etc]#nslookup

www.zhang.com

;; connection timedout; trying next origin

;; connection timedout; no servers could be reached

修改从服务器防火墙配置:

iptables-I INPUT 4 -m state --state NEW -p udp --dport 53 -j ACCEPT

[root@SLAVE slaves]#service iptables save

iptables: Savingfirewall rules to /etc/sysconfig/iptables:[ OK ]

远地测试:

[root@DNS etc]#nslookup 192.168.1.2

Server: 192.168.41.147

Address: 192.168.41.147#53

2.1.168.192.in-addr.arpa name= www.zhang.com.

配置自动同步:

主服务器配置:

需要在option选项中添加:

   allow-transfer { 192.168.41.147; };

   also-notify { 192.168.41.147; };

   notify yes;

小结:

1、master slave 使用udp 53号端口进行通讯。

2、BIND域名服务器的文件会全部挂载到/var/named/chroot/目录下,即使***连接上了DNS服务器,他怎么修改,都是修改/var/named/chroot/中的文件,并不会影响系统 / 下面其他文件的情况。

3、

当我们主DNS服务器上修改完成后重启服务,会主动传送notify值,如果辅助DNS服务器没有收到才参考Refresh,Refresh不成功,则参考Retry ,Retry 一直不成功, 则参考 Expire,如果Expire也不成功,则选择放弃zone transfer的过程。

转载于:https://blog.51cto.com/14159510/2402154

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值