Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > bind9 view 底下的 master/slave 詏定方案
【标  题】:bind9 view 底下的 master/slave 詏定方案
【关键字】:bind9,view,master/slave
【来  源】:http://blog.chinaunix.net/article.php?articleId=59776&blogId=74

bind9 view 底下的 master/slave 詏定方案

Your Ad Here bind9 view 底下的 master/slave 詏定方案

新版本可從如下獲得:
http://www.study-area.org/tips/bind9_view.htm


[設定心得] Bind9 View 底下的 master/slave 設定方案
---------------------------------------
作者:netman(netman@study-area.org)
版本:v0.01
日期:2004-04-20

* 版本歷程:
1) 2004-04-20 v0.01
- 初版

---------------------------------------


一、前言

bind-9 自問世以來,深受廣大 dns 管理員歡迎(年紀越大越如此... ^_^),
是由於 bind9 提供了許多功能,解決了長期以來深受困擾的 dns 管理難題。

可是在新功能出現後,也帶來了一些前所不曾預料的新問題,
其中之一,就是 view 設定下的 master/slave 的同步問題。


二、問題分析

由於 master 端利用 view 的分界,按照不同的查詢來源位址回應不同的答案。
這對一般的 query 工作是非常有效的。

倘若 master 與 slave 的對外與對內界面均能相互指定路由(這是前提),
那只要在 slave 端不同的 view 內指定 master 的不同 IP ,也能夠順利完成 zone
transfer 。

但問題在於,當 slave 端在進行 SOA 查詢及作 XFER 時,
若 master 端只看到 client 端的某一特定來源位址,因而只能回應單一的 view ,
那就不能順利完成其他 view 的 zone transfer 。


三、解決方案

我們可利用 bind9 的 transfer-source 功能,在 slave 端指定其用來作 zone transfer
的 source address ,
得以讓 master 回應正確的 answer 。

其關鍵點是 slave 需設定多個 IP (可分內外或用 IP Alias),且都能讓 master 路由得到
就行。


四、假設情景

- 假設授權 domain 為 my.domain 。

- 假設 master 的界面分配如下:
- External: eth0 1.2.3.4
- Internal: eth1 10.1.2.3

- 假設 slave 的界面分配如下:
- Primary: eth0 10.1.2.4
- Alias: eth0:0 10.1.2.5


五、設定細節:

- master
修改 /etc/named.conf ,內容類似如下:
代码:
acl lan { 10.1.2.0/24;};

options { directory { /var/named; }; };

view internal {
match-client { !10.1.2.5; lan; };// 這裡排除 slave 的另一位址
zone . IN {
  type hint;
  file named.root;
};
zone my.domain IN {
  type master;
  file my.domain.int;
  allow-transfer { 10.1.2.4; }; //允許 slave 的 primay 位址
};
};

view external {
match-client { any; };
recursion no;
zone . IN {
  type hint;
  file named.root;
};
zone my.domain IN {
  type master;
  file my.domain.ext;
  allow-transfer { 10.1.2.5; }; //允許 slave 的 alias 位址
};
};



- slave
修改 /etc/named.conf ,內容類似如下:
代码:
acl lan { 10.1.2.0/24;};

options { directory { /var/named; }; };

view internal {
match-client { lan; };
zone . IN {
  type hint;
  file named.root;
};
zone my.domain IN {
  type slaver;
  file slave.my.domain.int;
  masters { 10.1.2.3; };
  transfer-source 10.1.2.4; // 指定 primay 位址
};
};
view external {
match-client { any; };
recursion no;
zone . IN {
  type hint;
  file named.root;
};
zone my.domain IN {
  type master;
  file slave.my.domain.ext;
  masters { 10.1.2.3; };
  transfer-source 10.1.2.5; // 指定 alias 位址
};
};




六、測試:

當設定完成後,只需重新啟動 master/slave 雙方的 bind 服務程式即可。


七、結語:

Bind9 的功能很多是新概念,本文希望對有志探索 bind 這一神奇系統的同好有所幫助,且
起拋磚引玉之用。


八、參考資料:

- O'Reilly, Linux Server Hacks: 100 Industrial-Strength Tips & Tool

BIND9.2.2安装配置终极手册(上):【上一篇】
C for AIX V6 VAC++ for AIX V6 XLFortran8.1在AIX5.2上的安装文档:【下一篇】
【相关文章】
  • BIND9.2.2安装配置终极手册(上)
  • Red Hat Enterprise Linux 无法用VNC Viewer连接,报错:无法连接的主机,10065!
  • Quick File Viewer V1.1
  • C++ Coding Standards Item 4: Invest in code reviews
  • 8. Language Overview
  • 关于将基于Doc/View结构的EXE程序封装成OCX的一些经验
  • ListView扩展
  • winform中treeview的一些使用心得
  • ListView视图中无法使用派生的CListCtrl类。
  • 关于TreeView控件专题
  • 【随机文章】
  • inetd无法启动
  • 动态生成asp.net控件
  • Linux下的时间
  • [2006-03-23]手工清除灰鸽子新变种(第3版)
  • 用Delphi编写Web Service(实例)
  • [号外]来自Eclipse官方的消息 - Eclipse WTP (Web Tools Platform) 1.0本周发布
  • FC6 加载本地源之解决方案
  • Glance监控命令在HP UX上的使用
  • 我的未来在哪里??(不好意思,放在了首页)
  • What means make "TARGET=12345" goal1 goal2
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.