溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何理解Fedora DNS服務(wù)器客戶端

發(fā)布時間:2021-11-01 17:31:53 來源:億速云 閱讀:183 作者:柒染 欄目:系統(tǒng)運(yùn)維

這篇文章將為大家詳細(xì)講解有關(guān)如何理解Fedora DNS服務(wù)器客戶端,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

DNS有很多值得學(xué)習(xí)的地方,這里我們主要介紹DNS服務(wù)器,包括介紹DNS服務(wù)器啟動等方面。Fedora Core Linux計(jì)劃整合成新的Fedora Project。網(wǎng)絡(luò)中為了區(qū)別各個主機(jī),必須為每臺主機(jī)分配一個惟一的地址,這個地址即稱為“IP地址”。但這些數(shù)字難以記憶,所以就采用“域名”的方式來取代這些數(shù)字了。當(dāng)某臺主機(jī)要與其他主機(jī)通信時,就可以利用主機(jī)名稱向DNS服務(wù)器查詢該主機(jī)的IP地址。

整個DNS域名系統(tǒng)由以下4個部分組成
1.DNS服務(wù)器域名空間
2.資源記錄
3.DNS服務(wù)器
4.DNS服務(wù)器客戶端
Linux下架設(shè)DNS服務(wù)器通常是使用Bind程序來實(shí)現(xiàn)的。Bind是Berkeley Internet Name Domain Service的簡寫,它是一款實(shí)現(xiàn)DNS服務(wù)器的開放源碼軟件。Bind原本是美國DARPA資助伯克里大學(xué)(Berkeley)開設(shè)的一個研究生課題,后來經(jīng)過多年的變化發(fā)展,已經(jīng)成為世界上使用最為廣泛的DNS服務(wù)器軟件,目前Internet上絕大多數(shù)的DNS服務(wù)器有都是用Bind來架設(shè)的

DNS服務(wù)器種類:
1.Master Server 主服務(wù)器
2.Slave Server 輔助服務(wù)器/從服務(wù)器
3.Caching only Server 緩存服務(wù)器
4.Forwarder Server 轉(zhuǎn)發(fā)服務(wù)器
5.Stealth Server 秘密服務(wù)器

DNS BIND區(qū)域類型:
類型       描述
master      主DNS服務(wù)器區(qū)域
slave       從DNS服務(wù)器區(qū)域,由主DNS服務(wù)器區(qū)域控制
stub與從區(qū)域類似,但只保存DNS服務(wù)器的名字
forward     將任何詢問請求轉(zhuǎn)發(fā)給其他服務(wù)器
hint根DNSInternet服務(wù)器集

常見的BIND配置語句和選項(xiàng):
語句 描述
C語言風(fēng)格的BIND注釋
//注釋       C++語法風(fēng)格的BIND注釋
#注釋Unix shell和Perl系統(tǒng)風(fēng)格的BIND注釋
Acl     定義IP地址匹配列表
Include 包含一個文件
Key     指明用于識別和授權(quán)的密鑰信息
Logging 指名服務(wù)器日志記錄的內(nèi)容和日志信息的來源
Options 全局服務(wù)器的配置選項(xiàng)和其他語句的默認(rèn)值
Control 聲明ndc軟件工具使用的控制通道
Server  設(shè)置某個服務(wù)器的配置參數(shù)
trusted-keys    定義預(yù)先配置到服務(wù)器中,并且信任的DNS SEC密鑰
zone    定義一個區(qū)域
type    指明一個區(qū)域類型
file    指明一個區(qū)域文件
directory       指明區(qū)域文件目錄
forwarders      列出主機(jī)請求將要被轉(zhuǎn)發(fā)的DNS服務(wù)器
masters 列出做為從服務(wù)器使用的DNS服務(wù)器主機(jī)
allow-transfer  指明允許那臺主機(jī)接受區(qū)域傳送的請求
allow-query     指明允許那臺主機(jī)提出詢問
motify  當(dāng)主區(qū)域數(shù)據(jù)允許改變和更新時,允許主服務(wù)器通知從服務(wù)器

資源記錄類型:

類型      描述
A       主機(jī)地址,映射主機(jī)名字到IP
NS      本域授權(quán)名字服務(wù)器
CNAME   規(guī)范的名字,用來注釋主機(jī)的別名
SOA     授權(quán)開始,在域文件中開始DNS服務(wù)器條目,為域和其他特征(像點(diǎn)和序號)指定名字服務(wù)器
WKS     已知的服務(wù)描述
PTR     指針記錄,執(zhí)行逆向域名訪問,映射IP地址到主機(jī)名
RP      文本字符串,包含有關(guān)主機(jī)的接點(diǎn)信息
HINFO   主機(jī)信息
MINFO   電子信箱或郵件列表信息
MX      郵件交換器,傳送到域郵件服務(wù)器的遠(yuǎn)程站點(diǎn)
TXT     文本字符串,通常是主機(jī)信息

安裝

[root@localhost ~]# rpm -q bind
[root@localhost /]# cd /media/Fedora\ 8\ i386\ DVD/Packages/
[root@localhost Packages]# find . -name "bind*"
bind-9.5.0-16.a6.fc8.i386.rpm
bind-chroot-9.5.0-16.a6.fc8.i386.rpm
bind-libs-9.5.0-16.a6.fc8.i386.rpm
bind-utils-9.5.0-16.a6.fc8.i386.rpm
BIND程序的虛擬目錄是/var/named/chroot/
如:/etc/named.conf其實(shí)就是 /var/named/chroot/etc/named.conf
如:/var/named/其真正的路徑是/var/named/chroot/ var/named/
[root@localhost Packages]# rpm -ivh bind-libs-9.5.0-16.a6.fc8.i386.rpm
warning: bind-libs-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
package bind-libs-9.5.0-16.a6.fc8 is already installed
[root@localhost Packages]# rpm -ivh util-linux-ng-2.13-3.fc8.i386.rpm
warning: util-linux-ng-2.13-3.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
package util-linux-ng-2.13-3.fc8 is already installed
[root@localhost Packages]# rpm -ivh bind-9.5.0-16.a6.fc8.i386.rpm
warning: bind-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
error: Failed dependencies:
libmysqlclient.so.15 is needed by bind-9.5.0-16.a6.fc8.i386
libmysqlclient.so.15(libmysqlclient_15) is needed by bind-9.5.0-16.a6.fc8.i386
libodbc.so.1 is needed by bind-9.5.0-16.a6.fc8.i386
libpq.so.5 is needed by bind-9.5.0-16.a6.fc8.i386
mysql is needed by bind-9.5.0-16.a6.fc8.i386
postgresql is needed by bind-9.5.0-16.a6.fc8.i386
unixODBC is needed by bind-9.5.0-16.a6.fc8.i386
[root@localhost Packages]# rpm -ivh mysql-libs-5.0.45-4.fc8.i386.rpm
warning: mysql-libs-5.0.45-4.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
1:mysql-libs  [100%]
[root@localhost Packages]# rpm -ivh bind-9.5.0-16.a6.fc8.i386.rpm
warning: bind-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
error: Failed dependencies:
libodbc.so.1 is needed by bind-9.5.0-16.a6.fc8.i386
libpq.so.5 is needed by bind-9.5.0-16.a6.fc8.i386
mysql is needed by bind-9.5.0-16.a6.fc8.i386
postgresql is needed by bind-9.5.0-16.a6.fc8.i386
unixODBC is needed by bind-9.5.0-16.a6.fc8.i386
[root@localhost Tuxtools]# rpm -ivh unixODBC-2.2.12-5.fc8.i386.rpm
warning: unixODBC-2.2.12-5.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
1:unixODBC [100%]
[root@localhost Packages]# rpm -ivh bind-9.5.0-16.a6.fc8.i386.rpm
warning: bind-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
error: Failed dependencies:
libpq.so.5 is needed by bind-9.5.0-16.a6.fc8.i386
mysql is needed by bind-9.5.0-16.a6.fc8.i386
postgresql is needed by bind-9.5.0-16.a6.fc8.i386
[root@localhost Tuxtools]# rpm -ivh postgresql-libs-8.2.7-1.fc8.i386.rpm
warning: postgresql-libs-8.2.7-1.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
1:postgresql-libs [100%]
[root@localhost Packages]# rpm -ivh bind-9.5.0-16.a6.fc8.i386.rpm
warning: bind-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
error: Failed dependencies:
mysql is needed by bind-9.5.0-16.a6.fc8.i386
postgresql is needed by bind-9.5.0-16.a6.fc8.i386
[root@localhost Tuxtools]# rpm -ivh postgresql-8.2.7-1.fc8.i386.rpm
warning: postgresql-8.2.7-1.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
1:postgresql      [100%]
[root@localhost Packages]# rpm -ivh bind-9.5.0-16.a6.fc8.i386.rpm
warning: bind-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
error: Failed dependencies:
mysql is needed by bind-9.5.0-16.a6.fc8.i386
[root@localhost Packages]# rpm -ivh mysql-5.0.45-4.fc8.i386.rpm
warning: mysql-5.0.45-4.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
1:mysql    [100%]
[root@localhost Packages]# rpm -ivh bind-9.5.0-16.a6.fc8.i386.rpm
warning: bind-9.5.0-16.a6.fc8.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...  [100%]
1:bind     [100%]
[root@localhost ~]# rpm -q bind
bind-9.5.0-16.a6.fc8

安裝完畢后啟動DNS服務(wù)器并測試回環(huán)

[root@localhost etc]# /etc/rc.d/init.d/named start
啟動 named:       [確定]
[root@localhost etc]# nslookup
> localhost
Server: 127.0.0.1
Address:127.0.0.1#53
Name:   localhost
Address: 127.0.0.1
> 127.0.0.1
Server: 127.0.0.1
Address:127.0.0.1#53
1.0.0.127.in-addr.arpa  name = localhost.
> exit
[root@localhost etc]# /etc/rc.d/init.d/named stop
停止 named:       [確定]

修改網(wǎng)絡(luò)配置腳本文件(/etc/sysconfig/network-scripts/ifcfg-eth0):

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
修改后
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:0C:29:65:21:05
BROADCAST=192.168.1.255
IPADDR=192.168.1.6
NETMASK=255.255.255.0
NETWORK=192.168.1.1
ONBOOT=yes

修改本機(jī)域名服務(wù)器IP地址(/etc/resolv.conf):

domain jw.com
nameserver 192.168.1.6
演示文檔/usr/share/doc/bind-9.5.0/sample
[root@localhost etc]# cp named.conf named.conf.old
修改named.conf文件(/etc/named.conf):
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
Fedora 8中,默認(rèn)僅僅在回環(huán)地址127.0.0.1和::1(IPV6的回環(huán)地址)上打開53端口,如果希望在所有地址上都打開53端口,則應(yīng)該修改成:
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query     { localhost; };
Fedora 8中的DNS服務(wù)器默認(rèn)只允許127.0.0.1這個客戶端(即本機(jī))發(fā)起查詢,一般我們需要允許所有人查詢,則因該修改成:
allow-query     { any; };

設(shè)置主區(qū)域(/etc/named.conf):

為了配置的方便和減少出錯我們從系統(tǒng)(127.0.0.1)回環(huán)/etc/named.rfc1912.zones文件復(fù)制到named.conf文件并修改,將以下從named.rfc1912.zones文件復(fù)制
zone "localhost" IN {
type master; 注:type和file是兩個必選項(xiàng),type項(xiàng)用于指明區(qū)域類型(master,slave,stub,forward,hint)
file "named.localhost"; 注:用于指明區(qū)域文件的名字
allow-update { none; }; 注:不允許區(qū)域復(fù)制,
zone "1.0.0.127.in-addr.arpa" IN
type master;
file "named.loopback";
allow-update { none; };
};
修改成
zone "jw.com" IN {
type master;
file "jw.com.zone";
allow-update { none; };      
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "1.168.192.arpa";
allow-update { none; };
};

建立區(qū)域文件在(/var/named):

[root@localhost ~]# cd /var/named/
為了配置方便和減少出錯我們復(fù)制系統(tǒng)(127.0.0.1)回環(huán)文件(正向區(qū)域文件/var/named/named.localhost擬向區(qū)域文件/var/named/named.loopback)
[root@localhost named]# cp named.localhost jw.com.zone
[root@localhost named]# cp named.loopback 1.168.192.arpa
jw.com.zone原文件內(nèi)容
$TTL 1D
@IN SOA  @ rname.invalid. (   注:授權(quán)開始,指定名字服務(wù)器
0       ; serial添加修改時相應(yīng)的序列號
1D      ; refresh是SOA信息的刷新時間間隔
1H      ; retry是與授權(quán)服務(wù)器聯(lián)系的頻率
1W      ; expire是從服務(wù)器保存有關(guān)區(qū)域信息,而不更新它的時間間隔
3H )    ; minimum是區(qū)域中記錄存活的時間
NS      @     注:本域授權(quán)名字服務(wù)器
A       127.0.0.1    注:主機(jī)地址,映射主機(jī)名字到IP地址
AAAA    ::1
jw.com.zone修改后的文件內(nèi)容
$TTL 1D
jw.com.  IN SOA dns.jw.com.  admin.jw.com. (
2008041201      ; serial
1D      ; refresh
1H      ; retry
1W      ; expire
3H )    ; minimum
jw.com.   IN NS dns.jw.com.
dns.jw.com. IN A 192.168.1.6
www.jw.com. IN A 192.168.1.6
bbs.jw.com. IN A 192.168.1.6
blog.jw.com. IN A 192.168.1.6
mail.jw.com. IN A 192.168.1.6
jw.com. IN MX 10 mail.jw.com.
aaa.jw.com IN CNAME www.jw.com.
1.168.192.arpa原文件內(nèi)容
$TTL 1D
@IN SOA  @ rname.invalid. (
0; serial添加修改時相應(yīng)的序列號
1D; refresh是SOA信息的刷新時間間隔
1H; retry是與授權(quán)服務(wù)器聯(lián)系的頻率
1W; expire是從服務(wù)器保存有關(guān)區(qū)域信息,而不更新它的時間間隔
3H ); minimum是區(qū)域中記錄存活的時間
NS @
PTR     localhost.   注:指針記錄,執(zhí)行逆向域名訪問,映射IP地址到主機(jī)名
1.168.192.arpa修改后的文件內(nèi)容
$TTL 1D
1.168.192.in-addr.arpa. IN SOA  dns.jw.com. admin.jw.com. (
2008041201      ; serial
1D      ; refresh
1H      ; retry
1W      ; expire
3H )    ; minimum
1.168.192.in-addr.arpa. IN NS   dns.jw.com.
6 IN PTR dns.jw.com.
6 IN PTR www.jw.com.
6 IN PTR bbs.jw.com.
6 IN PTR blog.jw.com.
6 IN PTR mail.jw.com.

修改文件所屬組:
[root@localhost named]# chgrp named jw.com.zone
[root@localhost named]# chgrp named 1.168.192.arpa
[root@localhost ~]# /etc/rc.d/init.d/named start
啟動 named:       [確定]

測試

[root@localhost ~]# nslookup
> localhost
Server: 192.168.1.6
Address:192.168.1.6#53
Name:   localhost
Address: 127.0.0.1
> 127.0.0.1
Server: 192.168.1.6
Address:192.168.1.6#53
1.0.0.127.in-addr.arpa  name = localhost.
> www.jw.com 注:測試主機(jī)地址A資源記錄
Server: 192.168.1.6
Address:192.168.1.6#53
Name:   www.jw.com
Address: 192.168.1.6
> dns.jw.com
Server: 192.168.1.6
Address:192.168.1.6#53
Name:   dns.jw.com
Address: 192.168.1.6
> 192.168.1.6    注:測試反向解析指針PTR資源記錄
Server: 192.168.1.6
Address:192.168.1.6#53
6.1.168.192.in-addr.arpaname = www.jw.com.
6.1.168.192.in-addr.arpaname = bbs.jw.com.
6.1.168.192.in-addr.arpaname = blog.jw.com.
6.1.168.192.in-addr.arpaname = dns.jw.com.
> set type=ns   注:測試名稱服務(wù)器NS資源記錄
> jw.com
Server: 192.168.1.6
Address:192.168.1.6#53
jw.com  nameserver = dns.jw.com.
> set type=mx   注:測試郵件交換器MX資源記錄
> jw.com
Server: 192.168.1.6
Address:192.168.1.6#53
jw.com  mail exchanger = 10 mail.jw.com.
> set type=soa   注:測試起始授權(quán)機(jī)構(gòu)SOA資源記錄
> jw.com
Server: 192.168.1.6
Address:192.168.1.6#53
jw.com
origin = dns.jw.com
mail addr = admin.jw.com
serial = 2008041201
refresh = 86400
retry = 3600
expire = 604800
minimum = 10800
> set type=cname   注:測試別名CNAME資源記錄
> aaa.jw.com
Server: 192.168.1.6
Address:192.168.1.6#53
aaa.jw.com.jw.com       canonical name = www.jw.com.
> exit

關(guān)閉DNS服務(wù)器服務(wù)

[root@localhost ~]# /etc/rc.d/init.d/named stop 停止 named:

關(guān)于如何理解Fedora DNS服務(wù)器客戶端就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI