dns

DNS域名解析服務

一、DNS的原理:

1.概述:DNS--域名解析系統;
2.結構:三級、二級、頂級、.爲根,全球一共十三個根DNS服務器;
3.FQDN:完全合格域名,主機名(www)+域名後綴(baidu.com),用來描述全球唯一的一臺主機;
4.DNS解析記錄:
a.主機解析域名過程:找緩存--找hosts文件--netbios(僅限於windows主機)--DNS服務器--上一級DNS服務器
b.查詢方法:客戶端--通過遞歸--本地服務器--通過迭代--上游服務器
遞歸:必須回覆,客戶端連接自己的DNS
迭代:盡力而爲模式,服務器與服務器之間的解析
c.DNS緩存:加快解析速度,減少互聯網上DNS查詢數據,一般在本地客戶機和本地服務器產生DNS緩存;
d.解析分類:
正向解析:將域名解析成IP地址
反向解析:將IP地址解析成域名
e.根據DNS的區域來源不同將DNS服務器分爲:緩存服務器、主域名服務器、從域名服務器;
主域名服務器:維護某一個特定區域的地址數據庫,自行建立所負責區域的地址數據文件;
從域名服務器:同步主域名服務器的配置文件,通常爲DNS服務器的熱備份;
緩存服務器:只提供緩存功能,需指定其他DNS服務器爲解析來源,加快查詢速度;
注:DNS服務所監聽的端口號:tcp 53 udp 53,在客戶端與dns服務端建立連接時,使用tcp53端口,當進行地址解析傳輸時,使用udp 53號端口;

二、DNS的配置文件;

1.bind軟件:bind主程序、bind-utils客戶端工具
2.配置文件:
/etc/named.conf ##主配置文件的目錄
/var/named/ ##區域配置文件存放目錄
3.區域配置文件:記錄DNS條目
$TTL ##生存週期,緩存的DNS記錄有效期
SOA ##起始授權機構(主從同步的參數)
NS ##域名服務器記錄
MX ##郵件交換記錄
PTR ##反向指針記錄
CNAME ##別名

  • ##泛域名

    三、部署DNS域名解析系統:

    1.部署主DNS服務器:
    a.配置ip、網關、DNS、hosts文件、主機名、關閉防火牆、關閉selinux;
    b.配置yum源並安裝bind軟件包;
    c.修改配置文件,定製功能;
    d.啓動服務;

配置bind從域名服務器:

1.設置網絡參數:
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

注:若啓動named服務時出現:
[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

查看查詢日誌:
less /var/named/data/named.run

5.注意:當主從搭建完成後,主域名服務器的區域解析文件變化後,必須更改主域名服務器上區域解析文件的更新序列號(遞增);
然後重啓主域名服務器,再驗證從域名服務器的區域解析文件是否同步更新;

配置bind從域名服務器:

1.設置網絡參數:
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

注:若啓動named服務時出現:
[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

查看查詢日誌:
less /var/named/data/named.run

5.注意:當主從搭建完成後,主域名服務器的區域解析文件變化後,必須更改主域名服務器上區域解析文件的更新序列號(遞增);
然後重啓主域名服務器,再驗證從域名服務器的區域解析文件是否同步更新;

配置bind緩存服務器:

添加兩塊網卡,模式分別爲vm1和橋接
1.設置網絡參數:
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 ##獲取一個動態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

注:若啓動named服務時出現:
[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

查看查詢日誌:
less /var/named/data/named.run

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章