DNS简介

DNS(Domain Name System)域名系统:

是一种采用客户端/服务器机制,负责实现计算机名称与IP地址转换的系统。DNS作为一种重要的网络服务,既是国际互联网工作的基础,同时在企业内部网络中也得到了广泛地应用。

DNS服务器的作用

正向解析:根据主机名称(域名)查找对应的IP地址

反向解析:根据IP地址查找对应的主机域名

DNS系统的分布式数据结构

DNS查询方式

递归查询:大多数客户机向DNS服务器解析域名的方式

迭代查询:大多数DNS服务器向其他DNS服务器解析域名的方式

DNS服务器的类型

缓存域名服务器
缓存域名服务器:也称唯高速缓存服务器,通过向其他域名服务器查询获得域名
->
IP地址记录,将域名查询结果缓存到本地,提高重复查询时的速度。

主域名服务器
主域名服务器:特定DNS区域的官方服务器,具有唯一性,负责维护该区域内所有域名
->
IP地址的映射记录。

从域名服务器
从域名服务器:也称为辅助域名服务器,其维护的域名
->
IP地址记录来源于主域名服务器。

BIND域名服务基础

BIND(Berkeley Internet Name Daemon)伯克利Internet域名服务。

官方站点:https://www.isc.org/

BIND服务器端程序

主要执行程序:/usr/sbin/named

服务脚本:/etc/init.d/named

默认监听端口:53

主配置文件:/etc/named.conf

保存DNS解析记录的数据文件位于:/var/named/chroot/var/named/

配置文件分析

/etc/named.conf
options {
#选项
listen-
on
port
53
{
127.0
.
0.1
; };
#服务监听端口为53
listen-
on
-v6 port
53
{ ::
1
; };
#服务监听端口为53(ipv6)
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; };
#允许连接的客户机
recursion yes;
#递归查找

dnssec-enable yes;
#DNS加密
dnssec-validation yes;
#DNS加密高级算法
dnssec-lookaside auto;
#DNS加密的相关东西

/* Path to ISC DLV key */

bindkeys-
file"/etc/named.iscdlv.key"
;
#加密用的key(私钥公钥的加密,很强)
};


logging {
#日志
channel default_debug {

file"data/named.run"
;
#运行状态文件
severity dynamic;
#静态服务器地址(根域)
};

};


zone
"."
IN {
#根域解析
type hint; master slave

file"named.ca"
;
#根域配置文件
};


include"/etc/named.rfc1912.zones"
;
#扩展配置文件(新开域名)

/etc/named.rfc1912.zones
zone
"localhost.localdomain"
IN {
#本地主机全名解析
type
master;
#类型为主域
file
"named.localhost"
;
#域配置文件(文件存放在/var/named目录中)
allow-update { none; };
#不允许客户端更新
};


zone
"localhost"
IN {
#本地主机名解析
type
master;

file
"named.localhost"
;

allow-update { none; };

};


zone
".0.ip4.arpa"
IN {
#ipv6本地地址反向解析
type
master;

file
"named.loopback"
;

allow-update { none; };

};


zone
"1.0.0.127.in-addr.arpa"
IN {
#本地地址反向解析
type
master;

file
"named.loopback"
;

allow-update { none; };

};


zone
"0.in-addr.arpa"
IN {
#本地全网地址反向解析(和/域更新用的)
type
master;

file
"named.empty"
;

allow-update { none; };

};

/var/named/named.localhost
$TTL
1D #更新为最长
1

@(使用域的域名)INSOA(权威DNS服务器)@(权威DNS服务器的名称)
rname.invalid.(rname
@invalid的邮件)
(

0
; serial #(更改号)十位数的序列号

1D ; 更新频率

1H ; 失败重新尝试时间

1W ; 失效时间

3H ) ; 缓存时间

NS(域名服务器)@(域名服务器名称)
A(正向解析记录)127.0
.
0.1
(正向解析的ip)

AAAA(ipv6正向解析)
::
1
(ipv6正向解析的ip)

搭建DNS服务器

安装DNS服务器
安装bind程序包
yum install
bind

启动服务
systemctl
start
named.service

设置自启动状态
systemctl
enable
named.service

配置文件
配置主配置文件
vim /etc/named.conf


改动为

listen-on-v6 port
53
{ any; };


allow-query { any; };

配置zones文件
正向解析配置
添加 正向解析

zone
"lzy.com."
IN {

typemaster
;

file
"lzy.com.zone"
;

allow
-update
{ none; };

};

反向解析配置
添加反向解析

zone
"134.168.192.in-addr.arpa"
IN {

tpye master;

file
"134.168.192.zone"
;

allow-update { none
; };
};

配置区域配置文件
复制文件
cp
/var/named/named.empty /var/named/lzy.com.zone

cp
/var/named/named.empty /var/named/134.192.168.zone

修改权限
chown
:named zlt.com.zone

正向解析配置
为excesoft
.
com域名设计正向解析,将/var/named/named
.
empty复制重命名为excesoft
.
com
.
zone,

修改文件属组为named,并对其内容进行修改


$TTL
3H
@
IN
SOA lzy
.
com. root
.
lzy
.
com. (

0; serial
1D; refresh
1H; retry
1W
; expire
3H
)
; minimum
NS dns
.
lzy
.
com.

dns A
192.168.134.139
www A
192.168.134.139
反向解析配置
为excesoft.com域名设计反向解析,将/
var
/named/named.
empty
复制重命名为
137.168
.
192
.zone,修

改文件属组为named,并对其内容进行修改。


配置网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33


BOOTPROTO=static

IPADDR1=192.168.134.139

NETMASK=255.255.255.0

GATEWAY=192.168.134.2

DNS1=192.168.134.139

启动DNS服务器
systemctl
start
named.service

检查配置文件
named-checkconf

配置客户端
修改配置文件
修改配置文件:
#vim /etc/resolv.conf。
写入以下内容:

excesoft.

nameserver 192.168.137.22

测试DNS服务器
测试DNS服务器

在客户端计算机上使用命令 nslookup进行测试。
链接:https://www.cnblogs.com/yanlzy/p/11918018.html
(版权归原作者所有,侵删)
继续阅读
阅读原文