一、DNS的原理;
二、DNS的配置文件;
三、部署DNS域名解析系統;
一、DNS的原理:
1.概述:DNS--域名解析系統;
2.結構:三級、二級、頂級、.為根,全球一共十三個(gè)根DNS服務(wù)器;
3.FQDN:完全合格域名,主機名(www)+域名后綴(baidu.com),用來(lái)描述全球唯一的一臺主機;
4.DNS解析記錄:
a.主機解析域名過(guò)程:找緩存--找hosts文件--netbios(僅限于windows主機)--DNS服務(wù)器--上一級DNS服務(wù)器
b.查詢(xún)方法:客戶(hù)端--通過(guò)遞歸--本地服務(wù)器--通過(guò)迭代--上游服務(wù)器
遞歸:必須回復,客戶(hù)端連接自己的DNS
迭代:盡力而為模式,服務(wù)器與服務(wù)器之間的解析
c.DNS緩存:加快解析速度,減少互聯(lián)網(wǎng)上DNS查詢(xún)數據,一般在本地客戶(hù)機和本地服務(wù)器產(chǎn)生DNS緩存;
d.解析分類(lèi):
正向解析:將域名解析成IP地址
反向解析:將IP地址解析成域名
e.根據DNS的區域來(lái)源不同將DNS服務(wù)器分為:緩存服務(wù)器、主域名服務(wù)器、從域名服務(wù)器;
主域名服務(wù)器:維護某一個(gè)特定區域的地址數據庫,自行建立所負責區域的地址數據文件;
從域名服務(wù)器:同步主域名服務(wù)器的配置文件,通常為DNS服務(wù)器的熱備份;
緩存服務(wù)器:只提供緩存功能,需指定其他DNS服務(wù)器為解析來(lái)源,加快查詢(xún)速度;
注:DNS服務(wù)所監聽(tīng)的端口號:tcp 53 udp 53,在客戶(hù)端與dns服務(wù)端建立連接時(shí),使用tcp53端口,當進(jìn)行地址解析傳輸時(shí),使用udp 53號端口;
二、DNS的配置文件;
1.bind軟件:bind主程序、bind-utils客戶(hù)端工具
2.配置文件:
/etc/named.conf ##主配置文件的目錄
/var/named/ ##區域配置文件存放目錄
3.區域配置文件:記錄DNS條目
$TTL ##生存周期,緩存的DNS記錄有效期
SOA ##起始授權機構(主從同步的參數)
NS ##域名服務(wù)器記錄
MX ##郵件交換記錄
PTR ##反向指針記錄
CNAME ##別名
* ##泛域名
三、部署DNS域名解析系統:
1.部署主DNS服務(wù)器:
a.配置ip、網(wǎng)關(guān)、DNS、hosts文件、主機名、關(guān)閉防火墻、關(guān)閉selinux;
b.配置yum源并安裝bind軟件包;
c.修改配置文件,定制功能;
d.啟動(dòng)服務(wù);
配置bind主域名服務(wù)器:
1.設置網(wǎng)絡(luò )參數:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="00:0C:29:68:b1:0f"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO=static
IPADDR=192.168.100.150
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
DNS1=202.106.0.20
DNS2=192.168.100.150
:wq
vi /etc/selinux/config
SELINUX=disabled
:wq
chkconfig iptables off
reboot
2.安裝bind軟件:
rm -rf /etc/yum.repos.d/*
vi /etc/yum.repos.d/1.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
yum -y install bind
yum -y install bind-utils
3.修改配置文件:
修改主配置文件;
vi /etc/named.conf ##修改如下,可以復制粘貼
options
{
directory "/var/named";
listen-on port 53 { 192.168.100.150; };
query-source port 53;
allow-query { 192.168.100.0/24; };
recursion yes;
};
zone "linuxfan.cn." IN {
type master;
file "linuxfan.cn.zone";
notify yes;
also-notify { 192.168.100.151; };
};
zone "100.168.192.in-addr.arpa" IN {
type master;
file "192.168.100.arpa";
notify yes;
also-notify { 192.168.100.151; };
};
:wq
[root@ns etc]# named-checkconf /etc/named.conf ##測試主配置文件是否有錯誤
修改正向解析區域配置文件;
cd /var/named/
vim linuxfan.cn.zone
$TTL 86400 ;有效解析記錄的默認緩存時(shí)間
@ IN SOA linuxfan.cn. root.linuxfan.cn. (
20151211 ; 更新序列號,不能超過(guò)10位,主服務(wù)器更新后,版本號需要手動(dòng)遞增
1D ; 刷新時(shí)間,從服務(wù)器多久向主服務(wù)器同步
1H ; 重試延時(shí),同步失敗后,在此發(fā)起同步的時(shí)間間隔
1W ; 失效時(shí)間,超過(guò)該事件若還無(wú)法同步,則放棄同步
3H ) ; 地址數據庫中不包含的解析記錄的默認緩存時(shí)間
IN NS ns.linuxfan.cn.
ns IN A 192.168.100.150
IN A 192.168.100.150
IN MX 10 mail.linuxfan.cn.
mail IN A 192.168.100.150
www IN A 192.168.100.150
ftp IN CNAME www
:wq
修改反向解析區域配置文件;
vim 192.168.100.arpa
$TTL 86400
@ IN SOA linuxfan.cn. root.linuxfan.cn. (
20151211 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS ns.linuxfan.cn.
150 IN PTR ns.linuxfan.cn.
150 IN PTR mail.linuxfan.cn.
150 IN PTR www.linuxfan.cn.
150 IN PTR ftp.linuxfan.cn.
:wq
[root@ns named]# named-checkzone linuxfan.cn.zone 192.168.100.arpa ##測試區域數據庫配置文件
4.設置配置文件的歸屬并啟動(dòng)服務(wù);
chown named:named linuxfan.cn.zone 192.168.100.arpa /etc/named.conf ##設置權限,確保named用戶(hù)有讀取的權限
/etc/init.d/named restart
注:若啟動(dòng)named服務(wù)時(shí)出現:
[root@lwh chroot]# /etc/init.d/named start
Generating /etc/rndc.key:
解決方法:
[root@lwh chroot]# rndc-confgen -r /dev/urandom -a
[root@lwh chroot]# /etc/init.d/named start
chkconfig named on
netstat -utpln |grep 53
5.測試:
windows/linux:
nslookup
server 192.168.100.150
mail.linuxfan.cn
www.linuxfan.cn
exit
擴展:
部署分離解析:
vi /etc/named.conf
options
{
directory "/var/named";
listen-on port 53 { any; };
query-source port 53;
allow-query { any; };
recursion yes;
};
view "internal" {
match-clients {
localhost;
192.168.100.0/24;
};
zone "jd.com." IN {
type master;
file "jd.com.zone";
notify yes;
also-notify { 192.168.100.151; };
};
};
view "external" {
match-clients { any; };
allow-query { any; };
recursion no;
zone "jd.com." IN {
type master;
file "jd.com.wan";
};
};
分離解析:通過(guò)在dns服務(wù)器上創(chuàng )建視圖view的方法,在視圖中匹配客戶(hù)端的地址,進(jìn)而將客戶(hù)端的解析請求匹配到不同的區域解析文件,在不同的區域解析文件中
將不同客戶(hù)端的解析結果進(jìn)行區分;

配置bind從域名服務(wù)器:
1.設置網(wǎng)絡(luò )參數:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="00:0C:29:68:b1:0f"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO=static
IPADDR=192.168.100.151
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
DNS1=202.106.0.20
DNS2=192.168.100.150
:wq
vi /etc/selinux/config
SELINUX=disabled
:wq
chkconfig iptables off
reboot
2.安裝bind軟件:
rm -rf /etc/yum.repos.d/*
vi /etc/yum.repos.d/1.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
yum -y install bind
yum -y install bind-utils
3.修改配置文件:
vi /etc/named.conf ##修改如下,可以復制粘貼,options區域內,除directory配置項(指定區域配置文件的默認存放位置)不可省略外,別的都可以省略;
options {
directory "/var/named";
};
zone "linuxfan.cn" IN {
type slave;
file "slaves/linuxfan.cn.zone";
masters { 192.168.100.150; };
};
zone "100.168.192.in-addr.arpa" IN {
type slave;
file "slaves/192.168.100.arpa";
masters { 192.168.100.150; };
};
:wq
/etc/init.d/named restart
chkconfig named on
netstat -utpln |grep 53
注:若啟動(dòng)named服務(wù)時(shí)出現:
[root@lwh chroot]# /etc/init.d/named start
Generating /etc/rndc.key:
解決方法:
[root@lwh chroot]# rndc-confgen -r /dev/urandom -a
[root@lwh chroot]# /etc/init.d/named start
4.測試:
windows/linux:
nslookup
server 192.168.100.150
192.168.100.150
www.linuxfan.cn
exit
查看查詢(xún)日志:
less /var/named/data/named.run
5.注意:當主從搭建完成后,主域名服務(wù)器的區域解析文件變化后,必須更改主域名服務(wù)器上區域解析文件的更新序列號(遞增);
然后重啟主域名服務(wù)器,再驗證從域名服務(wù)器的區域解析文件是否同步更新;


配置bind緩存服務(wù)器:
添加兩塊網(wǎng)卡,模式分別為vm1和橋接
1.設置網(wǎng)絡(luò )參數:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="00:0C:29:68:b1:0f"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO=static
IPADDR=192.168.100.150
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
DNS1=202.106.0.20
DNS2=192.168.100.150
:wq
vi /etc/selinux/config
SELINUX=disabled
:wq
chkconfig iptables off
reboot
dhclient -d eth1 ##獲取一個(gè)動(dòng)態(tài)ip地址,看到bound字段按ctrl c退出
2.安裝bind軟件:
vi /etc/yum.repos.d/1.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
yum -y install bind
yum -y install bind-utils
3.修改配置文件:
vi /etc/named.conf ##修改如下,可以復制粘貼,options區域內,除directory配置項(指定區域配置文件的默認存放位置)不可省略外,別的都可以省略;
options
{
directory "/var/named"; // "Working" directory
dump-file "data/cache_dump.db";
statistics-file "data/named_stats.txt";
memstatistics-file "data/named_mem_stats.txt";
listen-on port 53 { 192.168.100.150; };
query-source port 53;
allow-query { 192.168.100.0/24; };
recursion yes;
};
logging
{
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
:wq
主配置文件中指定的根區域配置文件在/var/named/named.ca中
chown named:named /var/named/named.ca
/etc/init.d/named restart
chkconfig named on
netstat -utpln |grep 53
注:若啟動(dòng)named服務(wù)時(shí)出現:
[root@lwh chroot]# /etc/init.d/named start
Generating /etc/rndc.key:
解決方法:
[root@lwh chroot]# rndc-confgen -r /dev/urandom -a
[root@lwh chroot]# /etc/init.d/named start
4.測試:
windows/linux:
nslookup
server 192.168.100.150
www.baidu.com
www.sina.com
exit
查看查詢(xún)日志:
less /var/named/data/named.run


配置bind從域名服務(wù)器:
1.設置網(wǎng)絡(luò )參數:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="00:0C:29:68:b1:0f"
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO=static
IPADDR=192.168.100.151
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
DNS1=202.106.0.20
DNS2=192.168.100.150
:wq
vi /etc/selinux/config
SELINUX=disabled
:wq
chkconfig iptables off
reboot
2.安裝bind軟件:
rm -rf /etc/yum.repos.d/*
vi /etc/yum.repos.d/1.repo
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
yum -y install bind
yum -y install bind-utils
3.修改配置文件:
vi /etc/named.conf ##修改如下,可以復制粘貼,options區域內,除directory配置項(指定區域配置文件的默認存放位置)不可省略外,別的都可以省略;
options {
directory "/var/named";
};
zone "linuxfan.cn" IN {
type slave;
file "slaves/linuxfan.cn.zone";
masters { 192.168.100.150; };
};
zone "100.168.192.in-addr.arpa" IN {
type slave;
file "slaves/192.168.100.arpa";
masters { 192.168.100.150; };
};
:wq
/etc/init.d/named restart
chkconfig named on
netstat -utpln |grep 53
注:若啟動(dòng)named服務(wù)時(shí)出現:
[root@lwh chroot]# /etc/init.d/named start
Generating /etc/rndc.key:
解決方法:
[root@lwh chroot]# rndc-confgen -r /dev/urandom -a
[root@lwh chroot]# /etc/init.d/named start
4.測試:
windows/linux:
nslookup
server 192.168.100.150
192.168.100.150
www.linuxfan.cn
exit
查看查詢(xún)日志:
less /var/named/data/named.run
5.注意:當主從搭建完成后,主域名服務(wù)器的區域解析文件變化后,必須更改主域名服務(wù)器上區域解析文件的更新序列號(遞增);
然后重啟主域名服務(wù)器,再驗證從域名服務(wù)器的區域解析文件是否同步更新;

聯(lián)系客服