dns随笔(部分转载)

1.allow-notify

allow-notify 定义了一个匹配列表并且只应用于从dns区域(slave zone),比如,这个列表是一个ip列表,它

 

2.  触发同步的过程

http://www.edu.cn/wgjq_8179/20091022/t20091022_414762.shtml

  首先介绍主从服务器的同步过程。触发同步过程的原因有4种:1.从域名服务器刚刚启动;2.主域名服务器的Serial值增大;3.执行了rndc reload命令;4.到了主从服务器的同步更新时间。

  主从域名服务器开始同步(见图1):

  1. 主服务器向从服务器发送notify消息

  2. 从服务器收到主服务器发送notify消息,向主服务器返回一个notify response消息。

  3. 从服务器向主服务器发送SOA query消息。

  4. 主服务器向从服务器返回SOA response消息。

  5. 从服务器收到SOA response消息后,比对自身的Serial值,如果发现主服务器的Serial值大于自身的Serial值,那么就发送Zone transfer request消息。

  6. 主服务器返回Zone transfer response消息。

  7. 主服务器执行Zone transfer。

一个同步问题:

主从DNS 服务器一个物理网卡上都绑定了多个ip,其中的某个ip作为ns1/ns2的地址。

搭建好之后出现无法同步问题,在ns2的syslog文件中出现

client a.b.c.d   view external: received notify for zone '1.10.in-addr.arpa': not authoritative

其中该ip为ns1网卡上的某个地址,说明在进行notify时没有按照预期使用ns1的ip地址进行notify,该地址不是这个zone的权威,也不是被允许的notify地址,需要用notify-source 指定ns1 ip。

在ns2的配置文件中添加allow-notify { ns1 ip;};

问题2.

修改db的serial后,执行rndc reload,不进行同步,单独执行rndc reload zoneA,报错:

rndc: 'reload' failed: dynamic zone

原因是,该zone是动态更新的域,配额文件中有

allow-update { key "hadoo"; };

不允许手动更新,手动修改 serial也会报错,

需要执行如下步骤:

 rndc freeze(冻结动态更新)

edit the serial (修改序列号)

rndc reload (更新)

rndc thaw (解冻)

这样就可以执行成功

或者使用默认隐式的allow-update { none; };

 

posted @ 2013-10-17 17:43  silence.li  阅读(1007)  评论(3编辑  收藏  举报