千家信息网

Linux基础服务器搭建(一):DNS服务器

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,一、DNS简介DNS英文全称(Domain Name System)即域名系统,也称为域名服务器,将IP地址与域名进行映射,如此以来,就不用记住IP地址来访问服务器,从而通过域名来访问服务器,通常域名
千家信息网最后更新 2025年02月05日Linux基础服务器搭建(一):DNS服务器

一、DNS简介

DNS英文全称(Domain Name System)即域名系统,也称为域名服务器,将IP地址与域名进行映射,

如此以来,就不用记住IP地址来访问服务器,从而通过域名来访问服务器,通常域名比IP地址要好记。

Dns通常使用一个或多个集中式的服务器来实现,这些服务器具有一定的权威性,当客户端向DNS发起请求时,通常访问服务器的UDP协议53端口,如果该服务器没有权威解析,即无法解析用户请求域名,通常会向根域名服务器查询,查询到在向客户端返回解析结果

1.1 域名区域

在DNS服务器,如bind,所有信息都存储在基础数据元素称为资源记录(PR)。资源记录通常是完全限定域名(FQDN)主机,并解析成多个部分组成一个树状的层次结构。该层次结构由主干,主分支,次级分支,等组成。

如:

        www.baidu.com

在上面的示例域名中,分为三个部分,分别以" . " 分隔,

com是它的顶级域名,注册后无法修改

baidu是二级域名,注册后无法修改

www为主机名,这个可以自定义,就是说www可以改为你需要的字符串,如:ftp、mail、file等等

1.2 域名服务器类型

1.2.1 权威服务器(authoritative)

权威域名服务器的回答是它们区域部分资源记录,包括顶级域名和二级域名

1.2.2 递归服务器(Recursive)

递归域名服务器提供解析服务,但不解析区域,所有解析答案都被缓存在内存


二、安装bind(Berkeley Internet Name Domain)

2.1 安装

2.1.1 rhel/centos:

        yum install bind -y

2.1.2 debian/ubuntu:

        apt-get install bind


2.2 配置bind

2.2.,1 配置文件路径

bind安装后的服务名为named

文件路径描述

/etc/named.conf


/etc/named/


/var/named/

named主配置文件


包含配置文件的辅助目录


区域配置文件


2.2.2 编辑配置文件

2.2.2.1 配置文件有包含嵌套选项的语句集合组成有{}开闭,编辑时不能有语法错误否则无法启动 named服务

options {  allow-query       { localhost; }; #允许请求的主机/any代表所有  listen-on port    53 { 127.0.0.1; };    #监听地址和端口  listen-on-v6 port 53 { ::1; };  max-cache-size    256M; #/最大缓存  directory         "/var/named";    #区域文件目录  statistics-file   "/var/named/data/named_stats.txt";  recursion         yes;  dnssec-enable     yes;  dnssec-validation yes;};

2.2.2.2 加入自定义区域配置

[root@master ~]# cat /etc/named.conf//// named.conf//// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS// server as a caching only nameserver (as a localhost DNS resolver only).//// See /usr/share/doc/bind*/sample/ for example named configuration files.//options { //服务器的全局配置选项及一些默认设置listen-on port 53 { any; }; //监听端口,也可写为 { 127.0.0.1; 192.168.56.104; }#   listen-on-v6 port 53 { ::1; }; //对ip6支持directory   "/var/named"; //区域文件存储目录dump-file   "/var/named/data/cache_dump.db"; //dump cach的目录directorystatistics-file "/var/named/data/named_stats.txt";memstatistics-file "/var/named/data/named_mem_stats.txt";allow-query     { any; }; //指定允许进行查询的主机,当然是要所有的电脑都可以查啦recursion yes; //设置进行递归查询allow-transfer  { 192.168.56.105;}; //指定允许接受区域传送请求的主机,说明白一点就是辅dns的ipdnssec-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";};logging { //指定服务器日志记录的内容和日志信息来源channel default_debug {file "data/named.run";severity dynamic;};};zone "." IN {type hint;file "named.ca";};include "/etc/named.rfc1912.zones"; //包含文件,这里也就是载入/etc/named.rfc1912.zones#include "/etc/named.root.key";

2.2.2.3 编辑区域文件

$ORIGIN example.com.$TTL 86400@         IN  SOA  dns1.example.com.  hostmaster.example.com. (              2001062501  ; serial#序列号              21600       ; 刷新时间间隔              3600        ; 重试时间间隔              604800      ; expire after 1 week              86400 )     ; minimum TTL of 1 day;;          IN  NS     dns1.example.com.          IN  NS     dns2.example.com.dns1      IN  A      10.0.1.1 #A记录          IN  AAAA   aaaa:bbbb::1dns2      IN  A      10.0.1.2          IN  AAAA   aaaa:bbbb::2;;@         IN  MX     10  mail.example.com.          IN  MX     20  mail2.example.com.mail      IN  A      10.0.1.5          IN  AAAA   aaaa:bbbb::5mail2     IN  A      10.0.1.6          IN  AAAA   aaaa:bbbb::6;;; This sample zone file illustrates sharing the same IP addresses; for multiple services:;services  IN  A      10.0.1.10          IN  AAAA   aaaa:bbbb::10          IN  A      10.0.1.11          IN  AAAA   aaaa:bbbb::11ftp       IN  CNAME  services.example.com.www       IN  CNAME  services.example.com.;;

/etc/named.conf需加入:

zone "example.com" IN {  type master;  file "example.com.zone";  allow-update { none; };};

三、启动named服务

service named start


0