DNS 是域名管理系統
udp/53 tcp/53 (主從)
NDS的作用:
將域名解析成IP地址 正向解析 A記錄
將IP地址解析成域名 發向解析 PTR記錄
hosts文件:
一般生產環境中,服務器的hosts文件保存其他服務器的主機名和ip地址
根域(.):13根域服務器(1臺主根 美國 12輔根:9臺美國 歐洲2臺 瑞典 英國 亞洲1臺 日本)
常見的頂級域名:
com. 商業組織
cc. 商業組織
org. 非盈利性組織機構
gov. 政府單位
net. 網絡、通訊機構
int. 國際組織
cn. 中國
tw. 中國臺灣
hk. 中國香港
BIND軟件:
一款開源軟件,90%以上的企業用的bind軟件;由美國加州大學伯克利分校開發和維護的。
現在由互聯網系統協會負責開發維護。
1、關閉防火牆和selinux
2、配置yum源
3、軟件三步曲(查看|安裝|軟件列表)
# rpm -q bind 是否安裝
# rpm -aq|grep ^bind
bind-libs-9.8.2-0.17.rc1.el6_4.6.x86_64 庫文件
bind-9.8.2-0.17.rc1.el6_4.6.x86_64 服務端軟件
bind-utils-9.8.2-0.17.rc1.el6_4.6.x86_64 工具包
# rpm -ql bind
/etc/logrotate.d/named 日誌輪轉
/etc/named 服務的主目錄
/etc/named.conf 主配置文件
/etc/rc.d/init.d/named 啓動腳本
/etc/named.rfc1912.zones 子配置文件(定義區域文件)
/usr/sbin/named 二進制命令
/usr/sbin/named-checkconf 檢測配置文件語法的命令
/usr/sbin/named-checkzone 檢測區域文件語法的命令
/var/log/named.log 日誌文件
/var/named 數據主目錄
/var/named/data
/var/named/dynamic
/var/named/named.ca 根域區域文件
/var/named/named.empty
/var/named/named.localhost 正向區域文件的模板
/var/named/named.loopback 反向區域文件模板
/var/named/slaves 備用dns服務器數據目錄
/var/run/named 進程
4、瞭解配置文件
5、根據需求通過修改配置文件來完成服務的搭建
需求:
www.bbs.net ——> 192.168.1.110
192.168.1.110 ——>www.bbs.net
1>修改主配置文件
# vim /etc/named.conf
options {
listen-on port 53 { 127.0.0.1;any; };定義監聽方式;全網監聽
listen-on-v6 port 53 { ::1; };
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 { localhost;any; }; 允許任何人來查詢
recursion yes; 支持遞歸
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
...
};
2> 修改子配置文件
vim /etc/named.rfc1912.zones
....
zone "bbs.net" IN { 定義管理的域bbs.net
type master;
file "bbs.net.zone"; 指定區域文件,默認/var/named 文件名必須一致
allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "192.168.1.zone";
allow-update { none; };
};
3> 在/var/named目錄下,創建相應的正向和反向的區域文件
# cd /var/named/
# cp -p named.localhost bbs.net.zone
# cp -p named.loopback 192.168.1.zone 一定要加-p 文件名要和子配置文件一樣。
$TTL 1D :緩存生存週期1天
@:當前域
IN:互聯網
SOA:開始給哪個域授權
rname.invalid. 郵箱
(
0 ; serial 更新序列號
1D ; refresh 更新間隔
1H ; retry 失敗重試
1W ; expire 區域文件的過期時間
3H ) ; minimum 緩存的生存週期
NS:nameserver DNS服務器
A:A記錄 正向解析
AAAA:ipv6 地址
CNAME:別名
MX 5:郵件交互記錄 數字代表優先級 數字越小優先級越高
$GENERATE:批量解析
vim bbs.net.zone 正向解析
$TTL 1D
@ IN SOA bbs.net. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.bbs.net.
dns1 A 10.1.1.1 dns服務器
www A 192.168.1.110 解析後的IP
注意:
前面2行代表dns服務器地址;在正向區域文件裏必不可少
vim 192.168.1.zone 反向解析
$TTL 1D
@ IN SOA bbs.net. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.bbs.net.
110 PTR www.bbs.net.
4、語法檢測
# named-checkconf /etc/named.conf
# named-checkconf /etc/named.rfc1912.zones
# named-checkzone bbs.net.zone bbs.net.zone
5、啓動服務
# service named start
6、測試驗證
# nslookup www.bbs.net
# nslookup 192.168.1.110
----------> 主從 DNS 搭建:
環境:
1、靜態 IP 地址
2、系統時間包保持一致( 同步系統時間 )
搭建時間同步服務器:
端口 123 UDP 協議
方法一: ntp 時間同步服務器,需要外網,自己本身需要同步時間,客戶端同步需要等1-3分鐘
1、安裝 ntp 軟件
# yum install ntp 使用yum安裝
2、修改配置文件
# vim /etc/ntp.conf
...
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap 允許哪個網段同步時間
3、重啓服務 # service ntpd restart 重啓後需等待 3 分鐘
4、client端同步時間
# ntpdate 192.168.1.2
3 Aug 16:12:24 ntpdate[4056]: step time server 192.168.1.2 offset -134852339.592429 sec
方法二: xinted 服務 一般用於局域網中,同步速度快
# cd /etc/xinetd.d/
# vim time-dgram
service time
{
# This is for quick on or off of the service
disable = no 將yes變成no
}
# vim time-stream
service time
{
# This is for quick on or off of the service
disable = no 將yes變成no
...
}
重啓xinetd 服務 ——> client端同步時間: rdate -s 192.168.1.2
# netstat -nltup|grep 37
tcp 0 0 :::37 :::* LISTEN 2795/xinetd
udp 0 0 :::37 :::* 2795/xinetd
搭建主從DNS 服務步驟:
1、 系統時間保持一致
計劃任務( 2 臺都需要 ):*/2 * * * * rdate -s 192.168.1.2
2、 環境 ( 靜態IP 地址)
master :192.168.1.102 —> dns 已搭建好
slave :192.168.1. 3
(master 端 ) :
1> 修改主配置文件
#vim /etc/named.conf
options {
listen-on port 53 { 127.0.0.1;any; };
allow-transfer {192.168.1.3;}; 限制只有192.168.1.3下載數據
listen-on-v6 port 53 { ::1; };
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 { localhost;any; };
recursion yes;
....
};
子配置文件 /etc/named.rfc1912.zones 不需要修改
2> 修改相應的區域文件
# cd /var/named
# vim redhat.org.zone
$TTL 1D
@ IN SOA redhat.org. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.redhat.org.
dns1 A 192.168.1.102
www A 192.168.1.2
@ NS slave.uplook.com. 添加2行,當master 有問題可以向slave 去解析
slave A 192.168.1.3
其他區域文件同樣需要加
# vim 192.168.1.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ NS dns1.redhat.org.
3 PTR vip.test.net.
2 PTR www.redhat.org.
@ NS slave.uplook.com.
3 PTR slave.uplook.com.
(slave 端 ) :
1、 軟件三步曲 #yum -y install bind
2、 修改主配置文件
#vim /etc/named.conf
options {
listen-on port 53 { 127.0.0.1;any; };
allow-transfer {192.168.1.3;}; 限制只有192.168.1.3下載數據
listen-on-v6 port 53 { ::1; };
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 { localhost;any; };
recursion yes;
....
};
3、 修改子配置文件 ( 不需要創建區域文件 )
# vim /etc/named.rfc1912.zones
... 增加如下內容
zone "redhat.org" IN {
type slave;
masters {192.168.1.102;}; ——> master dns IP
file "slaves/redhat.org.zone";
};
zone "test.net" IN {
type slave;
masters {192.168.1.102;};
file "slaves/test.net.zone";
};
zone "1.168.192.in-addr.arpa" IN {
type slaves;
masters {192.168.1.102;};
file "slaves/192.168.1.zone";
};
4、 語法檢測 #named - checkzone ....
5、 測試驗證
#dig @192.168.1.102 www.redhat.org
#dig @192.168.1.3 www.redhat.org
通過修改master 區域文件的版本號或者更改系統時間 來測試