继NTP时间服务器后,继续搭建DNS服务,鉴于昨晚撰写时间超过预期,这次改变策略,先把自己需要用到的部分写出来(主要是基于RAC的搭建,只涉及正向和反向DNS解析),后面再添加必要的说明和阐述。

试验环境:

1. Red Hat 6.3

2. IP 192.168.1.128

3. 欲搭建的域名 being.com

一、安装DNS软件

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

查询相关软件包:
[root@localhost ~]# yum search bind
Loaded plugins: product-id, refresh-packagekit, subscription-manager
Updating Red Hat repositories.
====================================================================================== N/S Matched: bind ======================================================================================
PackageKit-device-rebind.i686 : Device rebind functionality for PackageKit
bind.i686 : The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) server
bind-chroot.i686 : A chroot runtime environment for the ISC BIND DNS server, named(8)
bind-utils.i686 : Utilities for querying DNS name servers
其中各软件包的作用如下:
bind: 提供域名服务的主要程序及相关文件。
bind-chroot:为bind提供一个伪装的根目录以增强安全性。
bind-utils:提供对DNS服务器测试的工具程序(如nslookup、dig等)。

安装BIND软件包#yum install *bind*

http://zhidao.baidu.com/link?url=GKW3_J4Dnygm2WMk71aftHPkiy9_7Av-DjvblzKVvm-vKmdwMOnWrv6QQryT5OFs0xPjDFq1FyGhLOpv8hc22jaTcysNcMNamp3npw7X0LS

二、修改配置文件

[root@hello ~]# vim /etc/named.conf

options {
listen-on port 53 { 127.0.0.1; }; -->>将127.0.0.1改为any,代表所有主机可以对本机的DNS服务进行查询
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; }; -->>将localhost改为any,指定谁可以对我的DNS服务进行查询
recursion yes; dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto; /* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic";
};
include "/etc/named.rfc1912.zones"; -->>include代表该文件是子配置文件
include "/etc/named.root.key";

三、将需要添加的域的信息写在子配置文件里  -->>记录域和域相对应的数据文件在哪里

[root@hello ~]# vim /etc/named.rfc1912.zones  -->>添加到最后

zone "being.com" IN {
type master;
file "data/master.being.com.zone";
};

四、建立数据文件  -->>记录域名与IP的对应

[root@hello ~]# vim /var/named/data/master.being.com.zone  -->>注意,这个文件名必须和上面子配置文件中的信息相同

$TTL 3600
@ IN SOA dns1 victor.mail (
20140324
30
60
90
3600 )
@ IN NS 192.168.1.128. -->>注意这里有个点
node1 IN A 1.1.1.1
node2 IN A 2.2.2.2

在这里,因为不是做主从DNS,SOA后面的七个参数可以随便写,具体解释见下文。

其中:NS代表Name Server,A(即Address)代表后面的IP是IPv4

node1指的是主机名,倘若后面加上域名,则后面必须加个点,即node1.being.com. IN A 1.1.1.1

五、重启服务,进行测试

[root@hello ~]# /etc/init.d/named restart

[root@hello ~]# nslookup node1.being.com

Server: 192.168.1.128
     Address: 192.168.1.128#53

Name: node1.being.com
     Address: 2.2.2.2

 正向DNS解析OK!

现在开始搭建反向DNS解析

一、在子配置文件中添加反向解析数据文件的信息

[root@hello ~]# vim /etc/named.rfc1912.zones

zone "1.168.192.in-addr.arpa" IN {
type master;
file "data/master.1.168.192.in-addr.arpa.zone";
};

二、 建立数据文件

[root@hello ~]# vim /var/named/data/master.1.168.192.in-addr.arpa.zone

$TTL 86400
@ IN SOA hello world (
20140312
30
40
50
86400 )
IN NS 192.168.1.128.
11 IN PTR hello.world.com.

三、重启服务,进行测试

[root@hello ~]# /etc/init.d/named restart

[root@hello ~]# nslookup 192.168.1.11

Server: 192.168.1.128
     Address: 192.168.1.128#53

11.1.168.192.in-addr.arpa name = hello.world.com.

至此,反向解析OK!

 正向解析和反向解析基本OK,后面的主要是DNS其它应用的补充及相关参数的说明。

$TTL 3600
@ IN SOA dns1 victor.mail (
20140324
30
60
90
3600 )
@ IN NS 192.168.1.128.
node1 IN A 1.1.1.1
node2 IN A 2.2.2.2
hello.being.com. IN CNAME node3.being.com.
node3.being.com. IN A 3.3.3.3

1. 所有设定数据一定要从行首开始,前面不可有空格符。若有空格符,代表延续前一个domain的意思

2. @代表zone的意思,在本例中,即代表being.com

3. "hello.being.com."后面的点代表一个完整主机名,即hostname.domain。如果没有这个点,则仅代表hostname

4. CNAME代表别名

5. TTL是time to live的缩写,即当这笔记录被其它DNS服务器查询到后,保存在这些服务器中的时间,单位秒

6.  SOA是Start Of Authority(开始验证)的意思,与域有关,后面共会接7个参数,这7个参数的意义依次是:

1> Master DNS 服务器主机名,即在这个域中哪个DNS作为主服务器,在本例中,即dns1.being.com

2> 管理员的Email。即出现问题可给管理员发邮件。在本例中,是victor@mail.being.com

3> 序号。这个序号代表这个数据库档案的陈旧,序号越大,代表越新。当slave要判断是否主动下载新的数据库时,就以序号是否比slave上的还有新来判断

4> 更新频率(Refresh)。即slave向master要求数据更新的频率

5> 失败重新尝试时间(Retry)。如果因为某些因素,导致slave无法对master达成联机,那么在多久的时间内,slave会尝试重新联机到master

6> 失效时间(Expire)。如果一直失败尝试时间,持续联机到达这个设定值时限,那么slave将不再继续尝试联机

7> 快取时间(Minimum TTL)。如果在这个数据库zone file中,每笔记录都没有显性设定TTL快取时间的话,那么就以这个值为主

http://www.cnblogs.com/ivictor/p/3623096.html

如何搭建DNS服务(转)的更多相关文章

  1. 如何搭建DNS服务

    继NTP时间服务器后,继续搭建DNS服务,鉴于昨晚撰写时间超过预期,这次改变策略,先把自己需要用到的部分写出来(主要是基于RAC的搭建,只涉及正向和反向DNS解析),后面再添加必要的说明和阐述. 试验 ...

  2. centos搭建dns服务

    原文:(https://www.myjinji.top/articles/2020/04/02/1585800289945.html)[https://www.myjinji.top/articles ...

  3. 一文详解CentOS6.5搭建DNS服务

    本文详细介绍DNS服务在Linux Operation System 中的搭建过程 一.DNS服务器的工作原理 客户机提出域名解析请求,并将该请求发送给本地的域名服务器.当本地的域名服务器收到请求后, ...

  4. 搭建DNS服务

    author:JevonWei 版权声明:原创作品 修改/var/named/下的数据库文件的数据时,需手动修改serial序列号 UDP协议53端口用于用户DNS查询,TCP协议53端口用于主从DN ...

  5. 使用unbound在RHEL7上搭建DNS服务

    1.概念:DNS (Domain Name Server)域名解析服务,使用TCP&UDP的53号端口(主从DNS之间用TCP,客户端查询使用UDP).它可以完成域名与IP地址的互换,可以通过 ...

  6. Windows server 2008 搭建DNS服务

    现在用Windows搭建DNS的已经很少了,感觉也只有一些公司的某块部分能用上,最近在捣鼓这个,索性直接写下来,以后可以看了直接用. 开始: ★★★配置静态IP地址 老样子,有关服务器功能的建立,都是 ...

  7. 使用Bind搭建DNS服务

    DNS域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析与反向解析: 正向解析:根据主机名(域名)查找对应的IP地址. 反向解析:根据I ...

  8. Bind搭建DNS服务

    DNS域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析与反向解析: 正向解析:根据主机名(域名)查找对应的IP地址. 反向解析:根据I ...

  9. DNSMAQ 搭建 DNS 服务

    DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能.自己搭建公共DNS更加灵活,如果是在本地搭建,还可以大幅提高解析速度. 相比较 ...

随机推荐

  1. fcntl()

      fcntl() F_GETFL---------------------------------------------        将文件状态标志作为函数值返回. 文件状态标志:        ...

  2. 【linux驱动】linux驱动总览

    欢迎转载,转载时需保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:http:// ...

  3. 怎样安装配置tomcat 8

    链接地址:http://jingyan.baidu.com/article/ff42efa91132a0c19e220208.html Apache tomcat 是目前最为流行的java网站开发的服 ...

  4. Delphi的RTTI还分为对类和对象的判断,以及对普通属性的判断——相比之下,C++的RTTI实在太弱!

    堂堂C++沦落到这个地步,也实在是够可怜的.

  5. WCF技术剖析之九:服务代理不能得到及时关闭会有什么后果?

    原文:WCF技术剖析之九:服务代理不能得到及时关闭会有什么后果? 我们想对WCF具有一定了解的人都会知道:在客户端通过服务调用进行服务调用过程中,服务代理应该及时关闭.但是如果服务的代理不等得到及时的 ...

  6. 关于SQL中Between语句查询日期的问题

      在CSDN找到了相同的问题描述和解决方法: 问题: 我的表某个字段是Datetime型 以" YYYY-MM-DD 00:00:00" 存放 如 A 2009-01-22 21 ...

  7. 1.1-学习Opencv与MFC混合编程之---利用画图函数,生成视频,并写入视频文件

    源代码地址:http://download.csdn.net/detail/nuptboyzhb/3961674 写视频文件 Ø 新建菜单项,Learning OpenCV——> OpenCVr ...

  8. MSSQL - 通用存储过程

    通用插入存储过程: -- ============================================= -- Author: HF_Ultrastrong -- Create date: ...

  9. 使用JDBC对数据库实现批处理操作

    本篇讲述如何使用JDBC对数据库实现批处理操作.很多时候单条SQL命令不能满足我们的需求,我们需要对数据库一次实现很多操作,需要发送一批SQL命令给数据库执行. 而JDBC也提供了相应的方法给我们实现 ...

  10. 解决Java compiler level does not match the version of the installed Java project facet.问题

    其实之前遇到过Java compiler level does not match the version of the installed Java project facet.这个问题,因为当时没 ...