Linux (二十三)剖析DNS服务主从分离反向解析等部署方式
Posted 云来云去-起飞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux (二十三)剖析DNS服务主从分离反向解析等部署方式相关的知识,希望对你有一定的参考价值。
目录
4.1.通过rpm -qc bind命令查看服务配置文件,如图所示:
一、基础知识
1.1.BIND 域名服务基础
DNS系统的作用及类型
BIND的安装和配置文件
1.2.使用BIND构建域名服务器
构建缓存域名服务器
构建主、从域名服务器
二、DNS系统类型
2.1.缓存域名服务器
也称为DNS高速缓存服务器
通过向其他域名服务器查询获得域名-> ip 地址记录
将域名查询结果缓存到本地,提高重复查询时得速度
2.2.主域名服务器
特定DNS区域得权威服务器,具有唯一性
负载维护该区域内所有域名->IP地址的映射记录
需要自行建立所负责区域的地址数据文件
2.3.从域名服务器
也称为辅助域名服务器,是对主域名服务器的热备份
其维护的域名-> IP 地址记录来源于主域名服务器
需要从主域名服务器自动同步区域地址数据库
三、DNS系统的分布式数据结构
3.1.定义
FQDN :完全合格域名
3.2.格式
- FQDN=主机名+域名
- www--->为主机名
- baidu.com. ---->域名
- . --->根域 全球只有13台服务器
- .com--->顶级域
- .com.cn -->二级域
- xinlang.com.cn--->三级域
如图:
3.3.查询方式:
- 迭代查询
- 递归查询
3.4.查询过程:
1.客户端先查看自身的缓存,如果没有,则查找hosts ,如果有,则直接解析。
2.查找hosts中没有的,则去查找服务器,如果有,则解析。
3.在查找到DNS服务器时,查看自身服务器上的是否存在缓存,如果有,自己解析,当然如果域名对应的ip地址已经改变,将会无法访问,需要清空缓存,重新获取。
4.经历以上递归方式的查询后,如果没有解析到,需要进行迭代查询,DNS解析服务器向根域服务器发送请求,根域服务器发现是自己底下的管理域,便将地址发送给DNS解析服务器,
DNS解析服务器便给如.com .cn 的二级域服务器发送请求,二级域服务器发现sina 是自己管理的子域,便将子域的IP地址返回给DNS解析服务器,DNS解析服务器又开始向
子域发送请求,则子域服务器发现www为主机,则直接获取www 并返回给DNS服务器。
5.当DNS解析服务器接收子域服务器返回的主机地址,记录在缓存中,并返回给客户端,客户端先记录到缓存中,便开始访问。
四、安装bind
yum -y install bind
4.1.通过rpm -qc bind命令查看服务配置文件,如图所示:
注:/var/named/named.ca 配置的是根的13台服务器地址:如图
4.2.检查语法
五、DNS正向解析
5.1.概述
根据域名查找对应的IP地址
5.2.基础配置
第一步:修改/etc/named.conf
options {
listen-on port 53 { any; }; #修改为any
listen-on-v6 port 53 { ::1; };
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; }; #修改为any
第二步:修改/etc/named.rfc1912.zones 文件
view "lan" { # 设置视图
match-clients { 192.168.1.0/24; }; #设置允许访问的网段
zone "ky11.com" IN { #设置解析域名
type master; #设置节点为master
file "ky11.com.zone.lan"; #设置模型文件地址
};
zone "." IN {
type hint;
file "named.ca";
};
};
第三步:拷贝一份named.localhost 配置文件 并命名为ky11.com.zone.lan 和配置文件中对应
cp -a /var/named/named.localhost /var/named/ky11.com.zone.lan
第四步:设置ky11.com.zone.lan 文件 wwww 解析为httpd的服务文件
$TTL 600
@ IN SOA dns.cwlinux.com dnsadmin.cwlinux.com. (//SOA字段
2015031288 //版本号 同步一次 +1
1H //更新时间
2M // 更新失败,重试更新时间
2D // 更新失败多长时间后此DNS失效时间
1D //解析不到请求不予回复时间
)
IN NS dns //有两域名服务器
IN NS ns2
IN MX 10 mial // 定义邮件服务器,10指优先级 0-99 数字越小优先级越高
ns2 IN A 192.168.1.113 //ns2域名服务器的ip地址
dns IN A 192.168.1.10 //dns域名服务器的ip地址
mail IN A 192.168.1.111 //邮件服务器的ip地址
www IN A 192.168.1.112 //www.cwlinux.com的ip地址
pop IN CNAME mail //pop的正式名字是mail
ftp IN CNAME www //ftp的正式名字是www
六、DNS反向解析
6.1.概述
根据IP地址查找对应的域名
6.2.基础配置
第一步:修改/etc/named.rfc1912.zones
zone "1.168.192.in-addr.arpa" IN {
type master;
file "ky11.com.zone";
allow-update { none; };
};
第二步:修改/var/named/ky11.com.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
222 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.1.20
AAAA ::1
www A 192.168.1.21
100 PTR www.ky11.com
七、主从模式
7.1 主服务器配置
第一步:修改主服务器的/etc/named.rfc1912.zones
view "lan" {
match-clients { 192.168.1.0/24; };
zone "ky11.com" IN {
type master;
file "ky11.com.zone.lan";
also-notify { 192.168.1.22; }; #添加通知同步信息
allow-transfer { 192.168.1.22; }; #添加从服务器的IP
};
zone "." IN {
type hint;
file "named.ca";
};
};
7.2.从服务器配置
第二步:设置type 为slave ,设置备份文件路径 ,设置主节点ip
view "lan" {
match-clients { 192.168.1.0/24; };
zone "ky11.com" IN {
type slave; #type 设置为从 slave
file "slaves/ky11.com.zone.lan.slave"; #设置备份文件路径
masters { 192.168.1.20; };# 设置主节点IP
};
zone "." IN {
type hint;
file "named.ca";
};
};
八、分离解析
8.1.概述
分离解析为了方便内外网同时可以访问,内网中的一个服务,此时需要进行做分离解析。
8.2.思路
- 将DNS解析服务器设置为网关服务器。
- DNS解析服务器添加两个网卡,一个为内网使用,一个为外网使用。
- 设置DNS服务器视图配置
8.3.配置
8.3.1 设置网关服务器(DNS域名解析服务器)
第二步:设置en33网卡信息,此处不需要设置网关,由于此服务器为网关服务器
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.22
NETMASK=255.255.255.0
DNS1=114.114.114.114
第三步:设置en33网卡信息,此处不需要设置网关,由于此服务器为网关服务器
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
NAME=ens37
DEVICE=ens37
ONBOOT=yes
IPADDR=12.0.0.3
NETMASK=255.255.255.0
DNS1=114.114.114.11
第四步:设置/etc/named.conf
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { any; };
/*
- If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
- If you are building a RECURSIVE (caching) DNS server, you need to enable
recursion.
- If your recursive DNS server has a public IP address, you MUST enable access
control to limit queries to your legitimate users. Failing to do so will
cause your server to become part of large scale DNS amplification
attacks. Implementing BCP38 within your network would greatly
reduce such attack surface
*/
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.root.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
此处将zone进行删除,移到named.rfc1912.zones文件中。
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
第四步:设置/etc/named.rfc1912.zones文件
view "lan" {
match-clients { 192.168.1.0/24; };
zone "ky11.com" IN {
type slave;
file "slaves/ky11.com.zone.lan.slave";
masters { 192.168.1.20; };
};
zone "." IN {
type hint;
file "named.ca";
};
};
view "wan" {
match-clients { any; };
zone "ky11.com" IN {
type slave;
file "slaves/ky11.com.zone.wan.slave";
masters { 12.0.0.2; };
};
};
第五步:使用named.localhsot 覆盖并创建 /var/named/ky11.com.zone.lan 和 /var/named/ky11.com.zone.wan
第六步:配置/var/named/ky11.com.zone.lan
$TTL 1D
@ IN SOA @ rname.invalid. (
222 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.1.20
AAAA ::1
www A 192.168.1.21
第七步:/var/named/ky11.com.zone.wan
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 12.0.0.2
AAAA ::1
www A 12.0.0.2
8.3.2.配置web服务器
第一步:安装httpd服务
yum -y install http
第二步:设置网页
vim /var/www/html/index.html
第一个网页
:wq #退出保存
第三步:启动服务
systemctl start httpd
第四步:查看服务
netstat -antp | grep 80
8.3.3. 配置内网客户端
8.3.4 配置外网客户端
以上是关于Linux (二十三)剖析DNS服务主从分离反向解析等部署方式的主要内容,如果未能解决你的问题,请参考以下文章
linux DNS反向解析,缓存服务器,主从域名服务器和DNS分离解析
linux的DNS反向解析,DNS缓存服务器,DNS主从域名服务的设置,DNS的分离解析
Linux学习基础必备技能之DNS——反向解析缓存服务器主从服务器分离解析
linxu DNS域名反向解析缓存服务器主从服务器和同步分离解析