この記事を読んだ後に学べる知識:①順方向解決と逆引き解決②DNSサーバーの導入
前方解決:ホスト名(ドメイン名)に基づいて、対応するIPアドレスを見つけます。
逆解決:IPアドレスに基づいて対応するホスト名(ドメイン名)を見つけます。
DNSサービスプロトコルは、ディレクトリツリーと同様の階層構造を使用して、ドメイン名とIPアドレス間のマッピング関係を記録し、分散データベースシステムを形成します。DNS構造モデル
メインサーバー:特定の領域で一意であり、その領域のドメイン名とIPアドレス間の対応を維持する責任があります。
スレーブサーバー:マスターサーバーからドメイン名とIPアドレス間の対応を取得して維持し、マスターサーバーのダウンタイムを防ぎます。
キャッシュサーバー:他のドメインネームサーバーにクエリを実行して、ドメイン名とIPアドレス間の対応を取得し、繰り返しクエリの効率を向上させます。
DNSクエリは、再帰クエリと反復クエリに分けられます。
再帰クエリ:クライアントがDNSサーバーにクエリを実行するために使用します。
反復クエリ:DNSサーバーが他のDNSサーバーにクエリを実行するために使用されます。
bind-chrootをインストールします
[root@localhost ~]# yum install bind-chroot
已加载插件:langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
mysql-connectors-community | 2.5 kB 00:00
mysql-tools-community | 2.5 kB 00:00
mysql56-community | 2.5 kB 00:00
yum | 4.1 kB 00:00
正在解决依赖关系
--> 正在检查事务
---> 软件包 bind-chroot.x86_64.32.9.9.4-29.el7 将被 安装
--> 正在处理依赖关系 bind = 32:9.9.4-29.el7,它被软件包 32:bind-chroot-9.9.4-29.el7.x86_64 需要
--> 正在检查事务
---> 软件包 bind.x86_64.32.9.9.4-29.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
================================================================================
Package 架构 版本 源 大小
================================================================================
正在安装:
bind-chroot x86_64 32:9.9.4-29.el7 yum 83 k
为依赖而安装:
bind x86_64 32:9.9.4-29.el7 yum 1.8 M
事务概要
================================================================================
安装 1 软件包 (+1 依赖软件包)
总下载量:1.9 M
安装大小:4.3 M
Is this ok [y/d/N]: y
Downloading packages:
--------------------------------------------------------------------------------
总计 43 MB/s | 1.9 MB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : 32:bind-9.9.4-29.el7.x86_64 1/2
正在安装 : 32:bind-chroot-9.9.4-29.el7.x86_64 2/2
验证中 : 32:bind-9.9.4-29.el7.x86_64 1/2
验证中 : 32:bind-chroot-9.9.4-29.el7.x86_64 2/2
已安装:
bind-chroot.x86_64 32:9.9.4-29.el7
作为依赖被安装:
bind.x86_64 32:9.9.4-29.el7
完毕!
メインプログラム:/ usr / sbin / named
メイン設定ファイル:/etc/named.conf
ゾーン構成ファイル:/etc/named.rfc1912.zones
メイン構成ファイルを編集します
[root@localhost ~]# vim /etc/named.conf
DNSサービスの解決
フォワードレゾリューション(ホスト名(ドメイン名)に基づいて対応するIPアドレスを見つけます)
1.ゾーンデータ情報を構成します(ゾーン情報は/etc/named.rfc1912.zonesファイルに保存されます。最後にコンテンツを追加するだけです)
[root@localhost ~]# vim /etc/named.rfc1912.zones
zone "chuid.com" IN {
type master;
file "chuid.com.zone";
allow-update { none; };
};
2.解析データ情報を構成します(バインド(/ var / named)作業ディレクトリに切り替えて、エリアデータファイルのアクセス許可を表示します)
フォワード分析のデータファイルは次のとおりです:/var/named/named.localhost
[root@localhost ~]# cd /var/named
[root@localhost named]# ls -la named.localhost named.loopback
-rw-r-----. 1 root named 152 6月 21 2007 named.localhost
-rw-r-----. 1 root named 168 12月 15 2009 named.loopback
cp -aは、元のファイルの属性、所有者、グループ、およびその他の情報を一緒にコピーします
localhost named]# cp -a named.localhost chuid.com.zone
localhost named]# cp -a named.loopback chuid.com.arpa
chuid.comドメイン名のゾーンデータファイルを編集します
[root@localhost named]# vim chuid.com.zone
NS ns.chuid.com.
ns IN A 192.168.203.202
IN MX 10 mail.chuid.com.
mail IN A 192.168.203.202
www IN A 192.168.203.202
bbs IN A 192.168.203.202
vimコマンドを使用して、chuid.com.zoneファイルの最後に次の構成を追加します
逆解決(IPアドレスに従って対応するホスト名(ドメイン名)を見つけます)
1.ゾーンデータ情報を構成します(ゾーン情報は/etc/named.rfc1912.zonesファイルに保存されます。最後にコンテンツを追加するだけです)
[root@localhost ~]# vim /etc/named.rfc1912.zones
zone "203.168.192.in-addr.arpa" IN {
type master;
file "chuid.com.arpa";
allow-update { none; };
};
2.分析データ情報を構成します(新しいエリア情報を後ろに書き込むだけです)
逆分析データファイルは次のとおりです:/var/named/named.loopback
[root@localhost named]# vim chuid.com.arpa
IN NS ns.chuid.com.
ns IN A 192.168.203.202 #PTR为指针记录,仅用于反向解析中。
202 IN PTR mail.chuid.com
202 IN PTR www.chuid.com
202 IN PTR bbs.chuid.com
指定されたサービスを再起動して、構成ファイルをすぐに有効にします
[root@localhost named]# systemctl restart named
DNSサーバーをテストする
Windowsクライアントを開き、win7のDNSをサーバー側DNSに変更します
解決されたドメイン名への通常のアクセスは、DNSサーバーが正常にセットアップされたことを証明します
指定されたサービスプログラムを再起動すると、一般的なエラーが報告されます
[root@localhost named]# systemctl restart named
Warning: named.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[root@localhost named]# systemctl daemon-reload
[root@localhost named]# systemctl restart named
[root@localhost named]#