1. DNS子域

子域即为主域下的一个子域名,当一个子域的流量过大时,主域的DNS服务器可以把一个子域的查询授权给一台专门的子域服务器,称为子域授权或子域委派。

1.1 子域授权环境说明

  • 父域:xuzhichao.com

    • 主DNS服务器:主机名:dns01;地址:192.168.20.70;
    • 从DNS服务器:主机名:dns02;地址:192.168.20.71;
  • 子域:linux.xuzhichao.com
    • DNS服务器:主机名:dns-son;地址:192.168.20.72;

1.2 子域授权实现

1.2.1 主域DNS服务器配置

  • 主域的主从DNS数据解析文件保持一致,以主DNS配置文件进行说明:

    [root@dns01 named]# cat /etc/named.conf
    options {
    listen-on port 53 { localhost; };
    listen-on-v6 port 53 { localhost; };
    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; };
    recursion yes;
    allow-recursion { 192.168.20.0/24; 192.168.50.0/24; }; allow-transfer {192.168.20.71;};
    also-notify {192.168.20.71;}; dnssec-enable yes;
    dnssec-validation yes;
    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 "." IN {
    type hint;
    file "named.ca";
    }; include "/etc/named.rfc1912.zones";
    include "/etc/named.root.key";
    include "/etc/named.xuzhichao.com.zone"; #区域配置文件
    [root@dns01 named]# cat /etc/named.xuzhichao.com.zone
    zone "xuzhichao.com" IN {
    type master;
    file "xuzhichao.com.zone";
    notify yes; <==允许本区域数据解析文件进行通告
    }; zone "20.168.192.in-addr.arpa" IN {
    type master;
    file "20.168.192.in-addr.arpa.zone";
    notify yes; <==允许本区域数据解析文件进行通告
    };
  • 主DNS的区域数据库解析文件如下:

    [root@dns01 named]# cat /var/named/xuzhichao.com.zone
    $TTL 86400 xuzhichao.com. IN SOA ns1.xuzhichao.com. mail.xuzhichao.com. (
    2021071603
    10800
    900
    604800
    86400
    ) xuzhichao.com. IN NS ns1.xuzhichao.com.
    xuzhichao.com. IN NS ns2.xuzhichao.com. ns1 IN A 192.168.20.70
    ns2 IN A 192.168.20.71 ;业务域 xuzhichao.com. IN MX 10 mx1.xuzhichao.com.
    mx1 IN A 192.168.20.11 www.xuzhichao.com. IN A 192.168.20.31
    www.xuzhichao.com. IN A 192.168.20.32 web.xuzhichao.com. IN CNAME www.xuzhichao.com. ;主机域 nginx02.xuzhichao.com. IN A 192.168.20.22
    ngxin03.xuzhichao.com. IN A 192.168.20.23 nginx-lb01.xuzhichao.com. IN A 192.168.20.19
    nginx-lb02.xuzhichao.com. IN A 192.168.20.20 apache01.xuzhichao.com. IN A 192.168.20.21 lvs01.xuzhichao.com. IN A 192.168.20.31
    lvs02.xuzhichao.com. IN A 192.168.20.32 mysql01.xuzhichao.com. IN A 192.168.20.50 redis01.xuzhichao.com. IN A 192.168.20.61 nfs01.xuzhichao.com. IN A 192.168.20.30 dns01.xuzhichao.com. IN A 192.168.20.70
    dns02.xuzhichao.com. IN A 192.168.20.71 #子域授权相关配置,如果子域也存在主从DNS服务器,则需要写两条ns记录,指向子域的主从DNS。
    ;子域授权
    linux.xuzhichao.com. IN NS ns1.linux.xuzhichao.com.
    ;linux.xuzhichao.com. IN NS ns2.linux.xuzhichao.com. ns1.linux.xuzhichao.com. IN A 192.168.20.72
    ;ns2.linux.xuzhichao.com. IN A 192.168.20.73
  • 重启bind服务:

    #检查配置文件:
    [root@dns01 named]# named-checkconf
    [root@dns01 named]# named-checkzone xuzhichao.com /var/named/xuzhichao.com.zone
    zone xuzhichao.com/IN: linux.xuzhichao.com/NS 'ns1.linux.xuzhichao.com' (out of zone) has no addresses records (A or AAAA) <==忽略报错;
    zone xuzhichao.com/IN: loaded serial 2021071603
    OK #重启bind服务:
    [root@dns01 named]# rndc reload
    server reload successful

1.2.2 子域DNS服务器配置

  • 子域DNS配置配置文件:

    [root@dns-son ~]# cat /etc/named.conf
    options {
    listen-on port 53 { localhost; };
    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; };
    recursion yes;
    dnssec-enable yes;
    dnssec-validation yes; 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 "." IN {
    type hint;
    file "named.ca";
    }; zone "linux.xuzhichao.com" IN { <==新增区域配置段
    type master;
    file "linux.xuzhichao.com.zone";
    }; include "/etc/named.rfc1912.zones";
    include "/etc/named.root.key";
  • 子域DNS区域数据库解析文件:

    [root@dns-son ~]# cat /var/named/linux.xuzhichao.com.zone
    $TTL 86400 @ IN SOA ns1.linux.xuzhichao.com. mail.linux.xuzhichao.com. (
    2021071603
    10800
    900
    604800
    86400
    ) @ IN NS ns1.linux.xuzhichao.com.
    ns1 IN A 192.168.20.72 @ IN MX 10 mail.linux.xuzhichao.com.
    mail IN A 192.168.20.11 www IN A 1.1.1.1
    web IN CNAME www db01 IN A 2.2.2.2
  • 启动bind服务:

    [root@dns-son ~]# named-checkconf
    [root@dns-son ~]# named-checkzone linux.xuzhichao.com /var/named/linux.xuzhichao.com.zone
    zone linux.xuzhichao.com/IN: loaded serial 2021071603
    OK
    [root@dns-son ~]# systemctl start named.service
  • 客户端测试:

    [root@xuzhichao ~]# dig www.linux.xuzhichao.com @192.168.20.72 +short
    1.1.1.1
    [root@xuzhichao ~]# dig web.linux.xuzhichao.com @192.168.20.72 +short
    www.linux.xuzhichao.com.
    1.1.1.1
    [root@xuzhichao ~]# dig db01.linux.xuzhichao.com @192.168.20.72 +short
    2.2.2.2

1.3 DNS转发域

1.3.1 DNS转发域概述

  • 以上场景中子域存在问题:

    由于父域与子域互相维护不同的区域配置,它们之间并不存在任何的联系,所以子域在解析父域的域名时,它并不会直接通过父域来获取权威的解析记录,而是按照以下步骤查询:

    • 第一步:它会先找顶点根域;
    • 第二步:寻找找 com 域对应的 DNS 服务器;
    • 第三步:寻找 xuzhichao.com 域对应的 DNS 服务器,而后获取对应的解析记录;

    这种查找模式是由 DNS 的机制所决定的;

    解决的方法:明确告诉子域,让其能找到父域进项查询解析,而无需查找根域;(需要配置 DNS 的转发)

  • 转发域

    转发指的是将域名查询请求,转至某一台服务器解析(被转发的服务器必须允许为当前服务器做递归)。

1.3.2 转发域的分类

  • 转发分为两类,全局转发和区域转发

    • 全局转发

      对非本机所负责解析区域的请求,全转发给指定的服务器。

      配置格式为

      #直接放在/etc/namd.conf文件中
      Options {
      forward first|only; <==first表示转发服务器如果得不到结果会自己去互联网进行迭代查询,only表示只是转发请求,得到得不到结果不关心
      forwarders { ip;}; <==表示转发给谁,可以由多台
      };
    • 区域转发

      仅转发对特定的区域的请求,比如,只转发xuzhichao.com域的请求,其它的不管,比全局转发优先级高。

      设置格式为:(需要放在具体的域中)

      zone "ZONE_NAME" IN {
      type forward;
      forward first|only;
      forwarders { ip;};
      };

1.3.3 DNS转发域实现

  • 在子域的DNS服务器上增加父域转发的配置文件:

    [root@dns-son ~]# cat /etc/named.conf
    zone "xuzhichao.com" IN {
    type forward;
    forward only;
    forwarders { 192.168.20.70; 192.168.20.71; };
    }; [root@dns-son ~]# rndc reload
    server reload successful
  • 客户端使用子域服务器解析父域的域名:

    [root@xuzhichao ~]# dig www.xuzhichao.com @192.168.20.72 +short
    192.168.20.32
    192.168.20.31

DNS(6) -- DNS子域实现的更多相关文章

  1. DNS主从服务,子域授权,view视图,日志系统,压力测试

    DNS主从服务,子域授权,view视图,日志系统,压力测试 DNS性能测试工具queryperfDNS查询过程: DNS主从建立: 环境: 主服务器:10.140.165.93 从服务器:10.140 ...

  2. Linux系统下搭建DNS服务器——DNS原理总结

    2017-01-07 整理 DNS原理 域名到IP地址的解析过程 IP地址到域名的反向域名解析过程 抓包分析DNS报文和具体解析过程 DNS服务器搭建和配置 这个东东也是今年博主参见校招的时候被很多公 ...

  3. DNS劫持 DNS污染

    编号:1021时间:2016年6月24日17:23:50功能:DNS劫持 DNS污染URL:http://www.itechzero.com/dns-hijacking-dns-pollution-i ...

  4. DNS及DNS有什么作用

    什么是DNS,DNS有什么作用: DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直 ...

  5. DNS主从复制及子域(三)

    主从DNS 主辅DNS服务器数据同步的过程,首先master DNS服务器每 次修改完成并重启服务后,将传送notify给所有的Slave DNS服务器. Slave DNS服务器将查询Master服 ...

  6. DNS笔记 DNS区域集成到 Active Directory

    可以将 DNS 区域集成到 Active Directory 中以提供增强的容错功能和安全性.OpenDNS   Google Public DNS往返时间 (RTT) 远程访问服务 (RAS)域名与 ...

  7. DNS系列—DNS简介

    DNS是什么? 如果了解互联网主机之间是用IP地址来进行通信的话,有了这个认识的前提,我们来聊一下什么是DNS.一个IP地址有十几个字符那么长,和手机号码长度差不多,我们怎么记住这些我们想要访问的主机 ...

  8. DNS与DNS劫持原理、IP、域名、服务器访问浅讲

    我们都知道,平常我们所访问的网站,都是与服务器进行数据交互的.但是,浏览器和服务器是分处于不同的计算机上的,那他们是怎样进行通信的呢?今天,我们就来粗浅地聊一聊.不涉及很深的技术原理,只讲大概的流程. ...

  9. DNS(三)DNS SEC(域名系统安全扩展)

    工作需要今天了解了下DNS SEC,现把相关内容整理如下: 一.DNS SEC 简介 域名系统安全扩展(英语:Domain Name System Security Extensions,缩写为DNS ...

  10. LINUX中的DNS服务---DNS集群

    一.DNS集群的理解 在使用DNS的时候,为了缓解服务器的压力,会使用多个辅助DNS服务器来分担主DNS的工作.这些DNS就叫做DNS集群. 二.配置过程 1)在辅DNS中操作如下:(主机号为172. ...

随机推荐

  1. 【已解决】Hadoop_03 解决Hadoop输入jps没有NameNode的问题

    问题描述: 解决方案: 1.先运行 stop-all.sh 2.格式化 namdenode(在这之前要先删除原目录,即core-site.xml下配置的<name>hadoop.tmp.d ...

  2. AtCoder Beginner Contest 220

    传送门 A.B.C.D.F比较简单,没必要写出来 E - Distance on Large Perfect Binary Tree 题目 问一个深度为 \(n\)的满二叉树有多少个点对的距离恰好为 ...

  3. #正余弦定理#牛客练习赛71 B 烙印

    题目 将三角形的六要素只留下三个已知条件, 问有多少种情况,多组询问 分析 首先分类讨论一下(对新高一不友好,比如说我). 前置知识: 正弦定理: \[\frac{a}{sinA}=\frac{b}{ ...

  4. 解锁OpenHarmony技术日!年度盛会,即将揭幕!

    OpenHarmony技术日 即将揭幕!4月25日(星期一)09:00-18:00与你惊喜相约!     扫码直达   共建新技术.开拓新领域 OpenHarmony 工作委员会+7 家单位共同发起 ...

  5. Go 语言注释教程

    注释是在执行时被忽略的文本.注释可用于解释代码,使其更易读.注释还可用于在测试替代代码时防止代码执行.Go支持单行或多行注释. Go单行注释 单行注释以两个正斜杠(//)开头. 在//和行尾之间的任何 ...

  6. Linux获取摄像头VID,PID的两种方式

    第一种方式,是直接查询设备的vid.pid文件,来获取vid,pid 第二种方式,是查询设备信息,自己去解析对应的vid和pid 正常情况下,第一种方式就可以了,但是今天遇到一个ARM架构的kylin ...

  7. openGauss基于4路鲲鹏服务器的性能调优

    1.概述 本文主要描述了在4路鲲鹏服务器上,通过软硬件协同优化配置达到openGauss数据库的极致性能的方法. 主要包括软硬件要求.BIOS配置.网卡配置.磁盘配置.服务器参数设置.数据库参数配置. ...

  8. TensorRT C# API 项目更新 (1):支持动态Bath输入模型推理

    1. 项目介绍    NVIDIA TensorRT 是一款用于高性能深度学习推理的 SDK,包括深度学习推理优化器和运行时,可为推理应用程序提供低延迟和高吞吐量.基于 NVIDIA TensorRT ...

  9. 【2021.6.26 NOI模拟】Problem B. 简单题 another solution

    Problem Description Input 从文件 b.in 中读入数据. 一个正整数 n. Output 输出到文件 b.out 中. 一个整数表示答案. Sample Data Input ...

  10. Oracle 在PL/SQL将字符串分割输出

    Oracle 在PL/SQL将字符串分割输出 示例如下: declare begin for maina in (select tt.line ll from (select regexp_subst ...