打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DNS域名解析服务
userphoto

2022.05.11 湖北省

关注

一、DNS的原理;

二、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.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 ;有效解析记录的默认缓存时间

@       IN SOA  linuxfan.cn. root.linuxfan.cn. (

                                        20151211        ; 更新序列号,不能超过10位,主服务器更新后,版本号需要手动递增

                                        1D              ; 刷新时间,从服务器多久向主服务器同步

                                        1H              ; 重试延时,同步失败后,在此发起同步的时间间隔

                                        1W              ; 失效时间,超过该事件若还无法同步,则放弃同步

                                        3H )            ; 地址数据库中不包含的解析记录的默认缓存时间

        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.设置配置文件的归属并启动服务;

chown named:named linuxfan.cn.zone 192.168.100.arpa /etc/named.conf    ##设置权限,确保named用户有读取的权限

/etc/init.d/named restart

注:若启动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

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";

};

};

分离解析:通过在dns服务器上创建视图view的方法,在视图中匹配客户端的地址,进而将客户端的解析请求匹配到不同的区域解析文件,在不同的区域解析文件中

将不同客户端的解析结果进行区分;

配置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 

配置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.注意:当主从搭建完成后,主域名服务器的区域解析文件变化后,必须更改主域名服务器上区域解析文件的更新序列号(递增);

然后重启主域名服务器,再验证从域名服务器的区域解析文件是否同步更新;

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Linux技术中坚站论坛 - 为了答谢冷风、游魂斑竹,特总结DNS学习体会与大家分享!
linux下安装配置bind-dns服务器
DNS—bind安装与配置的关键技术揭秘
DNS服务器(Centos 7):bind安装&配置
局域网内的简单linux DNS搭建
dns配置与辅助区域
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服