Linux全攻略--DNS服务器配置与管理(一)

简介:
      在LINUX中,域名服务是由BIND (Berkeley Internet Name Domain,柏克莱网间域名)软件实现的.BIND是一个C/S系统,其客户端称为转换程序(resolver),它负责产生域名信息的查询,将这类信息发送给服务器端.BIND的服务器端是一个称为named的守护进程.它负责回答转换程序的查询.作为DNS客户端,第一步是在用户的计算机上配置客户端程序(转换程序).即向域名服务器获得域名解析/反解析服务.
一.DNS的组成.
1)域名或资源记录(Domain Name and Resource Records):用来指定结构化的域名空间和相应的数据.
2)域名服务器.(Name Server):它是一个服务器端的程序,包括域名空间树结构的部分信息.
3)解析器(Resolves):它是客户端向域名服务器提交解析请求的程序.
二.DNS的分类
1.Master Server(主服务器)
2.Slave Server(辅助服务器)
3.Caching only Server(缓存服务器)
4.Forwarder Server(转发服务器)
三.BIND的安装
通过下面的命令
这里是安装好了.
2.DNS的启动
有两种
1)使用图形化方式启动:选择"应用程序|系统设置|服务器设置|服务.
选中named可以执行关闭,启动和重新启动等操作.
2)在终端窗口用命令进行启动
3.BIND常用的测试命令
有3种:
nslookup:DNS查询命令
dig:DNS信息收集命令
host:域名检索命令
 
四.配置文件和相关概念
DNS主要的配置文件有4个:
1)主配置文件:named.conf,路径为/etc/named.conf.它用来设置全局参数.调配正向解析数据库文件和逆向数据库文件.
2)正向解析数据库文件:localhost.zone,路径为/var/named/localhost.zone.该文件用来将域名转换成IP地址,是区域文件的一部分.
3)逆向解析数据库文件:named.local,路径为/var/named/named/local.该文件用来将IP地址转换成域名,也是区域文件的一部分.
4)根域名服务器指向文件:named.ca,路径为/var/named/named.ca.它用于缓存服务器的初始配置.
 
下面首先来看转换程序控制文件---host.conf
文件/etc/host.conf是用来控制本地转换程序设置的文件.该文件夹告诉转换程序使用哪些服务和按照什么顺序进行查询.
看文件:
#/etc/host.conf
order bind hosts :还有一个是nis
multi off 与host查询一起用,用来确定一台主机是否在/etc/hosts文件中.
nospoof on:若在反向解析找出与指定的地址匹配的主机名,则对返回的地址进行解析以确认它确实与你查询的地址相匹配.为了防止骗取IP地址,通过指定nospoof on来允许此功能
alert on:开启则任何试图骗取IP地址的行为都通过syslog工具进行记录.
trim jamond.net:以域名为参数,在查找名字前先删除此域名,再从文件/etc/hosts查找匹配的主机名.
下面看转换程序配置文件--resolv.conf
当配置转换程序使用BIND域名服务器查询主机时,必须告诉转换程序使用哪一个域名服务器.用来完成这项任务的工具就是/etc/resolv.conf文件.
看配置文件例子:
#/etc/resolv.conf
nameserver 192.168.1.1  列出域名服务器的IP地址,最多可以出现三个
nameserver 192.168.1.2
domain dongguan.com  定义默认的域名
search haida.dongguan.com donggaun.com 指定域名搜索表,最多六个域名参数
options nochecknames rotate 常用的选项有:rotate:打开客户端轮询查询选项.当nameserver中定义多个域名服务器时,进行轮询查询;nochecknames:禁止检测被查询的域名是否符合RFC952,当需要使用带有下划线"_"的域名时,需要该项.;inet6:可以使解析器查询ipv6.
 
下面看主配置文件夹/etc/named.conf
//
// named.conf for Red Hat caching-nameserver 
//
options { //定义服务器区配置文件的工作目录
 directory "/var/named";
 dump-file "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
 /*
  * If there is a firewall between you and nameservers you want
  * to talk to, you might need to uncomment the query-source
  * directive below.  Previous versions of BIND always asked
  * questions using port 53, but BIND 8.1 uses an unprivileged
  * port by default.
  */
  // query-source address * port 53;
};
// 
// a caching only nameserver config
// 定义rndc命令使用的控制通道
controls {
 inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
//定义根区声明
zone "." IN {
 type hint;
 file "named.ca";
};
zone "localdomain" IN {
 type master;
 file "localdomain.zone";
 allow-update { none; };
};
//定义正向解析区
zone "localhost" IN {
 type master;
 file "localhost.zone";
 allow-update { none; };
};
//定义反向解析区
zone "0.0.127.in-addr.arpa" IN {
 type master;
 file "named.local";
 allow-update { none; };
};
zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
 file "named.ip6.local";
 allow-update { none; };
};
zone "255.in-addr.arpa" IN {
 type master;
 file "named.broadcast";
 allow-update { none; };
};
zone "0.in-addr.arpa" IN {
 type master;
 file "named.zero";
 allow-update { none; };
};
include "/etc/rndc.key";
DN S BIND区域类型
master 主DNS区域
slave 从DNS区域,由主DNS区域控制
stub 与从区域类似,但只保存DNS服务器的名字
forward  将任何询问请求转发给其它服务器
hint 根DNSINTERNET服务器集
 
正向解析文件/var/named/localhost.zone
$TTL 86400  //864000秒=1天
//设置SOA RR
@  IN SOA @       root (
     42  ; serial (d. adams)
     3H  ; refresh
     15M  ; retry
     1W  ; expiry
     1D )  ; minimum
//设置NS RR
         IN NS  @
//设置A RR
   IN A  127.0.0.1
  IN AAAA  ::1
逆向解析文件/var/named/named.local
$TTL 86400
@   IN  SOA  localhost. root.localhost. (
                                                        1997022700;Serial
                                                         28800;Refresh
                                                         14400;Retry
                                                         3600000;Expire
                                                         86400);Minimum
                              IN        NS         localhost.
//设置PTR RR
1                     IN     PTR    localhost.
 
先来看区文件:
1资源记录
基本格式:[name] [ttl] IN type rdata
name是以下:"."是根域;
@:是默认域,可以在文件中使用$ORIGIN domain 来说明默认域
标准域名:或是以"."结束的域名,或是一个相对域名
空:该记录适用于最后一个带有名字的域对象.
ttl:寿命字段.它以秒为单位定义该资源记录中的信息存放在高速缓存中的时间长度.通常该字段为空,表示采用SOA中的最小TTL值.
IN:将该记录标识为一个INTERNET DNS资源记录
type:有A CNAME HINFO MX NS PTR SOA
rdata:指定与这个资源记录有关的数据.
 
最后来看DNS服务器的配置
由于本机是新安装的,先来修改下主机名
先来修改network文件.这里主机名是完整域名.
 
然后是修改下HOSTS.不然开机时会经常有提示找不到主机名对应的网络地址.
这里是主域名的配置,指定正向解析区域声明.类型为主域名服务器.定义正向解析文件.这里是默认的解析文件,可修改.反向解析区同样.
这里还设置了别名.
说明"@"符号用在SOA记录中,代表区域的域名.任何没有以点号结尾的主机名或域名会自动追加域名.如haida后面没有点号,会自动追加为haida.dongguan.com
设置反向解析.
然后重新启动.
启动后来进行测试了.
重新启动服务或
#rndc reload
#rndc status
用nslookup,反向解析成功.查询域名haida.dongguan.com.
反向查询域名xinxi.dongguan.com.
正向查询域名haida.dongguan.com
正向查询域名xinxi.dongguan.com
显示当前设置的所有数值
查看域dongguan.com域的NS资源记录配置
查看域dongguan.com域的别名资源记录配置
查看反向区的所有设置情况.
 
有关更详细的内容请看WIN2003的配置.这里相同的就不说明那么清楚了.
 


     本文转自yangming1052 51CTO博客,原文链接:http://blog.51cto.com/ming228/107382,如需转载请自行联系原作者




相关文章
|
7天前
|
数据采集 消息中间件 监控
Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
21 1
|
11天前
|
Linux 编译器 开发者
Linux设备树解析:桥接硬件与操作系统的关键架构
在探索Linux的庞大和复杂世界时🌌,我们经常会遇到许多关键概念和工具🛠️,它们使得Linux成为了一个强大和灵活的操作系统💪。其中,"设备树"(Device Tree)是一个不可或缺的部分🌲,尤其是在嵌入式系统🖥️和多平台硬件支持方面🔌。让我们深入了解Linux设备树是什么,它的起源,以及为什么Linux需要它🌳。
Linux设备树解析:桥接硬件与操作系统的关键架构
|
7天前
|
算法 Linux 调度
深度解析:Linux内核的进程调度机制
【4月更文挑战第12天】 在多任务操作系统如Linux中,进程调度机制是系统的核心组成部分之一,它决定了处理器资源如何分配给多个竞争的进程。本文深入探讨了Linux内核中的进程调度策略和相关算法,包括其设计哲学、实现原理及对系统性能的影响。通过分析进程调度器的工作原理,我们能够理解操作系统如何平衡效率、公平性和响应性,进而优化系统表现和用户体验。
16 3
|
14天前
|
负载均衡 算法 Linux
深度解析:Linux内核调度器的演变与优化策略
【4月更文挑战第5天】 在本文中,我们将深入探讨Linux操作系统的核心组成部分——内核调度器。文章将首先回顾Linux内核调度器的发展历程,从早期的简单轮转调度(Round Robin)到现代的完全公平调度器(Completely Fair Scheduler, CFS)。接着,分析当前CFS面临的挑战以及社区提出的各种优化方案,最后提出未来可能的发展趋势和研究方向。通过本文,读者将对Linux调度器的原理、实现及其优化有一个全面的认识。
|
15天前
|
存储 缓存 监控
深入解析linux内存指标:快速定位系统内存问题的有效技巧与实用方法(free、top、ps、vmstat、cachestat、cachetop、sar、swap、动态内存、cgroops、oom)
深入解析linux内存指标:快速定位系统内存问题的有效技巧与实用方法(free、top、ps、vmstat、cachestat、cachetop、sar、swap、动态内存、cgroops、oom)
|
20天前
|
网络协议 Linux
Linux自建DNS
Linux自建DNS
11 0
|
20天前
|
网络协议 Linux 网络安全
Linux服务器DNS服务器配置实现bind的正向解释和反向解释
Linux服务器DNS服务器配置实现bind的正向解释和反向解释
17 0
|
23天前
|
监控 Linux 编译器
Linux C++ 定时器任务接口深度解析: 从理论到实践
Linux C++ 定时器任务接口深度解析: 从理论到实践
66 2
|
网络协议 Linux

相关产品

  • 云解析DNS