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. 初学 FSMC - 外扩SRAM(二)

    1. FSMC简介 ​ STM32F4系列芯片使用FSMC外设来管理扩展的存储器, FSMC是Flexible Static Memory Controller的缩写,译为灵活的静态存储控制器.它可以 ...

  2. 【Java面试题】Spring

    八.Spring 57)什么是 Spring 的依赖注入 IOC( Inversion of Control )的⼀个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象. 其中依赖注入(DI ...

  3. Android弹出UI界面---Toast

    1.默认展示 1 // 第一个参数:当前的上下文环境.可用getApplicationContext()或this 2 // 第二个参数:要显示的字符串.也可是R.string中字符串ID 3 // ...

  4. MySQL字符集和语言

    字符集和校对顺序   数据库表被用来存储和检索数据.不同的语言和字符集需要以不同的方式存储和检索.因此,MySQL需要适应不同的字符集(不同的字母和字符),适应不同的排序和检索数据的方法. 在讨论多种 ...

  5. NUMA 平台

    What is NUMA? This question can be answered from a couple of perspectives: the hardware view and the ...

  6. 深入探讨Java面试中内存泄漏:如何识别、预防和解决

    引言 在编写和维护Java应用程序时,内存泄漏是一个重要的问题,可能导致性能下降和不稳定性.本文将介绍内存泄漏的概念,为什么它在Java应用程序中如此重要,并明确本文的目标,即识别.预防和解决内存泄漏 ...

  7. OpenHarmony 技术日直播回顾丨共建新技术,开拓新领域

    4月25日,"共建新技术,开拓新领域"OpenAtom OpenHarmony(以下简称"OpenHarmony")技术日在深圳顺利召开.OpenHarmony ...

  8. 基于EtherNet/IP实现欧姆龙NX系列PLC通信

    1.引言 工业以太网协议 (Ethernet/IP) 是由ODVA所开发并得到了罗克韦尔自动化的强大支持.它使用已用于ControlNet和DeviceNet的控制和信息协议 (CIP) 为应用层协议 ...

  9. 插入排序的基本实现【数据结构与算法—TypeScript 实现】

    笔记整理自 coderwhy 『TypeScript 高阶数据结构与算法』课程 概念 本质:将数列分为已排序和未排序,将未排序中的元素插入到已排序中的合适位置 特性 复杂度分析 时间复杂度: 最好情况 ...

  10. 重新点亮shell————什么是shell[一]

    前言 这里简介一下什么是shell. 写linux和shell 系列是为了后面的docker 系列的整理,本来想直接整理k8s的,但是呢,想想docker 系列整理完了的话,那么整理k8s系列就没有那 ...