2012年3月1日星期四

主从dns服务器view中的数据利用Tsig同步

TSIG同步有两个要点,搞清楚这两个要点,就不会配置错了。
1 每个view需要match一个不同的key,并且allow-transfer中也配置此key。
2 slave的ip不能在master的任何一个view中(any这个view例外)。原因:slave在同步的时候会向master查询对应zone的SOA序列号,如果slave的ip在master中的某个view中,将导致每次查询的soa记录都是此view中的记录,而并非对应的key的view中的记录,因此可能造成无法同步数据,或者同步了其它view中的数据。
 
简单的方式可以这么做:master 的 match-clients 只有 key 而没有任何 ip。这种情况下 master 只能用来更新dns记录并传输记录,而不能作为授权 dns 或者 local dns 使用。这样就避免了在master的match-clients中配置多个诸如 !10.0.0.1 这种acl了。

EXAMPLE:

Master 10.20.149.60
Slave 10.20.149.36

主dns配置:
view "view1" {
        match-clients {key idc-key;};
        allow-transfer {key idc-key;};
        allow-update {key idc-key;};
        also-notify {10.20.149.36;};
        server 10.20.149.36 { keys {idc-key;}; };
        zone "example.com" IN {
        type master;
        file "view/idc/hosts.example.com";
    };
};

从dns配置:
view "view1" {
        match-clients {key idc-key; 10.0.0.0/8; };
        allow-transfer {key idc-key;};
        server 10.20.149.60 {keys idc-key;};
        zone "example.com" IN {
        type slave;
        masters { 10.20.149.60; };
        file "view/idc/hosts.example.com";
    };
};

从dns也可以如此配置:
view "view1" {
        match-clients {key idc-key; 10.0.0.0/8; };
        allow-transfer {key idc-key;};
        zone "example.com" IN {
        type slave;
        masters { 10.20.149.60 keys idc-key;};
        file "view/idc/hosts.example.com";
    };
};

1 条评论:

  1. 大家好,我的名字是福莫萨迪库住在马林迪市肯尼亚我想告诉多一点关于一个好心人叫本杰明·布里尔·李与资助服务作为贷款官员,本杰明·布里尔·李先生帮我得到了37,115,225.00先令的贷款,我试图回到我的脚提高 我的生意,我知道有一些在财政困难,与本杰明先生谈什么应用程序+1-989-394-3740或他的个人电子邮件Lfdsloans@outlook.com我很高兴他为我做了什么,他的银行会计师以及会计师埃尔南德斯卢卡斯非常感谢你的工作做得很好。

    回复删除