dns 服务搭建

DNS(Domain Name System,域名系统),万维网上作为域名和 IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)

dns 搭建

安装

yum install -y bind

服务启动

systemctl start named

配置文件

options {
        listen-on port 53 { 127.0.0.1; }; # 监听端口
        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; };
};

# 日志
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

正向解析

localhost正向解析的配置文件

vim /var/named/named.localhost 

$TTL 1D  #生存时间 D:天
@       IN SOA  @ rname.invalid. (          #@:域名 SOA:记录,指定授权的服务器 @:主机名 rname.invalid.:管理员邮箱 
                                        0       ; serial   # 序列号
                                        1D      ; refresh  # 刷新时间
                                        1H      ; retry    # 重连间隔时间
                                        1W      ; expire   # 过期时间
                                        3H )    ; minimum  # TTL
        NS      @          # NS记录
        A       127.0.0.1  # A记录
        AAAA    ::1        # ipv6

域名解析的记录类型:A记录、CNAME、MX记录、NS记录、TTL

  • A记录: 又称IP指向,用户可以在此设置子域名并指向到自己的目标主机地址上,从而实现通过域名找到服务器。  

  • CNAME: 通常称别名指向。您可以为一个主机设置别名。 

  • MX记录: 邮件交换记录。

  • NS记录:解析服务器记录。用来表明由哪台服务器对该域名进行解析。

  • TTL值 :TTL值全称是“生存时间(Time To Live)”,简单的说它表示DNS记录在DNS服务器上缓存时间

正向解析测试

dig @127.0.0.1 localhost

dig 基于包bind-utils

反向解析

localhost反向解析的配置文件

vim /var/named/named.loopback

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1
        PTR     localhost. #反向解析

反向解析测试

dig @127.0.0.1 -x 127.0.0.1

解析一个自定义域名

制作一个正向解析

编辑主配置文件

vim /etc/named.conf

listen-on port 53 { 127.0.0.1;192.168.130.134;}; #添加要解析的主机IP,别忘IP后的;

# 底部添加解析zone

zone "chi.com" IN { #解析域名
        type master; #类型为 master
        file "chi.com.zone"; #解析的文件 默认在/var/named
};

保存退出

named-checkconf #检错

编辑正向解析配置文件

vim /var/named/chi.com.zone

$TTL 1D
@       IN SOA  @ admin.chi.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        IN NS ns.chi.com. ; ns
        IN MX 5 mail.chi.com. ; mail
        mail IN A 192.168.130.20 ; mail解析地址
        ns IN A 192.168.130.134 ; ns解析地址
        www IN A 11.11.11.11 ; www解析地址
        bbs IN CNAME www ; CNAME记录

注意完整域名后加 .

保存退出

named-checkzone "chi.com" /var/named/chi.com.zone    #域名 zone文件路径 检错

重启named

systemctl restart named

测试

dig @192.168.130.134 www.chi.com
dig @192.168.130.134 mail.chi.com
dig @192.168.130.134 bbs.chi.com

制作一个反向解析(用处不多,一般邮件服务器)

编辑主配置文件

vim /etc/named.conf

zone "130.168.192.in-addr.arpa" IN { #反向解析域
        type master;
        file "130.168.192.zone"; #反向解析文件,默认在/var/named/
};

保存退出

named-checkconf #检错

编辑反向解析配置文件

vim /var/named/130.168.192.zone

$TTL 1D
@        IN SOA @       admin.chi.com. (                         ;管理员邮箱
                                        2016012701      ; serial  ;序列号 年月日2为号码
                                        1D      ; refresh 刷新时间
                                        1H      ; retry  重连时间
                                        1W      ; expire 到期时间
                                        3H )    ; minimum 最小时间
         IN NS           ns.chi.com.          ; ns
134      IN PTR          ns.chi.com.              #ns的反向解析
20       IN PTR          mail.chi.com.            #MX的反向解析

保存退出

named-checkzone "130.168.192.in-addr.arpa" /var/named/130.168.192.zone    #检错

重启服务

service named restart

反向解析测试

dig @192.168.130.134 -x 192.168.130.134

dns 主从配置

在主机上

编辑主配置文件

vim /etc/named.conf

#在需要的zone内

notify yes;                   #主机上有修改立即发给从机
also-notify { 192.168.130.136; };    #从机IP

保存退出 ,重读配置文件

service named reload

主机上每个更改zone时,序列号要往上加

在从机上

下载bind

yum install -y bind

编辑主配置文件

vim /etc/named.conf

# 注释下面两行,监听在所有端口

listen-on port 53 { 127.0.0.1;192.168.130.134; };
listen-on-v6 port 53 { ::1; };

# 添加行

zone "chi.com" IN {
        type slave;             #从类型
        file"slaves/chi.com.zone";
        masters { 192.168.130.134; };  #主机IP
};

zone "130.168.192.in-addr.arpa" IN {
        type slave;
        file"slaves/130.168.192.zone";
        masters { 192.168.130.134; };
};

保存退出,重启服务

最后更新于

这有帮助吗?