1.搭建基本DNS服务器
pc7:
1.1 安装软件包
]# yum -y install bind-chroot bind
bind         //域名服务包
bind-chroot  //提供虚拟根支持,牢笼政策
1.2 修改配置文件
]# cp -p /etc/named.conf /etc/named.conf.bak
]# vim /etc/named.conf
options {
directory  "/var/named"; #指定地址库文件存放位置
};
zone "baidu.cn" IN {         #指定本机负责解析的域名
type master;           #指定主DNS服务器
file "baidu.com.zone"; #指定创建地址库文件名称
};
 
1.3 建立相应的地址库文件(保证named用户具备读取权限)
] # cd /var/named/
] # cp -p named.localhost baidu.com.zone  #权限不变拷贝
所有的域名都必须以点最为结尾
如果没有以点结尾,默认补全地址库负责的域名
]# vim /var/named/baidu.com.zone
...
                     3H )    ; minimum
baidu.com.             NS pc7.baidu.com.
pc7.baidu.com.      A  192.168.4.7
www.baidu.com.    A  1.1.1.1
ftp.baidu.com.       A  2.2.2.2
1.4 重起named服务
]# systemctl restart named
客户端验证 pc8      
1.1 指定DNS服务器地址        
]# echo  nameserver 192.168.4.7 > /etc/resolv.conf 
 
]# nslookup  www.baidu.cn
Server:      192.168.4.7
Address: 192.168.4.7#53
Name: www.baidu.com
Address: 1.1.1.1
 
]# nslookup  ftp.baidu.cn
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: ftp.baidu.com
Address: 2.2.2.2
 
######################
 
2.多区域的DNS服务器
2.1.修改配置文件
]# vim /etc/named.conf 
........
zone "qq.com" IN {
        type master;
        file "qq.com.zone";
};
2.建立地址库文件/var/named/qq.com.zone
]# cd /var/named/
]# cp -p baidu.com.zone qq.com.zone
]# vim qq.com.zone 
...                  3H )    ; minimum
qq.com.            NS pc7.qq.com.
pc7.qq.com.     A  192.168.4.7
www.qq.com.   A  3.3.3.3
ftp.qq.com.      A  4.4.4.4
3.重起named服务
]# systemctl restart named
pc8测试:
]# nslookup www.qq.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.qq.com
Address: 3.3.3.3
 
]# nslookup ftp.qq.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: ftp.qq.com
Address: 4.4.4.4
 
####################
 
3.DNS轮询
• 基于DNS的站点负载均衡
– 一个域名 ---> 多个不同IP地址
– 每个IP提供镜像服务内容
]# vim /var/named/baidu.com.zone
...
www.baidu.com.  A 1.1.1.1
www.baidu.com.  A 1.1.1.2
www.baidu.com.  A 1.1.1.3
www.baidu.com.  A 1.1.1.4
www.baidu.com.  A 1.1.1.5
www.baidu.com.  A 1.1.1.6
...
]# systemctl restart named
pc8验证:
]# nslookup  wwww.baidu.com
 
########################
 
4.泛域名解析
]# vim /var/named/baidu.com.zone
...
*  A  1.2.3.4
pc8验证:
]# nslookup  xxx.baidu.com
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: xxx.baidu.com
Address: 1.2.3.4
 
######################
 
5.有规律泛域名解析
]# vim /var/named/baidu.com.zone
...
$GENERATE 1-50 p$.baidu.com.   A  192.168.10.$
]# systemctl restart named
pc8验证:
]# nslookup  p49.tedu.cn
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: p49.baidu.com
Address: 192.168.10.49
 
#####################
 
6.解析记录别名CNAME
]# vim /var/named/baidu.com.zone 
ftp.baidu.com.   A            2.2.2.2
tts                      CNAME  ftp
]# systemctl restart named
pc8验证:
]# nslookup  tts.tedu.cn
Server: 192.168.4.7
Address: 192.168.4.7#53
tts.baidu.com canonical name = ftp.baidu.com.
Name: ftp.baidu.com
Address: 2.2.2.2
 
#######################
7.DNS子域授权
  父域:www.qq.com
  子域:www.bj.qq.com
  虚拟机A负责解析,父域的qq.com
  虚拟机B负责解析,子域的bj.qq.com
pc8:
7.1 pc8配置:
]# yum -y install bind-chroot bind
]# vim /etc/named.conf 
 
options {
  directory  "/var/named";
};
zone "bj.qq.com" IN {
     type master;
     file "bj.qq.com.zone";
};
 
]# cd /var/named/
]# cp -p named.localhost bj.qq.com.zone
]# vim bj.qq.com.zone
...              3H )    ; minimum
bj.qq.com.      NS pc8
pc8.bj.qq.com.  A  192.168.4.8
www.bj.qq.com.  A  100.100.100.100
]# systemctl restart named
测试:
]# nslookup www.bj.qq.com 192.168.4.8
Server: 192.168.4.8
Address: 192.168.4.8#53
Name: www.bj.qq.com
Address: 100.100.100.100
子域授权
]# vim /var/named/qq.com.zone
qq.com.              NS  pc7.qq.com.
bj.qq.com.          NS  pc8.bj.qq.com.
pc7.qq.com.       A   192.168.4.7
pc8.bj.qq.com.   A   192.168.4.8
...
]# systemctl restart named
 
pc8验证:
]# nslookup www.bj.qq.com 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Non-authoritative answer:
Name: www.bj.qq.com
Address: 100.100.100.100
 
#####################
递归解析:
    客户端请求DNS域名解析,首选DNS服务器与其他DNS服务器交互,最终将解析结果反馈给客户端
迭代解析:
    客户端请求DNS域名解析,首选DNS服务器与其他DNS服务器交互过程
 
options {
        directory       "/var/named";
        recursion yes;   #支持递归解析:
};
 
关闭递归解析:
options  {
          directory       "/var/named";
          recursion  no;
 };
 
专用于DNS查询过程查看
]# dig  www.bj.qq.com  192.168.4.7
###########################
 
/etc/hosts 主机名映射记录文件 
作用:直接达到DNS解析功能,只为本机提供解析
 
pc8:
]# ping www.360.com 
connect: 网络不可达
]# vim /etc/hosts
...
192.168.4.110 www.360.com
]# ping www.360.com
PING www.360.com (192.168.4.110) 56(84) bytes of data.
 
客户端解析域名优先级:
  1./etc/hosts
  2./etc/resolv.conf
  3.交由本机127.0.0.1:53处理
########################
 
8.缓存DNS服务器
   作用:缓存解析结果,进行加速解析
解析记录来源
• 方式1:全局转发
– 将请求转发给指定的公共DNS(其他缓存DNS),请求递归服务
选择一个稳定的主机:
]# vim /etc/named.conf(先备份)
options {
    directory       "/var/named";
    forwarders  {  xx.xx.xx.xx;  };  #转发给真DNS服务器
 };
]# systemctl restart named
pc8验证:
]# nslookup www.baidu.com xx.xx.xx.xx
 
########################
 
9.DNS分离解析
什么是分离解析
• 当收到客户机的DNS查询请求的时候
– 能够区分客户机的来源地址
– 为不同类别的客户机提供不同的解析结果(IP地址)
– 不同类别的客户机,解析同样的域名,结果不同
– 作用:为客户端提供最近的资源   
 
典型适用场景
• 访问压力大的网站,购买CDN提供的内容分发服务
– 在全国各地/不同网络内部署大量镜像服务节点
– 针对不同的客户机就近提供服务器
view  "nsd"  {
    match-clients  { 192.168.4.100; };
    zone  "sina.com"  IN  {
        type master;
        file "sina.com.zone";
           };
      };
 
view  "other"  {
    match-clients  { any; };
    zone  "sina.com"  IN  {
        type master;
        file "sina.com.other";
           };
      };
 
– A记录分离解析 —— 以 www.baidu.com 为例
客户机来自 解析结果
       192.168.4.7 ---------> 192.168.4.100
       其他地址 ---------> 7.7.7.7
 
– A记录分离解析 —— 以 www.sina.com为例
客户机来自 解析结果
       192.168.4.7 ---------> 192.168.4.120
       其他地址 ---------> 8.8.8.8
pc7:
9.1 /etc/named.conf
]# vim /etc/named.conf
options {
        directory       "/var/named";
};
acl test  { 192.168.4.7; };
view  "nsd"  {      #nsd不是关键,match-clients才是
     match-clients   {   test;   };
     zone   "baidu.com"  IN   {
        type    master;
        file    "baidu.com.zone";
        };
     zone "sina.com" IN {
        type master;
        file "sina.com.zone";
        };
 };
view   "other"   {
    match-clients   {   any;   };
    zone  "baidu.com"  IN  {
    type  master;
    file  "baidu.com.other";
        };
    zone "sina.com" IN {
          type master;
          file "sina.com.other";
        };
 };
9.2 baidu.com.zone
...
www.baidu.com.   A  192.168.4.100
...
9.3 baidu.com.other
...
www.baidu.com.   A  7.7.7.7
...
9.4 sina.com.zone
...
www.sina.com.    A  192.168.4.120
...
9.5 sina.com.other
...
www.sina.com.    A  8.8.8.8
...
9.6 重启
# systemctl restart named
9.7 不同机器检测:
pc7:
# nslookup www.baidu.com 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.baidu.com
Address: 192.168.4.100
 
]# nslookup www.sina.com 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.sina.com
Address: 192.168.4.120
 
pc8:
]# nslookup www.baidu.com 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.baidu.com
Address: 7.7.7.7
 
]# nslookup www.sina.com 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Name: www.sina.com
Address: 8.8.8.8

十五.DNS子域授权、分离解析、缓存DNS服务器的更多相关文章

  1. linux dns子域授权 split分离解析 缓存dns服务器

    DNS子域授权作用:适用于同一个DNS组织父/子域名的解析工作由不同的dns服务器负责父dns服务器应该有为子域名迭代的能力 上下级区域属于不同的机构管理:.cn与.Anonymous.cn.cn需要 ...

  2. Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS

    一.搭建单区域DNS服务器 目标: 本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站.测试阶段主要提供以下正向记录: svr7.tedu.cn ---> ...

  3. DNS子域授权

    DNS子域授权 当一个域很大时,而且还有上,下层关系,如果所有的记录变更都由某一台服务器来管理的话,那将会是什么样子?就好比一个公司的总经理直接管理公司1000个人的所有事项,恐怕会被累死.所以会在总 ...

  4. DNS域名解析之分离解析

    分离解析配置 1.为网关服务器配置双网卡 , 在关机状态下再添加一块网卡,重启系统 ifconfig ens36 12.0.0.1/24 ifconfig 2.安装bind软件包 yum instal ...

  5. DNS子域授权,区域传送

    dig 命令 +recurse  递归查询 默认    +norecurse 不递归查询 dig +recurse  -t A   www.baidu.com @127.0.0.1 dig  -t a ...

  6. DNS子域授权与转发配置

    正向区域SUB_ZONE_NAME IN NS NSSERVER_SUB_ZONE_NAME NSSERVER_SUB_ZONE_NAME IN A IP .com xingxing.com. xin ...

  7. 【.NET Core项目实战-统一认证平台】第十五章 网关篇-使用二级缓存提升性能

    [.NET Core项目实战-统一认证平台]开篇及目录索引 一.背景 首先说声抱歉,可能是因为假期综合症(其实就是因为懒哈)的原因,已经很长时间没更新博客了,现在也调整的差不多了,准备还是以每周1-2 ...

  8. 第十五章(附)分布式缓存-Memcached

    一.概念 Memcached是danga.com(运营LiveJournal的技术团队)开发的一套分布式内存对象缓存系统,用于在动态系统中减少数据库负载,提升性能. 二.适用场合 1.分布式应用.由于 ...

  9. 学习Spring Boot:(二十五)使用 Redis 实现数据缓存

    前言 由于 Ehcache 存在于单个 java 程序的进程中,无法满足多个程序分布式的情况,需要将多个服务器的缓存集中起来进行管理,需要一个缓存的寄存器,这里使用的是 Redis. 正文 当应用程序 ...

随机推荐

  1. python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)

    11.4 JavaScript 11.41 变量 1.声明变量的语法 // 1. 先声明后定义 var name; // 声明变量时无需指定类型,变量name可以接受任意类型 name= " ...

  2. python学习-54 正则表达式2

    re模块 之分组 >>> import re >>> re.findall("ab|c","sdfab|csdf") ['a ...

  3. 【HC89S003F4开发板】 7ASM&C混合编程

    HC89S003F4开发板ASM&C混合编程 一.前言 在配套资料里有实现ASM&C混合编程的说明文档,这里来实现这个功能. 二.实现ASM&C混合编程 1.打开 Keil 工 ...

  4. 二十四、V4L2框架主要结构体分析和虚拟摄像头驱动编写

    一.V4L2框架主要结构体分析 V4L2(video for linux version 2),是内核中视频设备的驱动框架,为上层访问视频设备提供统一接口. V4L2整体框架如下图: 图中主要包括两层 ...

  5. Python开发【第二章】:数据类型

    基本数据类型 一.整型 如: 18.73.84 整型具备如下功能: class int(object): """ int(x=0) -> int or long i ...

  6. 使用babel es6 转 es5

    安装 //Webpack 接入 Babel 必须依赖的模块 npm i -D babel-core babel-loader //preset,告诉babel编译的文件中用到了哪些语法env包含当前所 ...

  7. ubuntu下使用eclipse调试jni无法获取环境变量,本地库(java.library.path,LD_LIBRARY_PATH)等问题的解决。

    首先要把本地库全部配置到LD_LIBRARY_PATH中. 然后一定要采用命令行方式启动eclipse(也可以写一个启动shell,通过桌面启动器打开这个shell),这样环境变量才会有效. 打开终端 ...

  8. Python之特征工程-3

    一.什么是特征工程?其实也是数据处理的一种方式,和前面的原始数据不一样的是,我们在原始数据的基础上面,通过提取有效特征,来预测目标值.而想要更好的去得出结果,包括前面使用的数据处理中数据特征提取,新增 ...

  9. python多线程爬取斗图啦数据

    python多线程爬取斗图啦网的表情数据 使用到的技术点 requests请求库 re 正则表达式 pyquery解析库,python实现的jquery threading 线程 queue 队列 ' ...

  10. 剑指offer-树相关

    树相关 1.重建二叉树 class Solution { public: TreeNode* reConstructBinaryTree(vector<int> pre,vector< ...