久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

主從dns自動同步設(shè)置(bind)

 sven_ 2014-01-21
假設(shè)兩臺dns系統(tǒng)都安裝了bind9.6,,其中主dns為192.168.3.124,有分view配置,,從dns為192.168.3.123,,則配置如下;

主dns配置:

options {
 directory "/var/named";
 dump-file "/var/named/data/cache_dump.db";
 statistics-file "/var/named/data/named_stats.txt";
 allow-transfer {192.168.3.123;};
};

logging {
 channel "named_log" {
  file "/var/log/named/named.log" versions 10 size 20m;
  severity info;
  print-category yes;
  print-severity yes;
  print-time yes;
 };
 category default { named_log; };
};

controls {
 inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};

include "/etc/rndc.key";

key "tel" {
 algorithm hmac-md5;
 secret "YylFWUQsflthT0nhexv3sQ==";
};

key "cnc" {
 algorithm hmac-md5;
 secret "YSP6cJNR3nwsVn2O0/79zA==";
};

view "cnc" {
 match-clients {key "cnc"; 192.168.3.112;};
 server 192.168.3.123 { keys "cnc"; };

 zone "." IN {
  type hint;
  file "/var/named/named.root";
 };

 zone "com" {
  type master;
  also-notify {192.168.3.123;};
  file "cnc_com.hosts";
 };
};

view "tel" {
 match-clients {key "tel"; 192.168.3.115; };
 server 192.168.3.123 { keys "tel"; };

 zone "." IN {
  type hint;
  file "/var/named/named.root";
 };

 zone "com" {
  type master;
  also-notify {192.168.3.123;};
  file "tel_com.hosts";
 };
};

從dns配置:

key "tel" {
 algorithm hmac-md5;
 secret "YylFWUQsflthT0nhexv3sQ==";
};

key "cnc" {
 algorithm hmac-md5;
 secret "YSP6cJNR3nwsVn2O0/79zA==";
};

options {
 directory "/var/named";
 dump-file "/var/named/data/cache_dump.db";
 statistics-file "/var/named/data/named_stats.txt";
 max-refresh-time 10;
};

logging {
 channel "named_log" {
  file "/var/log/named/named.log" versions 10 size 20m;
  severity info;
  print-category yes;
  print-severity yes;
  print-time yes;
 };
 category default { named_log; };
};

controls {
 inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};

include "/etc/rndc.key";


view "cnc" {
 match-clients { key "cnc";192.168.3.112;};
 server 192.168.3.124 { keys "cnc"; };
 zone "." IN {
  type hint;
  file "/var/named/named.root";
 };

 zone "com"{
  type slave;
  file "cnc_com.hosts";
  masters{ 192.168.3.124; };
 };
};

view "tel" {
 match-clients {key "tel"; 192.168.3.115; };
 server 192.168.3.124 { keys "tel"; };

 zone "." IN {
  type hint;
  file "/var/named/named.root";
 };

 zone "com"{
  type slave;
  file "tel_com.hosts";
  masters{ 192.168.3.124; };
 };
};

說明:當(dāng)主dns加載配置的時候,會主動發(fā)送notify給從dns,,從dns發(fā)現(xiàn)主dns配置比較新的話,,就會下載配置文件;同時,,從dns也會根據(jù)zone設(shè)置的soa的刷新時間來定時向主服務(wù)器進(jìn)行查詢,,以便進(jìn)行更新,。
        如果主dns不設(shè)置server語句的話,則主服務(wù)器主動發(fā)送給從dns的notify會被拒絕,;如果從服務(wù)器不設(shè)置server語句的話,,則不能實(shí)現(xiàn)分view同步的功能;如果主從服務(wù)器時間不同步的話,,則會導(dǎo)致驗(yàn)證失?。蝗绻麖膁ns的ip匹配到主dns的view,,則會導(dǎo)致只同步這個view的數(shù)據(jù)下來,,即使配置了key。

 

Linux主輔dns數(shù)據(jù)不同步故障排除

      在互聯(lián)網(wǎng)中,,我們知道任何一臺提供應(yīng)用服務(wù)的主機(jī)(例如:HTTP,、FTP等)都有它一個便于記憶Domain Name,這些名稱給用戶帶來了許多便利,。但是,,有些時候這些服務(wù)卻對我們這些維護(hù)人員顯得有些不“厚道”。本文將介紹DNS主輔配置過程中常遇到的配置問題以及排除方法,。
      我們有必要了解一下主輔DNS區(qū)域復(fù)制原理:如下圖3所示主輔DNS服務(wù)器數(shù)據(jù)同步的過程,,首先master DNS服務(wù)器每次修改完成并重啟服務(wù)后,將傳送notify給所有的slave DNS服務(wù)器,。slave DNS服務(wù)器將查詢master服務(wù)器的SOA記錄,,master DNS服務(wù)器收到請求后將SOA記錄發(fā)送給Slave DNS服務(wù)器,Slave DNS服務(wù)器收到后同時對比查詢結(jié)果中的serial值,,如果serial值不大于本機(jī)的話將結(jié)束數(shù)據(jù)同步過程,;但是如果serial值大于本機(jī)的話,,slave DNS將發(fā)送zone transfer請求要求(AXFR/IXFR),。Master響應(yīng)zone transfer請求并傳送結(jié)果,直到整個slave更新完成,。
 
整體的同步過程如上所述,,但是如何將這些原理體現(xiàn)在相關(guān)的配置文件中,這里以創(chuàng)建域名[url]www.[/url]記錄為例:
測試平臺:RedHat Enterprise Linux 5 Server update 2
所需軟件包列表:
軟件包名稱
作用
bind-libs
包含DNS的庫文件
Bind-9
DNS服務(wù)器軟件,,安裝此軟件前需要安裝libs
caching-nameserver
配置文件模板
bind-utils
DNS查詢工具軟件
bind-chroot
使DNSchroot模式下運(yùn)行,,增強(qiáng)安全性(選擇性安裝)
根據(jù)你使用的安裝包安裝相應(yīng)的軟件,這里我使用系統(tǒng)自帶的rpm包,,配置yum本地更新源后,,使用命令yum install bind*進(jìn)行安裝。使用yum安裝的好處是能夠自動處理安裝過程中包的連帶性,,但是有時候也安裝了一些不必要的程序到你的系統(tǒng),。
安裝完成后第一件需要注意的事情是“查看你是否安裝了bind-chroot這個包”這個程序的主要功能是:將DNS服務(wù)器在chroot模式下運(yùn)行,,在這種模式下運(yùn)行的話,它會將所有和DNS相關(guān)的文件都鎖定到/var/named/chroot目錄下,,就是說bind的訪問范圍僅僅定位于這個目錄中,,無法進(jìn)一步提升到系統(tǒng)中的其它目錄。這樣可以提高系統(tǒng)的安全性,。這樣聽起來很美,,但是配置起來會出現(xiàn)許多的問題,建議不要使用,。如果你使用了的話,,所有配置修改需要到/var/named/chroot下,例如配置文件在/var/named/chroot/etc/named.conf,。
[root@master ~]#rpm –q bind-chroot
由于RedHat AS 5安裝后默認(rèn)的配置文件名稱named.caching-nameserver.conf/etc/named. caching .zones組成,。修改配置文件名稱:
[root@master ~]#mv /etc/named.caching-nameserver.conf /etc/named.conf
[root@master ~]#mv /etc/named. caching .zones /etc/named. zones
修改主DNS服務(wù)器上的配置文件,修改結(jié)果如下:
[root@master~ ]# vi /etc/named.conf
//
// named.caching-nameserver.conf
省略若干注釋
options {
        listen-on port 53 { 10.1.1.1; };
        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";
        query-source    port 53;
        query-source-v6 port 53;
        allow-query     { any; };
};
include "/etc/named.zones";
[root@master ~]#
修改/etc/named.zones文件,,添加相關(guān)字段創(chuàng)建正向區(qū)域,,添加內(nèi)容如下:
[root@master~]# vi /etc/named.zones
// named.rfc1912.zones:
省略若干注釋和若干默認(rèn)區(qū)域
zone "" IN {
        type master;
        file "";
        allow-transfer { 10.1.1.2; };
        allow-update { none; };
};
[root@master~]#
在/var/named創(chuàng)建相關(guān)區(qū)域文件內(nèi)容如下所示:
[root@master~ ]# cat /var/named/
$TTL    86400
@       IN      SOA     master.. root.master..  (
                                      2008111305 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN      NS      master..
        IN      NS      slaves..
www     IN      A       10.1.1.1
ftp     IN      A    3   10.1.1.1
[root@master~ ]#
由于是測試我這里就不建立許多的區(qū)域了,在輔助DNS上的配置幾乎一樣,,只需要將named.conf配置文件中的listen-on port 53 中的IP地址字段修改為輔助DNS服務(wù)器即可,。
[root@ slave~ ]# vi /etc/named.conf
//
// named.caching-nameserver.conf
省略若干注釋
options {
        listen-on port 53 { 10.1.1.2; };
省略其它和主DNS服務(wù)器相同字段
        include "/etc/named.zones";
[root@ slave~ ]#
/etc/named.zones配置文件中將區(qū)域類型修改為slave,并指定主DNS服務(wù)器IP即可:
[root@ slave~]# vi /etc/named.zones
// named.rfc1912.zones:
省略若干字段,。,。。,。,。。
zone "" IN {
        type slave;
        file "slaves/";
        masters { 10.1.1.1; };
        allow-update { none; };
};
[root@ slave~]#
注意:修改每臺DNS服務(wù)器自己為DNS服務(wù)器,,相關(guān)配置文件為/etc/resolv.conf,。
將所有配置完成后我們分別在主輔DNS上執(zhí)行命令service named start啟動服務(wù)。
   故障一:
DNS上使用ping命令測試,,發(fā)現(xiàn)了第一個故障:啟動服務(wù)過程中沒有任何的錯誤提示,,ping域名的時候卻顯示沒有這個域名。
故障分析:通過ping域名的時候,,我們得知沒有這個域名的回應(yīng)值,,這表明這個區(qū)域沒有生效,但是到底是什么原因?qū)е聟^(qū)域沒有生效呢,?這個時候不要茫然,,去看看日志吧!
[root@master~]# tail /var/log/messages
省略若干… …
Nov 21 20:55:57 localhost named[7113]: zone /IN: loading master file : permission denied
Nov 21 20:55:57 localhost named[7113]: zone localdomain/IN: loaded serial 42
Nov 21 20:55:57 localhost named[7113]: zone localhost/IN: loaded serial 42
Nov 21 20:55:57 localhost named[7113]: running
[root@master~]#
黎明前的黑暗終于度過,,一行行的日志終于看完,,發(fā)現(xiàn)在加載的時候出現(xiàn)了permission denied的提示,,就是說加載文件時被拒絕了。為什么會拒絕呢,?我們先查看一下這個文件的屬性吧,?
[root@master~]# ll /var/named/
-rw-r----- 1 root root 436 11-21 20:54 /var/named/
[root@master~]#
發(fā)現(xiàn)這個文件的所有者是root,屬組也是root,,但是由于DNS服務(wù)使用named這個用戶啟動服務(wù),,難怪會拒絕了呢。那修改一下吧,!
[root@master~]#chown named.named /var/named/
修改完成后重啟dns服務(wù),,使配置生效。
[root@master~]#service named restart
再次查看日志,,發(fā)現(xiàn)已經(jīng)成功加載,。
[root@master~]# tail -5 /var/log/messages
省略若干... ...
Nov 21 21:11:46 localhost named[7217]: zone /IN: loaded serial 2008111305
Nov 21 21:11:46 localhost named[7217]: zone localdomain/IN: loaded serial 42
Nov 21 21:11:46 localhost named[7217]: zone localhost/IN: loaded serial 42
Nov 21 21:11:46 localhost named[7217]: running
[root@master~]#
總結(jié):這個問題出現(xiàn)的原因是由于我們創(chuàng)建這個文件的時候,沒有考慮文件權(quán)限,,導(dǎo)致出現(xiàn)這個問題,。如果有的朋友不是手工編輯的這個文件,而是直接復(fù)制/var/named/named.local這個文件后再修改的,,建議復(fù)制過程中使用-p參數(shù),。這樣就避免了cp后再修改權(quán)限的步驟。
接著迫不及待的去啟動了輔助DNS的服務(wù),,之后去查看/var/named/slaves中是否存在這個區(qū)域文件,。發(fā)現(xiàn)成功復(fù)制過來。
[root@ slave ]# ls /var/named/slaves/
[root@ slave ]#
到這個時候我們的測試還沒有結(jié)束,,繼續(xù)進(jìn)行中,,首先我們再次回到主DNS服務(wù)器上編輯區(qū)域文件,增加主機(jī)記錄,,修改serial值,。
[root@master ]# cat /var/named/
$TTL    86400
@       IN      SOA     master.. root.master..  (
                                      2008111306 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
        IN      NS      master..
        IN      NS      slaves..
www     IN      A       10.1.1.1
ftp     IN      A       10.1.1.1
down    IN      A       10.1.1.1
[root@master~]#
修改完成后,使用service named reload重新加載配置文件,,到輔助dns上驗(yàn)證我們添加的記錄是否同步過來,。但是再次失望了,,故障又發(fā)生了,。
故障二:
主DNS服務(wù)器修改記錄或添加區(qū)域輔助DNS同步不過去,或者需要很長時間,。這樣如果在現(xiàn)實(shí)生活中,,會造成各地訪問的結(jié)果不同。我們有必要研究一下主DNS服務(wù)器上修改完成后如何快速的同步給其它輔助的DNS,。
故障分析:
為了查清故障的原因,,這個時候我分別在各個DNS服務(wù)器上開啟兩個終端,,在第一個終端輸入命令tail -f /var/log/messages動態(tài)監(jiān)控日志;另一個終端中重啟DNS服務(wù),。發(fā)現(xiàn)沒有產(chǎn)生任何日志,。這個時候,思考了一下主輔DNS的工作原理,,每次主DNS修改完成后重啟服務(wù)會傳送notify值,,但是這里卻沒有傳送。再次回到配置文件中檢查相關(guān)字段發(fā)現(xiàn)沒有定義,。這個字段可以在named.conf中options字段中聲明,。也可以在單個區(qū)域文件中聲明。
這里在的zone中添加also-notify { 10.1.1.2; };值,。
[root@master~]#
zone "" IN {
        type master;
        file "";
           notify yes;
        also-notify { 10.1.1.2; };
        allow-transfer { 10.1.1.2; };
        allow-update { none; };
};
[root@master~]#
注意:如果要在options中聲明,可以使用notify yes;即可,。
再次加載服務(wù),,發(fā)現(xiàn)監(jiān)控的日志開始有相應(yīng)的請求和發(fā)送的字段出現(xiàn),。主DNS服務(wù)器的日志如下:
[root@master ~]#tail -f /var/log/messages
Nov 13 16:17:38 master named[3159]: zone /IN: sending notifies (serial 2008111306)
Nov 13 16:18:57 master named[3159]: client 10.1.1.2#45757: transfer of '/IN': AXFR-style IXFR started
Nov 13 16:18:57 master named[3159]: client 10.1.1.2#45757: transfer of '/IN': AXFR-style IXFR ended
[root@master ~]#
輔助DNS服務(wù)器上日志顯示如下:
[root@ slave~ ]#tail -f /var/log/messages
Nov 14 08:12:55 ns named[6014]: running
Nov 14 08:12:55 ns named[6014]: zone /IN: sending notifies (serial 2008111306)
Nov 14 08:15:10 ns named[6014]: client 10.1.1.1#1106: received notify for zone ''
Nov 14 08:15:10 ns named[6014]: zone /IN: Transfer started.
[root@ slave~ ]#
這個時候問題解決,其實(shí)還有配置主輔DNS服務(wù)器的時候還會見到類似failed while receiving responses: REFUSED錯誤提示,,一般是由于主DNS服務(wù)器上未授權(quán)或者是相關(guān)的目錄沒有權(quán)限造成,。只要耐心查看日志和思考問題,,相信問題均可解決,。
相關(guān)原理:
在解決問題的過程中有的朋友說將SOA中的Refresh值修改小一點(diǎn),,沒錯,!但是這個值什么時候生效呢,?當(dāng)我們主DNS服務(wù)器上修改完成后重啟服務(wù),會主動傳送notify值,,如果輔助DNS服務(wù)器沒有收到才參考Refresh,,Refresh 不成功,則參考Retry ,Retry 一直不成功, 則參考 Expire,,如果Expire也不成功,,則選擇放棄zone transfer的過程。
5. 注意事項(xiàng)
A.從主DNS復(fù)制過來的區(qū)域文件存放目錄的權(quán)限。
B.主配置文件named.conf的";"不能少。

named.conf 的理解
目錄說明
/var/named/chroot/etc                          #存放named.conf
/var/named/chroot/var/named               #存放zone&arpa文件
/var/log/messages                                #查看配置過程中出錯信息
[root@46 etc]# pwd
/var/named/chroot/etc
[root@46 etc]# cp -p named.caching-nameserver.conf named.conf #書上說找不到named.conf會自動啟用named.caching-nameserver.conf,,不過沒試過
[root@46 etc]# ls
localtime  named.caching-nameserver.conf  named.conf  named.rfc1912.zones  rndc.key
[root@46 etc]# vi named.conf
//參照《linux 系統(tǒng)與網(wǎng)絡(luò)服務(wù)管理技術(shù)大全》第11 章,,注釋有的是大力自己理解的,,不一定正確,。
//
// named.caching-nameserver.conf
//
// named.caching-nameserver.conf
//
// provided by red hat caching-nameserver package to configure the
// isc bind named(8) dns server as a caching only nameserver 
// (as a localhost dns resolver only). 
//
// see /usr/share/doc/bind*/sample/ for example named configuration files.
//
// do not edit this file - use system-config-bind or an editor
// to create named.conf - edits to this file will be lost on 
// caching-nameserver package upgrade.
//
options { //服務(wù)器的全局配置選項(xiàng)及一些默認(rèn)設(shè)置
        listen-on port 53 { any; }; //監(jiān)聽端口,也可寫為 { 127.0.0.1; 192.168.139.46; }
        listen-on-v6 port 53 { ::1; }; //對ip6支持
        directory       "/var/named";  //區(qū)域文件存儲目錄
        dump-file       "/var/named/data/cache_dump.db"; //dump cach的目錄directory
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        pid-file        "/var/run/named/named.pid"; //存著named的pid
        forwarders     { 168.95.1.1; 139.175.10.20; }; // 如果域名服務(wù)器無法解析時,,將請求交由168.95.1.1; 139.175.10.20來解析
        allow-query    { any; };   //指定允許進(jìn)行查詢的主機(jī),,當(dāng)然是要所有的電腦都可以查啦
        allow-transfer { none; }; //指定允許接受區(qū)域傳送請求的主機(jī),,說明白一點(diǎn)就是輔dns定義,比如輔dns的ip是192.168.139.5,,那么可以這樣定義{ 192.168.139.5; },,要不然主輔dns不能同步,當(dāng)然,,{}里的也可以用下面提到的acl,。
        // those options should be used carefully because they disable port
        // randomization
        // query-source    port 53;     
        // query-source-v6 port 53;
};
logging { //指定服務(wù)器日志記錄的內(nèi)容和日志信息來源
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};
// 這里定義一個acl列表
acl "acl1" {
        192.168.139.0/200; 192.168.1.0/200 
};
view localhost_resolver { //定義一個視圖
        match-clients      { any; }; //查詢者的源地址,any表示localhost_resolver視圖對任何主機(jī)開放,,如果寫成{ acl1; },,那么就只有acl1表里的ip可以遞歸查詢了
        match-destinations { any; }; //查詢者的目標(biāo)地址,這里也可以寫成{ localhost; acl1; }
        recursion yes;  //設(shè)置進(jìn)行遞歸查詢
        include "/etc/named.rfc1912.zones"; //包含文件,,這里也就是載入/etc/named.rfc1912.zones
};

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多