Centos7 での DNS サーバーの構築の概要

Centos7 での DNS サーバーの構築の概要

1. プロジェクト環境:

ホスト役割IPアドレス関数
ケビンDNS サーバー192.168.100.10ドメイン名解決を提供する
ケビンDNS クライアント192.168.100.20ドメイン名の解決が正常かどうかをテストする
ケビンウェブサーバー192.168.100.30サイトサーバー
ブログFTP サーバー192.168.100.40ブログサーバー

2: DNSサーバーの設定

i: 前方解析を構成する:

基本的な環境設定

[root@kevin ~]# ホスト名
ケビン
[root@kevin ~]# getenforce
無効
[root@kevin ~]# systemctl ステータス ファイアウォールd
● firewalld.service - firewalld - 動的ファイアウォールデーモン
   ロード済み: ロード済み (/usr/lib/systemd/system/firewalld.service; 無効; ベンダープリセット: 有効)
   アクティブ: 非アクティブ (デッド)
     ドキュメント: man:firewalld(1)
[ルート@ケビン ~]#

2. DNSサーバーソフトウェアをインストールして起動する

[root@kevin ~]# yum install -y bind
 
[root@kevin ~]# systemctl start 名前付き

3. DNS サービスのグローバル設定ファイルであるメイン設定ファイル /etc/named.conf。

安全のため、ファイルを変更する前にバックアップしてください。このファイルのグループは特別で、指定されたグループに属しています

[root@kevin ~]# cp -p /etc/named.conf /etc/named.conf.bak

4. メイン設定ファイル named.conf を変更します。行 13: リスニング アドレス行 21: このサーバーを使用してクエリを実行できるクライアント アドレス

すべては、

[root@kevin ~]# vi /etc/named.conf
 
 
listen-on ポート 53 { any; };
クエリを許可します { 任意; };

5. ゾーン構成ファイル /etc/named.rfc1912.zones を変更します。このファイルは、どのゾーンのデータがどのファイルに保存されるかを示すために使用されます。 ファイル内の既存のコンテンツの形式に従って、ファイルの末尾に前方参照ゾーン kevin.com を追加します。タイプはプライマリ ゾーン、データは kevin.com.zone です。

[root@kevin ~]# vi /etc/named.rfc1912.zones
 
ゾーン "kevin.com" IN {
        タイプマスター;
        ファイル "kevin.com.zone";
        更新を許可する {なし; };
};

6. 手順 5 に従って、転送ゾーン データ ファイルを追加します。新しいデータ ファイルを作成する必要はありません。/var/named ディレクトリに用意されている named.localhost ファイルをコピーし、kevin.com.zone という名前を付けて変更することができます。 kevin.com.zone のコンテンツを次のように変更します。

[root@kevin ~]# cp -p /var/named/named.localhost /var/named/kevin.com.zone
[root@kevin ~]# vi /var/named/kevin.com.zone
 
$TTL 1日
@ IN SOA @ rname.invalid. (
                                        0 ; シリアル
                                        1D ; 更新
                                        1H;再試行
                                        1W ; 期限切れ
                                        3H ) ; 最小
        NS@
        192.168.100.10 です
192.168.100.10 の DNS
192.168.100.20で勝つ
www 192.168.100.30 で
ブログ IN A 192.168.100.40
        AAA::1

7. DNSサービスの設定ファイルを再読み込みする

[root@kevin ~]# rndc をリロード
サーバーのリロードに成功しました
[root@ケビン ~]#

ロードに失敗した場合は、named-checkconf /etc/named.conf と named-checkzone kevin.com /var/named/kevin.com.zone を使用して、エラーが発生した場所を確認できます。

[root@kevin ~]# named-checkconf /etc/named.conf
[root@kevin ~]# named-checkzone kevin.com /var/named/kevin.com.zone
ゾーン kevin.com/IN: シリアル 0 がロードされました
わかりました

8. 完了したら、まず DNS サーバー上でローカルにテストし、/etc/resolv.conf を変更して、DNS サーバーのアドレス (つまり、サーバーのローカル アドレス) を記述します。

(bind-utils) は、DNS サーバーの補助ツールキットです。たとえば、dig は主に DNS ドメイン ネーム サーバーからホスト アドレス情報を照会するために使用され、ドメイン ネーム システムが正しく動作しているかどうかをテストするために使用できます。

またはnslookupなどのツール

[root@kevin ~]# vi /etc/resolv.conf
 
# NetworkManager によって生成されました
ネームサーバー 8.8.8.8
[root@kevin ~]# yum をインストールbind-utils
[root@kevin ~]# www.kevin.com @192.168.100.10 を掘る
 
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.8 <<>> www.kevin.com @192.168.100.10
;; グローバルオプション: +cmd
;; 回答が得られました:
;; ->>HEADER<<- オペコード: QUERY、ステータス: NOERROR、ID: 62498
;; フラグ: qr aa rd ra; クエリ: 1、回答: 1、権限: 1、追加: 2
 
;; OPT擬似セクション:
; EDNS: バージョン: 0、フラグ:; udp: 4096
;; 質問セクション:
;www.kevin.com. IN A
 
;; 回答セクション:
www.kevin.com. 86400 IN A 192.168.100.30
 
;; 権限セクション:
kevin.com. 86400 IN NS kevin.com.
 
;; 追加セクション:
kevin.com. 86400 IN A 192.168.100.10
 
;; クエリ時間: 0 ミリ秒
;; サーバー: 192.168.100.10#53(192.168.100.10)
;; 日時: 2021 年 12 月 18 日土曜日 14:48:23 CST
;; 受信したメッセージサイズ: 88
 

9: ローカル テスト アクセスは正常です。他のクライアントでは、ネットワーク カードの優先 DNS サーバー アドレスを上記の表で設定した DNS サーバー アドレスに調整し、関連するレコードを照会します。

C:\Users\Kevin>nslookup
デフォルトサーバー: 不明
住所: 192.168.100.10
 
> www.kevin.com
サーバー: 不明
住所: 192.168.100.10
 
名前: www.kevin.com
住所: 192.168.100.30
 
> blog.kevin.com
サーバー: 不明
住所: 192.168.100.10
 
名前: blog.kevin.com
住所: 192.168.100.40
 
>

現在、ホスト名でホストに対応する IP アドレスを照会することは可能ですが、逆引き参照ゾーンが設定されていないため、IP アドレスで対応するホスト名を照会することはできません。

ii: 逆解像度を設定する

1. 基本的な考え方は前方検索領域の設定と同じです。メイン構成ファイルを変更する必要はありません。 補助構成ファイルを変更し、ドキュメントの最後に逆引き参照ゾーンを追加します。逆引き参照ゾーン名の命名形式に注意してください。

[root@kevin ~]# vi /etc/named.rfc1912.zones
 
ゾーン "100.168.192.in-addr.arpa" IN {
        タイプマスター;
        ファイル "192.168.100.arpa";
        更新を許可する {なし; };
};

2. 逆解析ファイル テンプレートをコピーして変更します。

[root@kevin ~]# cp -p /var/named/named.loopback /var/named/192.168.100.arpa
[root@kevin ~]# vi /var/named/192.168.100.arpa
 
$TTL 1日
@ IN SOA @ rname.invalid. (
                                        0 ; シリアル
                                        1D ; 更新
                                        1H;再試行
                                        1W ; 期限切れ
                                        3H ) ; 最小
        NS dns.kevin.com です。
192.168.100.10 の DNS
10 IN PTR dns.kevin.com。
20 IN PTR win.kevin.com。
30 IN PTR www.kevin.com.
40 IN PTR blog.kevin.com。

設定ファイルを再読み込みします。

[root@kevin ~]# systemctl restart named
[root@kevin ~]# rndc をリロード
サーバーのリロードに成功しました

3: クライアント上で逆解像度が正しいかどうかをテストします。

C:\Users\Kevin>nslookup
デフォルトサーバー: dns.kevin.com
住所: 192.168.100.10
 
> 192.168.100.30
サーバー: dns.kevin.com
住所: 192.168.100.10
 
名前: www.kevin.com
住所: 192.168.100.30
 
> 192.168.100.40
サーバー: dns.kevin.com
住所: 192.168.100.10
 
名前: blog.kevin.com
住所: 192.168.100.40
 
>

3: マスタースレーブサーバーを構成する:

これまでの操作により、DNS プライマリ サーバーが構成され、正常に動作するようになりました。 2 番目の CentOS ホストを起動し、最初の DNS サーバーのスレーブ サーバーとして構成して、最初のホストの DNS データをネットワーク経由で 2 番目のホストに送信できるようにします。

1: /etc/named.confファイルを編集し、リスニングIPアドレスを任意のものに変更します。

vi /etc/named.conf
 
listen-on ポート 53 { any; };
クエリを許可します { 任意; };

2: /etc/named.rfc1912.zonesを編集し、最初のホストから必要な前方参照/逆参照ゾーンファイルを作成またはコピーします(スレーブサーバーのゾーン解決ライブラリファイルはマスターサーバーからロードされるため、ゾーン解決ライブラリファイルを作成する必要はありません)。コンテンツを変更し、タイプをスレーブに変更します。

[root@likevin ~]# vi /etc/named.rfc1912.zones
 
ゾーン "kevin.com" IN {
        type slave; //タイプ masters {192.168.100.10;}; //ホストファイル "slaves/kevin.com.zone"; //構成ファイルの保存場所と名前 masterfile-format text; //ドキュメントタイプ};
 
ゾーン "100.168.192.in-addr.arpa" IN {
        タイプスレーブ;
        マスター {192.168.100.10;};
        ファイル "slaves/192.168.100.arpa";
        マスターファイル形式のテキスト;
};

3: 名前付きサービスを再起動し、スレーブフォルダにホストから転送されたファイルがあるかどうかを確認します。

[root@likevin ~]# systemctl restart named
[root@likevin ~]# rndc をリロード
サーバーのリロードに成功しました
[root@likevin ~]# ll /var/named/slaves/
総投与量 8
-rw-r--r-- 1 名前付き 名前付き 517 12月18日 16:14 192.168.100.arpa
-rw-r--r-- 1 名前付き 名前付き 349 12月18日 16:14 kevin.com.zone
[root@likevin ~]# vi /var/named/slaves/192.168.100.arpa
 
$ORIGIN 。
$TTL 86400; 1日
100.168.192.in-addr.arpa IN SOA 100.168.192.in-addr.arpa. rname.invalid. (
                                0 ; シリアル
                                86400 ; 更新 (1 日)
                                3600 ; 再試行 (1 時間)
                                604800 ; 有効期限(1週間)
                                10800; 最低(3時間)
                                )
                        NS dns.kevin.com です。
$ORIGIN 100.168.192.in-addr.arpa.
10 PTR dns.kevin.com。
20 PTR win.kevin.com。
30 PTR www.kevin.com.
40 PTR blog.kevin.com.
DNS A 192.168.100.10
[root@likevin ~]# vi /var/named/slaves/kevin.com.zone
 
$ORIGIN 。
$TTL 86400; 1日
kevin.com IN SOA kevin.com. rname.invalid. (
                                0 ; シリアル
                                86400 ; 更新 (1 日)
                                3600 ; 再試行 (1 時間)
                                604800 ; 有効期限(1週間)
                                10800; 最低(3時間)
                                )
                        NS kevin.com。
                        192.168.100.10 です
$ORIGIN kevin.com です。
ブログA 192.168.100.40
DNS A 192.168.100.10
勝利A 192.168.100.20
www 192.168.100.30

Centos7 での DNS サーバーの設定に関するこの記事はこれで終わりです。 Centos7 での DNS サーバーの設定の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。 今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • CentOS 7.x のマスターおよびスレーブ DNS サーバーの展開
  • Centos7 でマスター スレーブ DNS サーバーを構築するチュートリアル
  • CentOS 6.5 で DNS サーバーを構成する方法 (画像とテキスト付き)

<<:  WeChatアプレット仮想リストの応用例

>>:  element.style インライン スタイルを変更する方法のチュートリアル

推薦する

CSS における XHTML タグの対応する属性と使用法

XHTML CSS を使って Web ページをデザインし始めた頃は、タグの使用経験も少なく、あまり気...

MySQL の重要なパフォーマンス インデックスの計算と最適化方法の概要

1 QPS 計算 (1 秒あたりのクエリ数) MyISAMエンジンベースのDBの場合 MySQL&g...

MySQL 全文あいまい検索 MATCH AGAINST メソッドの例

MySQL 4.x 以降では、全文検索 MATCH ... AGAINST モード (大文字と小文字...

Vueは画像のズームとドラッグをサポートするリッチテキストエディタを統合しています

必要:ビジネス要件によると、写真をアップロードできる必要があり、アップロードされた写真はモバイル端末...

SQL 最適化チュートリアル: IN クエリと RANGE クエリ

序文「High Performance MySQL」では、インデックスでは範囲フィールドの後の部分が...

Linux ファイルディレクトリ管理コマンドの概要

タッチコマンドこれには 2 つの機能があります。1 つは、既存のファイルの時間タグを現在のシステム時...

react-diagram シリアル化 Json 解釈 ケース分析

このドキュメントの目的はreact-diagramフレームワーク モデルの Json シリアル化を説...

フォームの送信イベントが応答しない

1. 問題の説明<br />JS を使用してフォームの送信メソッドを呼び出してフォームを...

Dockerイメージをプルしてバージョンを確認する方法

イメージのバージョンとタグを確認するには、docker hubで確認する必要があります。アドレスは次...

ネイティブ JavaScript を使用して計算機のサンプル コードを開発する

計算機の主な機能は数値計算を実行することです。計算機機能の Web インスタンスを開発すると、js ...

Linux カーネル デバイス ドライバー カーネル時間管理に関する注意事項

/****************** * Linux カーネルの時間管理 ***********...

MySQL クエリの重複データ (重複データを削除し、ID が最も小さいデータのみを保持します)

開発の背景:最近、私はバッチ データを MySQL データベースにインポートする機能に取り組んでいま...

JSはオンラインでのアナウンスのスクロール効果を実現します

この記事では、オンラインアナウンスのスクロール効果を実現するためのJSの具体的なコードを参考までに共...

Ubuntu 18.04 向け VMware Tools のインストールと構成のチュートリアル

この記事では、Ubuntu 18.04でのVMware Toolsのインストールと設定について記録し...