Linux DNS 主從複製

来源:https://www.cnblogs.com/llife/archive/2019/10/07/11632890.html
-Advertisement-
Play Games

設置主從 DNS 的主要是為了冗餘,分擔壓力,防止伺服器宕機後, DNS 無法正常解析。 ...


CentOS-Logo

設置主從DNS的主要是為了冗餘,分擔壓力,防止伺服器宕機後,DNS無法正常解析。


配置 master

正常配置DNS服務。

設置主機名

[root@localhost ~]# hostnamectl set-hostname master
[root@localhost ~]# bash

安裝 bind 包

[root@master ~]# yum install bind bind-utils -y

編輯主配置文件

[root@master ~]# vim /etc/named.conf
  • 配置監聽網段、允許查詢網段
listen-on port 53 { 192.168.28.128; };
allow-query     { any; };

編輯區域配置文件

[root@master ~]# vim /etc/named.rfc1912.zones
zone "yun.com" IN {
        type master;
        file "yun.com.zone";
        allow-update { none; };
};

zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "100.168.192.zone";
        allow-update { none; };
};

編輯區域數據配置文件

[root@master ~]# cd /var/named/
  • 編輯正向區域數據文件
[root@master named]# cp -p named.localhost yun.com.zone
[root@master named]# vim yun.com.zone
$TTL 1D
@   IN SOA  yun.com admin.yun.com. (
                    0   ; serial
                    1D  ; refresh
                    1H  ; retry
                    1W  ; expire
                    3H )    ; minimum
    IN  NS  yun.com.
    IN  A   192.168.28.128
    IN  MX 10   mail.yun.com.
www IN  A   192.168.100.10
ftp IN  A   192.168.100.20
bbs IN  CNAME   www
*   IN  A   8.8.8.8
  • 編輯反向區域數據文件
[root@master named]# cp -p yun.com.zone 100.168.192.zone
[root@master named]# vim 100.168.192.zone
$TTL 1D
@       IN SOA  yun.com admin.yun.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        IN      NS      yun.com.
        IN      A       192.168.28.128
10      IN      PTR     www.yun.com.
20      IN      PTR     ftp.yun.com.

啟動服務

[root@master ~]# systemctl start named
[root@master ~]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
[root@master ~]# netstat -ntuap | grep named
tcp        0      0 192.168.28.128:53       0.0.0.0:*               LISTEN      34822/named         
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      34822/named         
tcp6       0      0 ::1:53                  :::*                    LISTEN      34822/named         
tcp6       0      0 ::1:953                 :::*                    LISTEN      34822/named         
udp        0      0 192.168.28.128:53       0.0.0.0:*                           34822/named         
udp6       0      0 ::1:53                  :::*                                34822/named         

關閉防火牆

[root@master ~]# systemctl stop firewalld
[root@master ~]# setenforce 0

nslookup

  • 設置DNS地址
[root@master ~]# vim /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.28.128
  • 正向查詢
[root@master ~]# nslookup www.yun.com
Server:     192.168.28.128
Address:    192.168.28.128#53

Name:   www.yun.com
Address: 192.168.100.10

[root@master ~]# nslookup ftp.yun.com
Server:     192.168.28.128
Address:    192.168.28.128#53

Name:   ftp.yun.com
Address: 192.168.100.20

[root@master ~]# nslookup bbs.yun.com
Server:     192.168.28.128
Address:    192.168.28.128#53

bbs.yun.com canonical name = www.yun.com.
Name:   www.yun.com
Address: 192.168.100.10

[root@master ~]# nslookup asd.yun.com
Server:     192.168.28.128
Address:    192.168.28.128#53

Name:   asd.yun.com
Address: 8.8.8.8
  • 反向查詢
[root@master ~]# nslookup 192.168.100.10
Server:     192.168.28.128
Address:    192.168.28.128#53

10.100.168.192.in-addr.arpa name = www.yun.com.

[root@master ~]# nslookup 192.168.100.20
Server:     192.168.28.128
Address:    192.168.28.128#53

20.100.168.192.in-addr.arpa name = ftp.yun.com.

allow-transfer

這是最重要的一步,允許傳送。配置好後重啟服務。

[root@master ~]# vim /etc/named.rfc1912.zones
zone "yun.com" IN {
        type master;
        file "yun.com.zone";
        allow-transfer { 192.168.28.129; };
        allow-update { none; };
};

zone "100.168.192.in-addr.arpa" IN {
        type master;
        file "100.168.192.zone";
        allow-transfer { 192.168.28.129; };
        allow-update { none; };
};

配置 slave

設置主機名

[root@localhost ~]# hostnamectl set-hostname slave
[root@localhost ~]# bash

安裝 bind 包

[root@slave ~]# yum install bind bind-utils -y

編輯主配置文件

[root@slave ~]# vim /etc/named.conf
  • 配置監聽網段、允許查詢網段
listen-on port 53 { 192.168.28.129; };
allow-query     { any; };

編輯區域配置文件

[root@slave ~]# vim /etc/named.rfc1912.zones
zone "yun.com" IN {
        type slave;
        file "slaves/yun.com.zone";
        masters { 192.168.28.128; };
        allow-update { none; };
};

zone "100.168.192.in-addr.arpa" IN {
        type slave;
        file "slaves/100.168.192.zone";
        masters { 192.168.28.128; };
        allow-update { none; };
};

啟動服務

[root@slave ~]# systemctl start named
[root@slave ~]# systemctl enable named
Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service.
[root@slave ~]# netstat -ntuap | grep named
tcp        0      0 192.168.28.129:53       0.0.0.0:*               LISTEN      1661/named          
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN      1661/named          
tcp6       0      0 ::1:53                  :::*                    LISTEN      1661/named          
tcp6       0      0 ::1:953                 :::*                    LISTEN      1661/named          
udp        0      0 192.168.28.129:53       0.0.0.0:*                           1661/named          
udp6       0      0 ::1:53                  :::*                                1661/named          

關閉防火牆

[root@slave ~]# systemctl stop firewalld
[root@slave ~]# setenforce 0
  • 區域數據文件自動傳送到從伺服器
[root@slave ~]# ll /var/named/slaves/
total 8
-rw-r--r--. 1 named named 378 Sep 12 02:11 100.168.192.zone
-rw-r--r--. 1 named named 392 Sep 12 02:11 yun.com.zone

nslookup

  • 設置DNS地址
[root@slave ~]# vim /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.28.129
  • 正向查詢
[root@slave ~]# nslookup www.yun.com
Server:     192.168.28.129
Address:    192.168.28.129#53

Name:   www.yun.com
Address: 192.168.100.10

[root@slave ~]# nslookup ftp.yun.com
Server:     192.168.28.129
Address:    192.168.28.129#53

Name:   ftp.yun.com
Address: 192.168.100.20

[root@slave ~]# nslookup bbs.yun.com
Server:     192.168.28.129
Address:    192.168.28.129#53

bbs.yun.com canonical name = www.yun.com.
Name:   www.yun.com
Address: 192.168.100.10

[root@slave ~]# nslookup asd.yun.com
Server:     192.168.28.129
Address:    192.168.28.129#53

Name:   asd.yun.com
Address: 8.8.8.8
  • 反向查詢
[root@slave ~]# nslookup 192.168.100.10
Server:     192.168.28.129
Address:    192.168.28.129#53

10.100.168.192.in-addr.arpa name = www.yun.com.

[root@slave ~]# nslookup 192.168.100.20
Server:     192.168.28.129
Address:    192.168.28.129#53

20.100.168.192.in-addr.arpa name = ftp.yun.com.

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 我們在使用C#編程的時候,經常使用反射來動態調用方法,但有時候需要動態的生成方法,下麵介紹使用表達式樹的方式來自動生成方法,並調用。 首先需要說明什麼是表達式,熟悉Linq的程式猿都用過類似於下麵的代碼:t=>t.Length<=25; 在C#中=>代表這是一個Lambda表達式,它用來對數組進行查 ...
  • 最近有人問我圖像處理怎麼研究,怎麼入門,怎麼應用,我竟一時語塞。仔細想想,自己也搞了兩年圖像方面的研究,做個兩個創新項目,發過兩篇論文,也算是有點心得,於是總結總結和大家分享,希望能對大家有所幫助。 在寫這篇教程之前我本想多弄點插圖,讓文章看起來花哨一點,後來我覺得沒必要這樣做,大家花時間沉下心來讀 ...
  • 大規模裝機時,使用無人值守裝機便可大大簡便人工操作,提高效率。 ...
  • 本篇主要寫了怎麼搭建自定義的 YUM 源,在一個擁有大量本地網路的主機環境中,可以減少對外網的依賴。 ...
  • 通過 NFS 網路文件系統,可以通過網路共用目錄,讓網路上的其他主機可以通過掛載訪問共用目錄的數據。 ...
  • 在 Linux 中,許多網路服務針對客戶機提供訪問控制機制,而 TCP Wrappers 是應用服務與網路之間的一道特殊的防線,提供額外的安全保障。 ...
  • 本篇寫一些關於 Linux 網路中 SSH 服務的相關知識。 ...
  • 設置 DNS 分離解析可以對不同的客戶端提供不同的功能變數名稱解析記錄。來自不同地址的客戶機請求同一功能變數名稱時,為其提供不同的解析結果。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...