linux DNS服务器解析与主从搭建(一)

简介:

一,DNS简介

DNS域名解析协议,它只是一种大家都遵守的协议。因此也是要靠软件来提供DNS服务,然而在linux系统上通常用bind这个软件提供DNS服务。DNS主要功能是将主机名称解析成IP,因此我们浏览网页时,只是输入一个网址,就能够访问到对方所提供的网页。

DNS既然能够提供解析,那必须依靠自身的数据库,才能提供解析功能,然而组成数据库的内容,也就是我们所称作的资源记录,资源记录有多种类型,下面介绍有哪些类型。

1,资源记录类型:

(1)A 记录:FQDN --> ip, (在ipv6中A记录标识为AAAA)

(2)PTR记录:IP -->FQDN

(3)soa(start of authbority起始授权记录):用于标识区域的主要负责人,一般是主dns,放在资源记录的第一个位置。

(4)ns(nameserver):用于标志一个区域的dns服务器。

(5)mx:用于标识这个区域的邮件服务器,必须一个对应的A记录。

(6)cname:别名

2,资源记录格式:name [ttl] in type rdata

(1)type是A记录,则name表示FQDN,rdata是ip。

(2)type是ns,name是当前区域名称,DNS服务器的名称,任何ns记录都有与之对应的A记录。

(3)type是cname,name是别名,rdata是正式名称.

(4)type是mx,则name是区域名称,rdata是优先级和对应的服务器名称,当然肯定存在a记录。

(5)ttl(time to live):存活时间,在此我们可以省略,但是必须定义一个全局的存活时间。

(6)soa:格式

domain_nameIN SOA fqdn(主dns服务器名称) (

serial number(数据库版本号,有改变自动加1)

refresh time(刷新时间

retry time(重试时间)

expire time(失效时间)

ttl for nagative answer (否定回答的ttl

)

3,区域类型:

(1)hint:启始域,或线索域,存放全球的13台根节点,如果定义了转发就可以不用定义。

(2)master:主dns区域

(3)slave:从dns区域

(4)forward:转发区域

实验环境:redhat 5.8

二,实验步骤:

安装bind,这里安装bind97,所以卸载本机自带的


#rpm -e bind-libs bind-utils
#yum -y install bind97 bind97-libs bind97-utils

(1)在主DNS编辑/etc/named.conf(如果没有可以自己新建),并修改权限为640,属组为named,主要为了安全性。

165002566.jpg

在/var/named的目录下,依次新建以下几个文件:localhost.zone,127.0.0.zone,name.ca安装软件时已经提供了,如果没提供也可以自己建立。

# vim /etc/localhost.zone

$TTL 600

@ IN SOA localhost. admin.localhost. (

2013101401

1H

30M

7D

3H )

IN NS localhost.

IN A 127.0.0.1

173006883.jpg

127.0.0.zone的内容,只是将NS记录写PTR的格式。

# cp /etc/localhost.zone /etc/127.0.0.zone

170232476.jpg

(2)下面介绍两个命令测试配置文件跟区域文件的语法有没有

  • named-checkconf 检查/etc/named.conf语法有没有错误,详细用法man下。

# named-checkconf /etc/named.conf

  • named-checkzone 检查区域文件有没有错误,但是不能检查逻辑错误

# named-checkzone localhost /etc/localhost.zone

zone localhost/IN: loaded serial 2013101401

OK

(3)启动named服务,测试是否正常

修改/etc/resolv.conf为自己的DNS服务器,如果不修改在测试时需要指定用哪个服务来解析

正向解析

173710286.jpg

反向解析

173834337.jpg

(3)用rndc控制DNS

175043583.jpg

将密钥的前面的注释符号去掉

175212609.jpg

此时可以用rndc来控制dns服务,检查bind是否正常运行,先重启named 服务

180012681.jpg

(4)下面建立自己的区域

在/etc/named.conf中建立

193325765.jpg

在/var/named目录,建立正反向区域所对应的文件

正向区域文件

193736695.jpg

反向区域文件

194258851.jpg

此时已增加两个区域,修改权限与属组,用rndc reconfig重新载入配置文件,用dig命令测试能否正常解析。

下面测试区域能否正常传送

200811102.jpg

200842125.jpg

上面表示能够正常传送,也可以用host -l 测试

(5)在上面的区域中我定义了两个ns记录,一个为从服务器,现在配置从服务器,前面的步骤都一样,把这些文件从主服务复制到从服务器,省去再次建立的麻烦。named.conf,localhost.zone,127.0.0.zone,bingo.com.zone,192.168.0.zone,用scp命令,这些文件复制过来可以先测试named服务能否正常运行。只是在从服务器上的named.conf需要做如下修改,注意rndc的密钥需要重新生成。

205641503.jpg

查看/var/log/messages下的日志有没有成功从主服务器把文件复制过来,注意是自动复制,不是手动

210212312.jpg

(6)在主服务器上添加一条记录测试是否正常:

212251231.jpg

添加完后,用rndc reload重新载入配置文件,先可以在主服务器测试能否正常解析dig -t A web.bingo.com。然后在从服务器观察有没有添加成功

212656478.jpg

(7)限制区域传送,只允许从服务器传送。在主服务器添加一条记录

213851365.jpg

在从服务器测试能否传送成功dig -t axfr bingo.com @192.168.0.130

(8)接一下篇子域授权










本文转自 deng304749970 51CTO博客,原文链接:http://blog.51cto.com/damondeng/907271,如需转载请自行联系原作者
目录
相关文章
|
10月前
|
网络协议
利用Private Zone DNS - 搭建AD但不搭建DNS服务器如何加域
利用Private Zone DNS - 搭建AD但不搭建DNS服务器如何加域
利用Private Zone DNS - 搭建AD但不搭建DNS服务器如何加域
|
Unix Linux
对于Linux的进程概念以及进程状态的理解和解析
现在,我们已经了解了Linux进程的基础知识和进程状态的理解了。这就像我们理解了城市中行人的行走和行为模式!希望这个形象的例子能帮助我们更好地理解这个重要的概念,并在实际应用中发挥作用。
245 20
|
Ubuntu Linux
"unzip"命令解析:Linux下如何处理压缩文件。
总的来说,`unzip`命令是Linux系统下一款实用而方便的ZIP格式文件处理工具。本文通过简明扼要的方式,详细介绍了在各类Linux发行版上安装 `unzip`的方法,以及如何使用 `unzip`命令进行解压、查看和测试ZIP文件。希望本文章能为用户带来实际帮助,提高日常操作的效率。
3117 12
|
Linux
Linux命令的基本格式解析
总的来说,Linux命令的基本格式就像一个食谱,它可以指导你如何使用你的计算机。通过学习和实践,你可以成为一个真正的“计算机厨师”,创造出各种“美味”的命令。
357 15
|
存储 Linux
Linux内核中的current机制解析
总的来说,current机制是Linux内核中进程管理的基础,它通过获取当前进程的task_struct结构的地址,可以方便地获取和修改进程的信息。这个机制在内核中的使用非常广泛,对于理解Linux内核的工作原理有着重要的意义。
617 11
|
网络协议 安全 Linux
阿里云服务器国际站dns服务器不可用怎么办?dns可以随便改吗?
阿里云服务器国际站dns服务器不可用怎么办?dns可以随便改吗?
5133 0
|
设计模式 存储 安全
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 结构型模式分为以下 7 种: • 代理模式 • 适配器模式 • 装饰者模式 • 桥接模式 • 外观模式 • 组合模式 • 享元模式
884 140
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
|
算法 测试技术 C语言
深入理解HTTP/2:nghttp2库源码解析及客户端实现示例
通过解析nghttp2库的源码和实现一个简单的HTTP/2客户端示例,本文详细介绍了HTTP/2的关键特性和nghttp2的核心实现。了解这些内容可以帮助开发者更好地理解HTTP/2协议,提高Web应用的性能和用户体验。对于实际开发中的应用,可以根据需要进一步优化和扩展代码,以满足具体需求。
1386 29
|
前端开发 数据安全/隐私保护 CDN
二次元聚合短视频解析去水印系统源码
二次元聚合短视频解析去水印系统源码
556 4
|
JavaScript 算法 前端开发
JS数组操作方法全景图,全网最全构建完整知识网络!js数组操作方法全集(实现筛选转换、随机排序洗牌算法、复杂数据处理统计等情景详解,附大量源码和易错点解析)
这些方法提供了对数组的全面操作,包括搜索、遍历、转换和聚合等。通过分为原地操作方法、非原地操作方法和其他方法便于您理解和记忆,并熟悉他们各自的使用方法与使用范围。详细的案例与进阶使用,方便您理解数组操作的底层原理。链式调用的几个案例,让您玩转数组操作。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~

相关产品

  • 云解析DNS