目次
設定ファイルの分析 " >設定ファイルの分析
再帰 DNS サーバー、権威 DNS サーバー" >再帰 DNS サーバー、権威 DNS サーバー
配置主服务器
" >配置主服务器
配置从服务器
" >配置从服务器
客户端验证
" >客户端验证
ホームページ よくある問題 マスター/スレーブ DNS 導入 - 超詳細な実験運用

マスター/スレーブ DNS 導入 - 超詳細な実験運用

Aug 02, 2023 pm 03:46 PM
dns


マスター/スレーブ DNS 導入 - 超詳細な実験運用

#読者からのリクエストに応えて、今日は DNS マスターとスレーブに関する知識を追加します。

マスター/スレーブDNSの導入については、仕事で使用することはほとんどありませんが、遭遇したときに誰もがすぐに環境を構築できるようにするために、ここで実践します。

DNS ソフトウェアのインストール:

[root@slave1 ~]# yum -y install bind*
ログイン後にコピー

設定ファイルの分析

/etc/named.conf この設定ファイルは主に 3 つのセクションに分かれており、オプションはグローバル設定、ロギングはログ設定、最後にリージョン解析ライブラリ設定と含まれるリージョン解析ライブラリ ファイル設定です。

[root@slave1 ~]# vim /etc/named.conf
options {
        listen-on port 53 { 10.0.0.62; };
        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";
        recursing-file "/var/named/data/named.recursing";
        secroots-file "/var/named/data/named.secroots";
        allow-query { any; };

        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable access
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.root.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

//.表示根区域,这个区域是必须要有的
zone "." IN {
        type hint; //指定根区域类型。
        file "named.ca"; //指定根区域解析库文件名称所在位置,相对于/var/named
};

//指定区域文件名称,所有的区域定义都可以写在named.rfc1912.zones文件中
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
ログイン後にコピー

配置文件详解:

listen-on port 53 { 10.0.0.62; };表示监听的端口和IP地址,其中{}内部两端都要有空格,IP地址要以;号结尾。

directory指定named的工作目录,后面的域配置文件、日志文件都存放在这里。例如上面示例中的named.ca就是保存在/var/named中

allow-query表示允许哪些主机可以访问当前dns服务,改成any表示任何主机都可以访问当前的dns服务

recursion如果你打算构建一个递归(缓存)DNS服务器,那这里就要设置为yes;如果是构建权威服务器,那这里就应该设置为off。

zone用于定义DNS服务器所服务的区域,其中包括区域名、区域类型和区域文件名等信息。

DNS ゾーンは、前方参照ゾーンと逆引き参照ゾーンの 2 つのカテゴリに分類されます。

前方参照領域は、FQDN (ホスト名ドメイン名) と IP アドレスのマッピングに使用され、DNS クライアントが特定の FQDN の解決を要求すると、DNS サーバーがそれを実行します。前方参照領域。対応する IP アドレスを検索して DNS クライアントに返します。

逆引き参照領域は、IP アドレスを FQDN にマッピングするために使用されます。DNS クライアントが解決を要求したとき、 IP アドレス。DNS サーバーは逆引き参照ゾーンで検索を実行し、対応する FQDN を DNS クライアントに返します。

#file: ゾーン データベース ファイルの名前を指定します。ファイル名は二重引用符で囲む必要があります。ここにはファイル名だけが書かれ​​ていますが、該当するファイルはどこに保存されているのでしょうか?実際、その保存場所はオプション セクションのディレクトリ オプションで指定されており、このオプションのデフォルトは /var/named です。

type: エリアのタイプを指定します。ヒント、マスター、スレーブ、フォワードなどのタイプがあり、それぞれルートゾーン、プライマリゾーン、補助ゾーン、フォワードゾーンを表します。ヒントはルートに渡すことを意味し、ルート ゾーンのタイプがバッファ サーバーであることを示します。

再帰 DNS サーバー、権威 DNS サーバー

1. 再帰サーバー

クライアントがインターネット要求を開始し、さまざまなローカル キャッシュをクエリした後に対応する解決レコードを取得できない場合、ローカル DNS サーバーへのクエリ要求を開始します。さらに、パブリックアカウントのトップテクノロジー背景を検索し、「APIインターフェース」と返信すると、サプライズギフトパッケージがプレゼントされます。

ローカル DNS サーバーは、最初に自身のローカル キャッシュをクエリします。結果があれば、結果はクライアントに直接返されます。結果がない場合は、クライアントを置き換えます。ルート DNS サーバー、トップレベル ドメイン ネーム サーバー、セカンダリ ドメイン ネーム サーバーなどに送信されます。レベルレベルのドメイン ネーム サーバーとその他のレベルレベルの再帰クエリが継続され、最終的にドメイン名に対応する権限のあるサーバーが見つかります。レコードをローカル キャッシュに保存しながら、結果を取得してクライアントに返します。

概要: DNS クエリ プロセス全体において、最初にクライアントがローカル ドメイン ネーム サーバー (またはローカル DNS サーバー) へのリクエストを開始することを除き、残りの時間は送信されます。再帰的なクエリを実行する代わりに、ローカル ドメイン ネーム サーバーによって実行されます。ここでのローカル ドメイン ネーム サーバーは再帰 DNS サーバーです。

2. 権威サーバー

ドメイン名の最終解決を担当するサーバーが権威サーバーです。権威サーバーは再帰サーバーとは異なります。クライアントが再帰クエリを実行して解決レコードを返すのを支援する責任はありません。その目的はドメイン名を解決することです。

10T テクノロジーの期間限定リソースがセール中です! Linux、仮想化、コンテナ、クラウド コンピューティング、ネットワーキング、Python、Go などが含まれますが、これらに限定されません。オープンソース Linux 公式アカウントで「10T」と返信すると、無料で入手できます。

每个特定的域名,权威DNS服务器可能并不相同。这种权威DNS服务器只对自己所拥有的域名进行域名解析,对于自己不负责域名则无法进行解析。比如递归DNS去taobao.com的权威DNS服务器查询baidu.com的域名肯定会查询失败。

因此递归解析服务器是运营商搭建,帮助所属网络用户去响应的权威DNS服务器查询解析结果。而权威解析服务器一般是企业自建或域名服务商建设,给购买域名的企业和个人使用,方便其对域名进行解析管理。

配置主服务器

[root@slave1 ~]# vim /etc/named.conf
options {
        listen-on port 53 { 10.0.0.62; }; //主服务器的地址
        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";
        recursing-file "/var/named/data/named.recursing";
        secroots-file "/var/named/data/named.secroots";
        allow-query { any; }; //允许任何主机可以访问本DNS服务

        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable access
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        recursion yes; //配置成递归DNS服务器

        dnssec-enable yes;
        dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.root.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";


# 在/etc/named.rfc1912.zones文件末尾添加正向解析区域和反向解析区域
[root@slave1 ~]# vim /etc/named.rfc1912.zones
......
// 在文件最后添加一个正向解析区域,并定义为主服务器
zone "test1.com" IN {
    type master; //master表示主服务器
    file "test1.com.zone"; //指明区域解析库文件,相对于/var/named/
};

//在文件最后添加一个反向解析区域,并定义为主服务器
zone "0.0.10.in-addr.arpa" IN {
    type master;
    file "test1.com.local";
};
ログイン後にコピー

创建test1.com.zone解析库文件

# 复制模板来创建区域文件
[root@slave1 ~]# cd /var/named/

# 注意:复制的时候要用-a选项,以便保持用户拥有者等属性信息,否则named程序无法解析。当然你也可以手动修改属性,使复制后的文件的拥有者和所属组都是named
[root@slave1 named]# cp -a named.localhost test1.com.zone
[root@slave1 named]# cp -a named.loopback test1.com.local

# 设置正向解析
[root@slave1 named]# cat test1.com.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
          0  ; serial
          1D ; refresh
          1H ; retry
          1W ; expire
          3H ) ; minimum
  NS @
  A 10.0.0.62
www IN A 10.0.0.62
ftp IN A 10.0.0.62
mail IN CNAME www

# 设置反向解析
[root@slave1 named]# cat test1.com.local
$TTL 1D
@ IN SOA test1.com. rname.invalid. (
          0  ; serial
          1D ; refresh
          1H ; retry
          1W ; expire
          3H ) ; minimum
  NS test1.com.
  A 10.0.0.62
10 IN PTR www.test1.com.
11 IN PTR ftp.test1.com.

# 重新配置本机的DNS:
[root@slave2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
......
IPADDR=10.0.0.62
PREFIX=24
GATEWAY=10.0.0.2
DNS1=10.0.0.62
ログイン後にコピー

启动named服务:

牛逼啊!接私活必备的 N 个开源项目!赶快收藏
ログイン後にコピー
[root@slave1 ~]# systemctl start named

# 测试一下
[root@slave1 ~]# nslookup www.test1.com
Server: 10.0.0.62
Address: 10.0.0.62#53

Name: www.test1.com
Address: 10.0.0.62
[root@slave1 named]# nslookup ftp.test1.com
Server: 10.0.0.62
Address: 10.0.0.62#53

Name: ftp.test1.com
Address: 10.0.0.62
ログイン後にコピー

配置从服务器

# 修改主配置文件,只改两行,其余保持默认即可
[root@slave2 ~]# cat /etc/named.conf
......
options {
  listen-on port 53 { 10.0.0.63; }; # ip地址改成本地地址
  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";
  recursing-file "/var/named/data/named.recursing";
  secroots-file "/var/named/data/named.secroots";
  allow-query { any; }; # 任何主机都可以访问本地dns服务
......


# 在/etc/named.rfc1912.zones文件末尾添加正向解析区域和反向解析区域
[root@slave2 ~]# vim /etc/named.rfc1912.zones
......
zone "test1.com" IN {
        type slave;
        masters { 10.0.0.62; };
        allow-notify { 10.0.0.62; };
        file "slaves/test1.com.zone";
};

zone "0.0.10.in-addr.arpa" IN {
        type slave;
        masters { 10.0.0.62; };
        allow-notify { 10.0.0.62; };
        file "slaves/test1.com.local";
};
ログイン後にコピー

注意事项:从服务器的区域解析库文件应当是从主服务器加载过来的,所以无需创建区域解析库文件。

启动named服务:

[root@slave2 ~]# systemctl start named

# 重新配置本机的DNS:
[root@slave2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
......
IPADDR=10.0.0.63
PREFIX=24
GATEWAY=10.0.0.2
DNS1=10.0.0.63

# 启动以后,会自动生成区域解析库文件,这两个文件来源于主服务器
[root@slave2 ~]# ll /var/named/slaves/
total 8
-rw-r--r-- 1 named named 336 Sep 5 20:02 test1.com.local
-rw-r--r-- 1 named named 319 Sep 5 20:02 test1.com.zone

# 测试验证
[root@slave2 ~]# nslookup www.test1.com
Server: 10.0.0.63
Address: 10.0.0.63#53

Name: www.test1.com
Address: 10.0.0.62

[root@slave2 ~]# nslookup ftp.test1.com
Server: 10.0.0.63
Address: 10.0.0.63#53

Name: ftp.test1.com
Address: 10.0.0.62
ログイン後にコピー

客户端验证

# 配置DNS:客户端需要配置多个dns,我们这里配置主从dns的地址
[root@master ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
......
IPADDR=10.0.0.61
PREFIX=24
GATEWAY=10.0.0.2
DNS1=10.0.0.62    
DNS2=10.0.0.63

# 重启网络使配置生效
[root@master ~]# systemctl restart network

[root@master ~]# nslookup www.test1.com
Server: 10.0.0.62
Address: 10.0.0.62#53

Name: www.test1.com
Address: 10.0.0.62

[root@master ~]# nslookup ftp.test1.com
Server: 10.0.0.62
Address: 10.0.0.62#53

Name: ftp.test1.com
Address: 10.0.0.62
ログイン後にコピー

主从一同工作,在客户端会配有多个DNS地址,如果第一个DNS地址无法解析,那么第二DNS地址也是无法解析的,当第一个DNS地址联系不上时(宕机)才会联系第二个DNS地址并寻求解析。

故障测试

# 停止master DNS
[root@slave1 ~]# systemctl stop named

# 到客户端上去验证
[root@master ~]# nslookup www.test1.com
Server: 10.0.0.63
Address: 10.0.0.63#53

Name: www.test1.com
Address: 10.0.0.62
ログイン後にコピー

通过上面的实验我们可以发现,停掉master DNS服务以后,客户端还是可以继续解析到域名, 即从DNS已经开始启用了。

以上がマスター/スレーブ DNS 導入 - 超詳細な実験運用の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

win11のDNSサーバーエラーの解決方法 win11のDNSサーバーエラーの解決方法 Jan 10, 2024 pm 09:02 PM

インターネットにアクセスするには、インターネットに接続するときに正しい DNS を使用する必要があります。同様に、間違った DNS 設定を使用すると、DNS サーバー エラーが発生しますが、このときは、ネットワーク設定で DNS を自動的に取得するように選択することで問題を解決できます。ソリューション。 win11 ネットワーク dns サーバー エラーを解決する方法. 方法 1: DNS をリセットする 1. まず、タスクバーの [スタート] をクリックして入力し、[設定] アイコン ボタンを見つけてクリックします。 2. 次に、左側の列の「ネットワークとインターネット」オプションコマンドをクリックします。 3. 次に、右側で「イーサネット」オプションを見つけ、クリックして入力します。 4. その後、DNSサーバーの割り当ての「編集」をクリックし、最後にDNSを「自動(D)」に設定します。

修正: Windows 11 アップデート エラー 0x80072ee7 修正: Windows 11 アップデート エラー 0x80072ee7 Apr 14, 2023 pm 01:31 PM

特定の Windows 11 アップデートにより問題が発生したり、大規模なビルドがパフォーマンス エラーを引き起こす可能性があります。たとえば、更新エラー 0x80072ee7 を修正しないと、マシンの動作が不安定になる可能性があります。この問題はさまざまな状況で発生し、修正方法は不具合の背後にある理由によって異なります。場合によっては、特定の Windows 更新プログラムをインストールするときにこの問題が発生するとユーザーから報告されることがあります。ランダムなセキュリティ通知やシステム エラーを発生させずに閲覧できます。この問題が発生した場合、コンピュータに不要なプログラムまたはマルウェアが存在する可能性があります。エラーの背後にある理由は、ウイルス対策の問題から Windows アップデートを妨げる他のソフトウェアに至るまで、さまざまです。 Windows Update エラーはどのようにして発生しますか?閲覧中に0xが表示された場合

Xbox シリーズ S/X のダウンロード速度、ping とラグの減少を修正する方法 Xbox シリーズ S/X のダウンロード速度、ping とラグの減少を修正する方法 Apr 16, 2023 pm 04:49 PM

Xbox コンソールは長年にわたって劇的に改善されました。長年にわたり、ゲームはゲーマーが飽きることのない本物のような機能を備えて進化してきました。 Xbox でお気に入りのゲームをプレイすると、完全に夢中になれる体験が得られます。ただし、これらの高度な機能を使用すると、インターネット速度がそれほど良くない場合、遅延や ping の問題が発生することがあります。場合によっては、ゲームのダウンロードを速くしたいことがあります。現在、Forza Horizo​​n 5 や Mortal Kombat などのゲームには 100GB 以上の RAM が必要です。適切なインターネット設定がない場合、そのようなゲームのダウンロードには長い時間がかかることがあります。方法 1: パス

Steamエラーコード105を解決する方法サーバーに接続できませんか? Steamエラーコード105を解決する方法サーバーに接続できませんか? Apr 22, 2023 pm 10:16 PM

Steam は人気のあるゲーム ライブラリです。これにより、ユーザーはゲームをプレイしたり、Steam アカウントにゲームをダウンロードしたりできるようになります。これはクラウドベースのライブラリであるため、ユーザーはどのコンピュータでも使用でき、限られたコンピュータ メモリ内に多くのゲームを保存できます。これらの機能により、ゲーマー コミュニティの間で非常に人気があります。ただし、多くのゲーマーがシステムで次のエラー コードが表示されたと報告しています。エラー コード 105 - サーバーに接続できません。 「サーバーがオフラインである可能性があります」エラー このエラーは主に接続の問題が原因で発生します。システムでこの問題が発生した場合は、次の一般的な修正を試して、問題が解決されたかどうかを確認してください。ルーターを再起動します。システムを再起動します。まだ問題がありますか?心配しないで

Windows 10/11で1枚のLANカードに複数のIPアドレスを割り当てる方法 Windows 10/11で1枚のLANカードに複数のIPアドレスを割り当てる方法 May 30, 2023 am 11:25 AM

場合によっては、1 つの LAN カードに複数のアドレスを割り当てる必要があります。たとえば、一意の IP アドレスで複数の Web サイトを実行する必要がある場合や、アプリケーションを異なる IP アドレスにバインドする必要がある場合などです。 1 つのネットワーク インターフェイス カードまたは LAN カードに複数のアドレスを割り当てる方法を考えている場合は、この記事がそれを実現するのに役立ちます。以下の手順を最後まで実行すれば完了です。それでは始めましょう! 1 つの LAN カードに複数の IP アドレスを割り当てる ステップ 1: Windows + R キーを同時に使用して実行プロンプトを開き、「ncpa.cpl」と入力し、Enter キーを押して「ネットワーク接続」ウィンドウを開きます。ステップ 2: ネットワーク アダプタの [イーサネット] または [WiFi] オプションを右クリックし、[プロパティ] をクリックします。ステップ 3: [プロパティ] ウィンドウから

Windows 11でDNS設定を変更する方法 Windows 11でDNS設定を変更する方法 May 01, 2023 pm 06:58 PM

ISP は、インターネット接続を設定するときにデフォルトのドメイン ネーム システム (DNS) を提供するように構成されています。これにより、さまざまなセキュリティ上の脅威が生じ、インターネットの速度が低下するため、DNS サーバーを手動で割り当てる必要があります。 Windows 11 コンピューターの DNS 設定を変更し、オンライン プレゼンスを保護する方法については、この詳細ガイドを参照してください。 Windows 11 で DNS 設定を変更するにはどうすればよいですか? 1. 設定アプリの使用 + ショートカットを使用して設定アプリに移動します。 Windows では、左側のサイドバーから [ネットワークとインターネット] を選択し、インターネット接続に応じて右側から [Wi-Fi] または [イーサネット] を選択します。下にスクロールして「ハードウェアのプロパティ」を選択します。 DNS サーバーの割り当て設定を見つけてクリックします。

修正: Windows 11 で DNS サーバーが応答しない問題 修正: Windows 11 で DNS サーバーが応答しない問題 Jun 01, 2023 pm 04:52 PM

Windows ユーザーは、システム上のブラウザで Web ページを参照したり読み込んだりできない場合、この問題を引き起こす可能性のあるすべての要因を思いつきます。多くの Windows ユーザーはシステム上でこの問題を解決していますが、「DNS サーバーが応答していません」というエラー メッセージが表示され、安定したインターネット接続を使用するためにこの問題を解決する方法がわかりません。この記事では、この問題を確実に解決する解決策を考え出しました。ただし、事前にこれらの解決策を試してください。ルーターを再起動して、これが問題の原因であるかどうかを確認してください。ブラウザのアプリケーションを変更します。ただし、Microsoft Edge ブラウザを使用している場合は、それを閉じて Google を開きます。

e からの NameResolutionError(self.host, self, e) の理由とその解決方法 e からの NameResolutionError(self.host, self, e) の理由とその解決方法 Mar 01, 2024 pm 01:20 PM

エラーの理由は、urllib3 ライブラリの例外タイプである NameResolutionError(self.host,self,e)frome です。このエラーの理由は、DNS 解決が失敗したこと、つまり、ホスト名または IP アドレスが試みられたことです。解決できるものが見つかりません。これは、入力された URL アドレスが間違っているか、DNS サーバーが一時的に利用できないことが原因である可能性があります。このエラーを解決する方法 このエラーを解決するにはいくつかの方法があります。 入力された URL アドレスが正しいかどうかを確認し、アクセス可能であることを確認します。 DNS サーバーが利用可能であることを確認します。コマンド ラインで「ping」コマンドを使用してみてください。 DNS サーバーが利用可能かどうかをテストします。プロキシの背後にある場合は、ホスト名の代わりに IP アドレスを使用して Web サイトにアクセスしてみてください。