DNSドメイン名の解決
dnsドメイン名解決サービス
BINDドメインネームサービスの基本
1.DNSの定義
DNSは、英語で「ドメイン名解決」の略語です。ドメイン名とIPアドレスを相互にマッピングする分散データベースとして、人々がインターネットにアクセスしやすくすることができます。DNSサーバーはTCPおよびUDPポート53を使用し、TCPポート53はDNSサーバーへの接続に使用され、UDPポート53はDNSの解決に使用されます。DNSドメイン名の各レベルの長さ制限は63文字であり、ドメイン名の全長は253文字を超えることはできません。
2.DNSシステムの役割とクラス
順
方向解決:ドメイン名に基づいて対応するIPアドレスを検索します逆方向解決:IPアドレスに基づいて対応するドメイン名を検索します
3.DNSシステムの分散データ構造
-
ドメイン名の構造:
http://hostname.second-level domain.top-level domain.root domain./
http://www.baidu.com.cn./ -
分散ツリー構造は、ルートドメイン、トップレベルドメイン、セカンドレベルドメイン、サブドメイン、およびホストに分けられます。
- ルートドメイン
はドメインネームスペースの上部にあり、通常は「」で表されます。 - トップレベルドメインは
通常、.net(ネットワークプロバイダー)、. com(産業および商業企業)、. org(グループ組織)、. edu(教育機関)、. gov(政府部門)などの組織または国のタイプを表します。)、. cn(中国の国内ドメイン名) - セカンドレベルドメインは
、トップレベルドメイン内の特定の組織を示すために使用されます。国のトップレベルドメインの下にあるセカンドレベルドメイン名は、国のネットワーク部門によって管理されます。たとえば、セカンドレベルドメイン名セット.cnトップレベルドメイン名の下:.com.cn、.net.cn、.Edu.cn - サブドメイン
セカンドレベルドメインの下に作成されたすべてのレベルのドメインをまとめてサブドメインと呼びます。各組織またはユーザーは、独自のドメイン名の登録を自由に申請できます。 - ホスト
ホストは、ドメインネームスペースの最下位レベルにあります。これは、
www.baidu.com.cn。およびmail.baidu.comで表すことができる特定のコンピューター名であるwwwやmailなどの特定のコンピューターです。 .cn。FQDN(完全修飾ドメイン名)、ドメイン名に含まれるこのホストのフルネーム
DNSサーバータイプ
1):プライマリドメインネームサーバー
エリア内のすべてのドメイン名情報を維持する責任があり、すべての特定の情報の信頼できる情報ソースであり、データを変更できます。メインドメインネームサーバーを構築するには、担当エリアのアドレスデータファイルを作成する必要があります。
2):ドメインネームサーバーから
プライマリドメインネームサーバーに障害が発生したり、シャットダウンしたり、過負荷になったりすると、セカンダリドメインネームサーバーはバックアップサーバーとして機能し、ドメイン名解決サービスを提供します。ドメインネームサーバーから提供される解決結果は、自分で決定するものではありません。これは、メインドメインネームサーバーから取得されます。セカンダリドメインネームサーバーを構築するときは、サーバーがエリアのアドレスデータベースを自動的に同期できるように、マスタードメインネームサーバーの場所を指定する必要があります。
3):キャッシュドメインネームサーバー
クエリの速度と効率を向上させるためにドメイン名解決結果のキャッシュ機能を提供するだけですが、ドメイン名データベースはありません。リモートサーバーから各ドメインネームサーバークエリの結果を取得し、それをキャッシュに入れて、後で同じ情報をクエリするときに応答するために使用します。提供されるすべての情報が間接的であるため、キャッシュドメインネームサーバーは信頼できるサーバーではありません。キャッシュドメインネームサーバーを構築するときは、ルートドメインを設定するか、解決のソースとして他のDNサーバーを指定する必要があります。
4):ドメインネームサーバーを転送する
すべての非ローカルドメイン名のローカルクエリを担当します。転送ドメインネームサーバーは、クエリリクエストを受信した後、キャッシュ内を検索します。見つからない場合は、結果が見つかるまで指定されたドメインネームサーバーにリクエストを転送します。見つからない場合は、マッピングできない結果を返します。 。
BINDのインストールおよび構成ファイル
1.バインドパッケージをインストールします
yum install -y bind
2.フォワード分析を構成します
(1):まず、変更する構成ファイルのパスを確認します
rpm -qc bind
/etc/named.conf
/etc/named.rfc1912.zones #区域配置文件(不建议直接修改,可以复制出来修改)
/var/named/named.localhost #区域数据配置文件
(2):メイン構成ファイルを変更します
vim /etc/named.conf
options {
listen-on port 53 { 192.168.199.30; }; #监听53端口,ip地址使用提供服务的本地ip,也可以用any表示所有
#listen-on-v6 port 53 { ::1; }; #ipv6如不使用可以注释掉或者删除
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"; #内存统计文件的位置
allow-query { any; }; #允许使用本DNS解析服务的网段,也可以 用any代表所有
......
}
zone "." IN { #正向解析"."根区域
type hint; #类型为根区域
file "named.ca"; #区域数据文件为named.ca 记录了13台根域服务器的域名和IP地址等信息
};
include "/etc/named.rfc1912.zones"; #包含区域配置文件里的所有配置
(3)ゾーン構成ファイルを変更し、フォワードゾーン構成を追加します
vim /etc/named.rfc1912.zone #可在文件里有模板,可复制粘贴后修改
zone "muzi.com" IN { #正向解析“ruyi.com”区域
type master; #类型为主区域
file "muzi.com.zone"; #指定区域数据文件为benet.com.zone
allow-update { none; };
};
(4)フォワードゾーンデータファイルを設定します
cd /var/named/
cp -p named.localhost muzi.com.zone #保留源文件的权限和属主的属性复制
vim /var/named/muzi.com.zone
$TTL 1D #设置缓存解析结果的有效时间
@ IN soa muzi.com. admin.muzi.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS muzi.com. #记录当前区域的DNS服务器的名称
A 192.168.199.10 #记录主机IP地址
IN MX 10 mail.muzi.com. #MX为邮件交换记录,数字越大优先级越低
www IN A 192.168.199.10 #记录正向解析www.muzi.com对应的IP
mail IN A 192.168.199.11
ftp IN CNAME www #CNAME使用别名,ftp是www的别名
"*" IN A 192.168.199.100 #泛域名解析,“*”代表任意主机名
(5):サービスを開始し、ファイアウォールを閉じます
systemctl start named
systemctl stop firewalld
setenforce 0
#如果服务器启动失败,可以查看日志文件来排查错误
tail -f /var/log/messages
#如果服务器卡住,可以执行以下命令解决
rndc-confgen -r /dev/urandom -a
(6):クライアントのドメイン名解決構成ファイルにDNSサーバーアドレスを追加します
vim /etc/resolv.conf #修改完后立即生效
nameserver 192.168.80.10
或
vi /etc/sysconfig/network-scripts/ifcfg-ens33 #修改完需要重启网卡
DNS=192.168.199.10
systemctl restart network
(7):DNS解決をテストします
host ww.ruyi.com
nslookup www.benet.com
分離分析
解決を分離するドメインネームサーバーは、実際にはメインのドメインネームサーバーであり、主に、さまざまなクライアントに応じてさまざまなドメイン名解決レコードを提供することを指します。たとえば、内部ネットワークと外部ネットワークの異なるネットワークセグメントアドレス領域のクライアントが同じドメイン名を解決するように要求すると、異なるIPアドレスを取得するために異なる解決結果が提供されます。
分離分析実験
まず、ゲートウェイサービス用にデュアルネットワークカードを設定し、シャットダウン時にネットワークカードを追加する必要があります。
次に、メイン構成ファイルの変更を開始します
vim /etc/named,conf
options {
listen-on port 53 { any; }; #监听本机或any'
#listen-on-v6 port 53 { ::1; }; #由于我们不使用ipv6所以这里我们将他注释掉
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";
allow-query { any; }; #允许所有主机解析
ゾーン構成ファイルを変更する
vim /etc/named.rfc1912.zones
view "lan" {
match-clients { 192.168.199.0/24; };
zone "muzi.com" IN {
type master;
file "muzi.com.zone.lan";
};
zone "." IN {
type hint;
file "named.ca";
};
};
view "wan" {
match-clients { any; };
zone "muzi.com" IN {
type master;
file "muzi.com.zone.wan";
};
};
ここで注意すべきことの1つは、ビューを有効にすると、すべてのゾーンがビューの下にある必要があるため、システムのデフォルトのセルフチェックで使用されるゾーンもビューの下に配置するか、コメントアウトまたは削除する必要があるということです。ここにいます。直接削除されました
地域データ構成ファイルを変更する
地域データファイルにはシステム内にテンプレートがあり、直接コピーして、使用する必要のある構成ファイルにコピーできます。個別の分析実験を行っているため、イントラネット用とワイウ外部用に1つずつ必要です。ネットワークなので、2つのファイルをコピーします。1つは内部ネットワーク用、もう1つは外部ネットワーク用です。
cd /var/named
cp -p named.localhost muzi.com.zone.lan
cp -p named.localhost muzi.com.zone.wan
lanファイルを変更します
最初にこのファイル
を入力してから変更します。
vim muzi.com.zone.lan
$TTL 1D
@ IN SOA muzi.com. admin.muzi.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS muzi.com.
A 192.168.199.30
www IN A 192.168.199.100 #内网主机通过解析www,muzi.com的地址得到192.168.199.100
wanファイルに変更を加える
編集するには
vim muzi.com.zone.wan
$TTL 1D
@ IN SOA muzi.com. admin.muzi.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS muzi.com.
A 12.0.0.1
www IN A 12.0.0.100 #外网主机通过解析www.muzi.com的地址得到12.0.0.1
上記の編集では、サーバーファイアウォールをオフにすることを忘れないでください。オフにしないと、他のホストが取得できない可能性があります。
サービス開始
systemctl restart named
次に、DNSサーバーアドレスを内部および外部ネットワーククライアントのドメイン名解決構成ファイルに追加します
echo "nameserver 192.168.199.30" >> /etc/resolv.conf #内网客户端
echo "nameserver 12.0.0.1" >> /etc/resolv.conf #外网客户端
*ここで構成が完了しました。
最初にサーバーのイントラネットでテストして、解決できることを確認しましょう。
- 次に、テスト用に外部ネットワークに入ります。
まず、外部ネットワークのIPを設定したIPに変更してから、DNSサーバーのアドレスを変更します。
- 次に、cmd検証を入力し、nslookupを入力して、分析結果を取得します。