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,如需转载请自行联系原作者




相关文章
|
6天前
|
数据采集 消息中间件 监控
Flume数据采集系统设计与配置实战:面试经验与必备知识点解析
【4月更文挑战第9天】本文深入探讨Apache Flume的数据采集系统设计,涵盖Flume Agent、Source、Channel、Sink的核心概念及其配置实战。通过实例展示了文件日志收集、网络数据接收、命令行实时数据捕获等场景。此外,还讨论了Flume与同类工具的对比、实际项目挑战及解决方案,以及未来发展趋势。提供配置示例帮助理解Flume在数据集成、日志收集中的应用,为面试准备提供扎实的理论与实践支持。
21 1
|
9天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
10天前
|
安全 Ubuntu Java
Linux配置使用篇
Linux配置使用篇
|
12天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 <<EOF binary put file.txt quit EOF ```
27 4
|
22天前
|
存储 负载均衡 索引
linux7安装elasticsearch-7.4.0集群配置
linux7安装elasticsearch-7.4.0集群配置
109 0
|
27天前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
30 1
|
9天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
5天前
|
Linux 数据安全/隐私保护
Linux基础与服务器架构综合小实践
【4月更文挑战第9天】Linux基础与服务器架构综合小实践
1023 6
|
17天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
17天前
|
Linux
Linux安装bind9搭建自己的域名服务器
Linux安装bind9搭建自己的域名服务器
11 0

相关产品

  • 云解析DNS