DNS服務器的配置
一、DNS的組成
1、DNS的作用:在域名和IP地址之間實現轉換的服務。
2、DNS域名空間:以根域爲起點的一個層次化的結構空間。
3、DNS服務:通過遞歸查詢和迭代查詢實現IP與域名之間轉換的服務。
4、資源記錄:存儲於DNS服務器中,用於記錄域名與IP地址對應關係的記錄。
5、DNS客戶端:查詢DNS服務器,尋求IP--域名對應關係的計算機。
二、域名解析的過程
1、本地解析
通過本地/etc/hosts文件解析。
使用本地DNS緩存解析。(客戶端會緩存DNS解析結果)
2、DNS服務器解析
DNS服務器進行本地解析,匹配本地資源記錄。
DNS服務器進行緩存解析,查詢DNS緩存。
DNS服務器進行迭代查詢。
三、DNS服務器的安裝
1、Linux下的DNS服務起是通過Bind程序實現的。Bind(Berkeley Internet Name Domain Server)。
2、安裝Bind
查詢Bind的安裝情況:rpm -q bind
安裝包結構:
bind-9.3.3-7.el5.i386.rpm 主程序
bind-utils-9.3.3-7.el5.i386.rpm Bind的客戶端工具
caching-nameserver-9.3.3-7.el5.i386.rpm 高速緩存
*bind-chroot-9.3.3-7.el5.i386.rpm (囚禁目錄程序)
3、啓動bind:服務名named
四、bind的主配置文件--/etc/named.conf
1、DNS的三種類型:
主要名稱服務器:保存區域資源記錄的正本信息。
輔助名稱服務器:保存區域資源記錄的副本信息。
cache-only服務器:保存NS、SOA和部分A記錄的緩存服務器。
2、生成正向解析區域:
建立主配置文件/etc/named.conf
options {
全局配置
}
options {
directory "/var/named";設置DNS的區域數據文件的存放位置
dump-file "/var/named/data/cache_dump.db";
設置DNS數據庫的存放位置。
statistics-file "/var/named/data/named_stats.txt";
設置DNS統計信息的存放位置。
memstatistics-file "/var/named/data/named_mem_stats.txt";
設置DNS存儲統計信息的存放位置。
version "4.3.2"; 版本信息
};
include "/etc/rndc.key";共享密鑰文件,用於兼容Bind8
建立根區域
zone “.” { /*zone用於定義區域名稱
type hint; /*type用於設置區域類型
file “named.ca”; /*file用於定義區域數據文件存放的位置
};
建立正向區域
在/etc/named.conf中添加正向區域
zone "itatpro.com" {
type master; /*master表示主要區域
file "itatpro.com.zone";
};
在/var/named下建立區域數據文件(itatpro.com.zone)
$TTL 86400 :定義客戶端緩存查詢數據的默認時間。
默認單位爲秒,也可以使用h(小時),d(天),w(星期)
$TTL 24h ;$TTL 1d;$TTL 2w
SOA服務資源記錄:定義了主DNS與輔助DNS之間的數據複製選項。
@ IN SOA localhost root (
本區域 定義記錄類型 本區域的主DNS服務器FQDN DNS管理員郵箱
DNS管理員郵箱不能使用@分割,@位置應由“.”代替。
@ IN SOA hero001.itatpro.com. root.itatpro.com. (
42 ;變動序號,當主服務器的記錄修改一次,變動序號將加1。
變動序號最大爲9位,格式可以使用日期+修改。
200912111
3H;更新時間,定義了輔助服務器和主服務器進行數據同步的間隔時間
15M;重試時間
1W;過期時間
1d;定義了使用輔助DNS的客戶端的緩存時間。
)
@ IN NS 本區域DNS服務器的FQDN
NS:名稱服務器記錄,表示本區域的DNS服務器
hero001 IN A ip地址
hero001 IN A 192.168.1.1
重啓named服務
五、添加區域數據記錄
1、SOA
2、NS
3、A(主機記錄),定義了主機名對應的IP地址
4、CNAME(別名記錄),定義了主機的別名記錄
六、DNS客戶端
1、DNS客戶端是向DNS服務器提出查詢請求的應用程序。
a、WindowsDNS客戶端:
b、LinuxDNS客戶端:
2、DNS的探測命令:nslookup
nslookup
>域名 根據A記錄返回IP信息。
>IP 根據PRT指針記錄返回域名信息。
查詢特定記錄類型的信息
>set type=記錄類型
>域名
七、配置輔助DNS
1、設置主服務器允許區域傳送
/etc/named.conf
區域定義中添加:allow-transfer { 輔助服務器IP;};
2、在輔助DNS服務器上創建同名區域
3、創建Linux的輔助服務器
a、要求主DNS服務器允許區域複製
b、創建Linux下的輔助區域。
/etc/named.conf
zone "itat.edu" {
type slave;
file "slaves/itat.edu.zone"; (輔助區域的數據文件一般存放在 slaves
目錄中。該區域數據文件由系統生成)
masters {192.168.16.200;}; (定義主服務器)
};
八、定義緩存Cache-only服務器
options {
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
forward only;(將客戶機的查詢轉向到其他DNS服務器)
forwarders{ (轉發主機,定義了forward的轉發對象)
192.168.16.200;
202.96.54.3;
};
};
include "/etc/rndc.key";
九、chroot(目錄監禁功能)
1、chroot:將DNS識別的系統根目錄定義到/var/named/chroot/=/。安全的目錄配置
機制。
2、安裝chroot:bind-chroot
例: 編輯 /etc/named.conf
options {
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stts.txt";
};
定義根區域
include "/etc/vndc.key";
zone "." {
type hint;
file "named.ca";
};
定義主要區域
zone "itatpro.com" {
type master;
file "itatpro.com.zone";
};
zone "16.168.192.in-addr.arpa" {
type master;
file "16.168.192.in-addr.arpa.zone";
編輯 /var/itatpro.com.zone
$ttl 1d
@ IN SOA dns.itatpro.com.
200911201
600
300
86400
38400)
dns IN NS 192.168.16.254
www IN A 192.168.16.254
www IN A 192.168.16.1
www IN A 192.168.16.2
ftp.itatpro.com. IN A 192.168.16.254
mail IN A 192.168.16.254
@ IN MX 10 mail.itatpro.com.
設置 /var/16.168.192.in-addr.arpa.zone
$ttl 1d
@ IN SOA dns.itatpro.com root.itatpro.com.(
200911201
600
300
86400
38400)
@ IN NS dns.itatpro.com.
254 IN PTR dns.itatpro.com.