CentOS 搭建dns服务器 解析任意域名

DNS服务器IP地址:192.168.1.219linux

服务器版本:centos6.6
一:软件安装web

[root@localhost ~]# yum -y install bind*

二:修改主配置文件vim

[root@localhost ~]# cp /etc/named.conf /etc/named.conf.bak # 修改以前先备份一遍
[root@localhost ~]# vi /etc/named.conf

修改成如下:centos

options {

listen-on port 53 { any; }; // 监听在主机的53端口上。any表明监听全部的主机
directory “/var/named”; // 若是此档案底下有规范到正反解的zone file 档名时,该档名预设应该放置在哪一个目录底下

// 下面三项是服务的相关统计信息

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 { any; }; // 谁能够对个人DNS服务器提出查询请求。any表明任何人
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
forwarders { // 指定上层DNS服务器
192.168.1.1;
};
bindkeys-file “/etc/named.iscdlv.key”;
managed-keys-directory “/var/named/dynamic”;
};

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

3、 自定义域名解析配置缓存

[root@localhost ~]# vi /etc/named.rfc1912.zones # 好比咱们要添加yumaozdy.com这个域的解析能够添加下面这一段

zone “yumaozdy.com” IN { // 定义要解析主域名
type master;
file “yumaozdy.com.zone”; // 具体相关解析的配置文件保存在 /var/named/yumaozdy.com.zone 文件中

};

四 自定义yumaozdy.com.zone文件服务器

[root@ns named]# vi /var/named/yumaozdy.com.zone

全文以下:dom

$TTL 86400
@ IN SOA ns.yumaozdy.com. root (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
0 ) ; minimum

@ IN NS ns.yumaozdy.com.
ns IN A 192.168.1.219
www IN A 192.168.1.45
bbs IN A 192.168.1.46
ttt IN A 192.168.1.68

// 其中 ns.yumaozdy.com 表明当前dns服务器名称。因此 ns.yumaozdy.com 必定要解析到本身自己

www IN A 192.168.1.45 // 表明 www.yumaozdy.com 解析到 192.168.1.45服务器上。其余的相似

5、修改权限tcp

[root@ns named]# chown root:named yumaozdy.com.zone # 这一步必定要作

6、重启服务ide

[root@dns_server named]# service named restart

7、新增域名解析测试

若是咱们要追加一个域的解析。好比google.com 则:

vi /etc/named.rfc1912.zones

// 添加下面这段
zone “google.com” IN {
type master;
file “google.com.zone”;
};

[root@ns named]# cp -a yumaozdy.com.zone google.com.zone
[root@ns named]# vi google.com.zone

$TTL 86400
@ IN SOA ns.google.com. root (
1 ; serial
1D ; refresh
1H ; retry
1W ; expire
0 ) ; minimum
@ IN NS ns.google.com.
ns IN A 192.168.1.219
www IN A 192.168.1.11
bbs IN A 192.168.1.46
ttt IN A 192.168.1.68

配置完成以后重启服务

[root@dns_server named]# service named restart

8、关闭selinux(略)

9、添加防火墙规则

vi /etc/sysconfig/iptables

-A INPUT -m state –state NEW -m tcp -p tcp –dport 53 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 53 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 953 -j ACCEPT

添加规则,而且保存(注意位置)

service iptables restart

10、测试

vim /etc/resolv.conf
nameserver 192.168.1.219

保存

ping www.yumaozdy.com和其余域名看可否解析

zone配置文件简单说明:
常见的正解文件 RR 相关信息
[domain] IN [[RR type] [RR data]]
主机名. IN A IPv4 的 IP 地址
主机名. IN AAAA IPv6 的 IP 地址
领域名. IN NS 管理这个领域名的服务器主机名字.
领域名. IN SOA 管理这个领域名的七个重要参数(如上说明)
领域名. IN MX 顺序数字 接收邮件的服务器主机名字
主机别名. IN CNAME 实际表明这个主机别名的主机名字.
单位:W= 周、D= 日、H= 小时、M= 分钟。
$TTL 86400
@ IN SOA ns.helome.com. root ( # ns.test.web. 是DNS服务器的名称
0 ; serial (d. adams) 仅做为序列号而已
1D ; refresh 服务器的更新时间
15M ; retry 从新更新时间间隔
1W ; expiry 多久以后宣布失败
1H ) ; minimum 至关于缓存记忆时间
@ IN NS ns.helome.com.
@ IN MX 5 mail.helome.com. (5为优先级别)
ns IN A 192.168.32.131
www IN A 192.168.32.131
mail IN A 192.168.32.131

测试检测域信息是否正常
检查以前先看下 配置文件有没有读取权限 ll /var/named (若是没有 chmod +r /var/named/* 便可)

使用host或nslookup命令 检测域信息是否正常(以下图所示)

host mail.helome.com
nslookup mail.helome.com

到此DNS服务器的搭建就完毕了。

bind文件配置过程当中容易出错
如下命令用以检查bind配置文件及zone文件语法

named-checkconf/etc/named.conf
named-checkzone helome.com /var/named/helome.com.zone
相关文章
相关标签/搜索