阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

搭建DNS服务器

27次阅读
没有评论

共计 3187 个字符,预计需要花费 8 分钟才能阅读完成。

导读 Linux 下架设 DNS 服务器通常是使用 Bind 程序来实现的。Bind 是一款实现 DNS 服务器的开放源码的软件。DNS 即域名系统,主要功能是将人们易于记忆的 Domain Name(域名) 与不易记忆的 IP 地址进行转换。下面由我给大家简单介绍一下 Linux 下架设 DNS 服务器。

搭建 DNS 服务器

Linux 下 DNS 服务器常规操作
软件包安装

Red Hat Linux 的各个版本已经包含 DNS 服务器的软件 –Bind,一般不需要用户另行安装,如果用户需要安装最新版本,可以到 Bind 官网 http://www.bind.com/ 浏览最新消息。也可以到其它网站下载。

源码软件包:https://www.isc.org/downloads/

例如,在其它网站中下载源码包软件包 bind-9.10.4-P1.tar.gz

以下是安装过程中的一些指令:

[root@localhost root]# tar xzvf bind-9.10.4-P1.tar.gz
[root@localhost root]# cd bind-9.10.4-P1
[root@localhost bind-9.10.4-P1]# ./configure
[root@localhost bind-9.10.4-P1]# make
[root@localhost bind-9.10.4-P1]# make install

其中各参数含义如下:

tar xzvf bind-9.10.4-P1.tar.gz        // 解压缩软件包
./configure                               // 针对机器做安装的检查和设置,大部分工作由机器自动完成
make                                     // 编译
make install                            // 安装 
软件包的功能

Bind:提供了域名服务的主要程序以及相关文件。

Bind-utils: 提供了对 DNS 服务器的测试工具程序(nslookupdup、dig 等)

Bind-chroot: 为 Bind 提供了一个伪装的根目录以增强安全性

Caching-namserver: 为配置 Bind 作为缓存域名服务器提供必要的默认配置文件,用于参考

DNS 常规操作

1. 启动 DNS 服务器:

/etc/init.d/named start

2. 停止 DNS 服务器:

/etc/init.d/named stop

3. 重新启动 DNS 服务器:

/etc/init.d/named restart
DNS 配置文件
与 DNS 相关的两个特殊文件

1./etc/resolv.conf

该文件用来指定系统中 DNS 服务器的 IP 地址和一些相关信息,格式如下:

search abc.com.cn
nameserver 10.1.6.250
nameserver 192.168.1.254

2./etc/host.conf

该文件决定进行域名解析时查找 host 文件和 DNS 服务器的顺序,其格式如下:

order hosts,bind
Bind 的配置文件

Bind 的主配置文件是 etc/name.conf, 该文件是文本文件,一般需手动生成。除了主配置文件外,/var/named 目录下的所有文件都是 DNS 服务器的相关配置文件,下面详细讲述这些文件的配置。

1.name.conf 文件详解

options {listen-on port 53 { 127.0.0.1;};      // 设置 named 服务器监听端口及 IP 地址
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;};   // 允许 DNS 查询客户端
allow-query-cache {any;};
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {match-clients      { any;};
match-destinations {any;};
recursion yes;                  // 设置允许递归查询
include "/etc/named.rfc1912.zones";
};

2. 区域配置文件 /etc/named.rfc1912.zones

zone "." IN {    // 定义了根域
type hint;       // 定义服务器类型为 hint
file "named.ca";  // 定义根域的配置文件名
};

zone "localdomain" IN {   // 定义正向 DNS 区域
type master;              // 定义区域类型
file "localdomain.zone";  // 设置对应的正向区域地址数据库文件
allow-update {none;};   // 设置允许动态更新的客户端地址(none 为禁止)};

zone "localhost" IN {
type master;
file "localhost.zone";
allow-update {none;};
};

zone "0.0.127.in-addr.arpa" IN {   // 设置反向 DNS 区域
type master;
file "named.local";
allow-update {none;};
};

3. 根域配置文件 named.ca

根域配置文件设定根域的域名数据库,包括根域中 13 台 DNS 服务器的信息。几乎所有系统的这个文件都是一样的,用户不需要进行修改。

4. 正向域名解析数据库文件

$TTL 600
@        IN   SOA    dns.cwlinux.com   dnsadmin.cwlinux.com. (//SOA 字段
                          2015031288   // 版本号    同步一次  +1
                             1H        // 更新时间
                             2M        // 更新失败,重试更新时间
                             2D        // 更新失败多长时间后此 DNS 失效时间
                             1D        // 解析不到请求不予回复时间
)
         IN    NS   dns            // 有两域名服务器
         IN    NS   ns2
         IN    MX  10 mial        // 定义邮件服务器,10 指优先级  0-99 数字越小优先级越高
ns2      IN    A    192.168.1.113  //ns2 域名服务器的 ip 地址
dns      IN    A    192.168.1.10   //dns 域名服务器的 ip 地址
mail     IN    A    192.168.1.111   // 邮件服务器的 ip 地址
www      IN    A    192.168.1.112   //www.cwlinux.com 的 ip 地址
pop      IN   CNAME  mail         //pop 的正式名字是 mail
ftp      IN   CNAME  www         //ftp 的正式名字是 www

5. 反向域名解析数据库文件

$TTL 600
@         IN   SOA    dns.cwlinux.com.   dnsadmin.cwlinux.com. (
                             2014031224
                             1H
                             2M
                             2D
                             1D
)
         IN   NS      dns.cwlinux.com.
10       IN   PTR     dns.cwlinux.com.     // 反向解析 PTR 格式
111       IN   PTR     mail.cwlinux.com.
112       IN   PTR     www.cwlinux.com.
// 声明域的时候已经有了,192.168.1 所以我们只需要输入 10 既代表 192.168.1.10jc
DNS 客户端的配置文件

Linux 系统中,DNS 客户端的配置文件是 /etc/resolv.conf, 该文件记录了 DNS 服务器的地址和域名。

一般格式如下:

#more /etc/resolv.conf
nameserver 10.1.6.250  
domainname abc.com.cn

其中,关键字 nameserver 记录该域中 DNS 服务器的 IP 地址,domainname 记录所在域的名称。

本文原创地址:https://www.linuxprobe.com/set-up-dns-server.html 作者:冯琪,审核员:逄增宝

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计3187字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中