DNS解析的作用
• 为什么需要DNS系统
– www.baidu.com 与 119.75.217.56,哪个更好记?
– 互联网中的114查号台/导航员

• DNS服务器的功能
– 正向解析:根据注册的域名查找其对应的IP地址
– 反向解析:根据IP地址查找对应的注册域名,不常用

所有域名都必须以 “.” 结尾   根域

“.”  根域
 
    .com  .cn   .us    .kr   .hk   .tw

.com.cn    .edu.cn    .org.cn

.sina.com.cn  
   
    主机名:www.sina.com.cn   tts.sina.com.cn

• Full Qualified Domain Name,完全合格主机名
   – = 站点名.域名后缀
   – = 站点名. .. .. .二级域.一级域

###################################################

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

– 官方站点:https://www.isc.org/
[root@svr7 ~]# yum -y install bind-chroot bind
[root@svr7 ~]# rpm -qa bind*
bind-9.9.4-29.el7.x86_64    //域名服务包
bind-chroot-9.9.4-29.el7.x86_64    //提供虚拟根支持
• BIND服务器端程序

– 系统服务:named
– 默认端口:TCP/UDP 53

TCP 53  : 主从同步
  UDP 53  : 为客户端解析域名

– 运行时的虚拟根环境:/var/named/chroot/

• 主配置文件:/etc/named.conf    #设置负责解析的域名
 • 地址库文件:/var/named/        #主机名与IP地址对应记录

######################################################
服务端svr7:
1.安装bind、bind-chroot
2.修改主配置文件/etc/named.conf
  options {
      directory     "/var/named";    #指定地址库文件位置
   };
   zone  "tedu.cn"   IN  {         #指定负责解析的域名
      type   master;            #指定为权威主服务器
      file   "tedu.cn.zone";    #指定地址库文件的名称
    };

3.创建相应的地址库文件 /var/named/tedu.cn.zone
 # cd /var/named/
 # cp -p named.localhost  tedu.cn.zone     #保持属性不变  
 # ls -l tedu.cn.zone
 # vim tedu.cn.zone
 # tail -4  tedu.cn.zone
  tedu.cn.          NS        svr7.tedu.cn.  
  svr7            A         192.168.4.7
  www             A       1.1.1.1
  ftp             A       2.2.2.2

4.重起named服务

客户端测试:虚拟机pc207
指定DNS服务器IP地址
[root@pc207 ~]# echo nameserver 192.168.4.7 > /etc/resolv.conf
[root@pc207 ~]# nslookup www.tedu.cn

##########################################################
 特殊的解析记录
[root@svr7 /]# vim /var/named/tedu.cn.zone

tedu.cn.        NS      svr7.tedu.cn.
 svr7            A       192.168.4.7
 www             A       1.1.1.1
 ftp             A       2.2.2.2
 *               A       100.200.220.230
 $GENERATE  1-60  stu$    A  192.168.10.$
 
   stu1.tedu.cn--------》192.168.10.1
   stu2.tedu.cn--------》192.168.10.2
   stu3.tedu.cn--------》192.168.10.3
     .......
   stu60.tedu.cn-------》192.168.10.60

$GENERATE 造数工具

• 基于DNS的站点负载均衡
     – 一个域名 ---> 多个不同IP地址

[root@svr7 /]# vim /var/named/tedu.cn.zone

tedu.cn.        NS      svr7.tedu.cn.
 svr7            A       192.168.4.7
 www             A       192.168.4.10
 www             A       192.168.4.20
 www             A       192.168.4.30
 ftp             A       2.2.2.2
 *               A       100.200.220.230
 $GENERATE 1-60 stu$  A  192.168.10.$

######################################################

DNS子域授权

父域:www.tedu.cn       父域DNS(svr7)可以解析tedu.cn
      子域:www.bj.tedu.cn    子域DNS(pc207)可以解析bj.tedu.cn

父域DNS(svr7)可以解析tedu.cn
    子域DNS(pc207)可以解析bj.tedu.cn
    父域DNS(svr7)也可以解析bj.tedu.cn
    子域DNS(pc207)也可以解析tedu.cn

虚拟机pc207:
1.安装bind、bind-chroot
2.修改主配置文件/etc/named.conf
  options {
      directory     "/var/named";    #指定地址库文件位置
   };
   zone  "bj.tedu.cn"   IN  {         #指定负责解析的域名
      type   master;               #指定为权威主服务器
      file   "bj.tedu.cn.zone";    #指定地址库文件的名称
    };
3.创建相应的地址库文件 /var/named/bj.tedu.cn.zone
 # cd /var/named/
 # cp -p named.localhost  bj.tedu.cn.zone      #保持属性不变  
 # vim bj.tedu.cn.zone
  bj.tedu.cn.     NS          pc207
  pc207            A          192.168.4.207
  www              A      1.2.3.4

4.重起named服务,测试 nslookup  www.bj.tedu.cn 192.168.4.207

#######################################################
子域授权

父域DNS(svr7)也可以解析bj.tedu.cn
 
 虚拟机svr7:
[root@svr7 /]# vim /var/named/tedu.cn.zone

tedu.cn.         NS      svr7.tedu.cn.
  bj.tedu.cn.      NS      pc207.bj.tedu.cn.
  pc207.bj.tedu.cn. A       192.168.4.207
  svr7              A       192.168.4.7

[root@svr7 /]# systemctl restart named

[root@svr7 /]# nslookup www.bj.tedu.cn 192.168.4.7

递归解析: DNS服务器帮客户端与其他DNS服务器询问解析结果,并且将解析结果得到,给与客户端的过程
   
######################################################
 子域DNS将请求转发给父域的DNS

子域DNS(pc207)也可以解析tedu.cn

虚拟机pc207:

[root@pc207 /]# vim /etc/named.conf

zone "tedu.cn" IN {
     type forward;
     forwarders  { 192.168.4.7; };
 };

[root@pc207 /]#  systemctl restart named

[root@pc207 /]#  nslookup  www.tedu.cn 192.168.4.207

#######################################################
  缓存DNS服务器

缓存DNS
  – 不需要管理任何DNS区域,但是能够替客户机查询,
  而且通过缓存、复用查询结果来加快速度
  – 典型应用:ISP服务商、企业局域网

Service4的更多相关文章

  1. AngularJS之Service4

    AngularJS之Service(四)   前言 前面我们讲了控制器.过滤器以及指令,这一节我们来讲讲重大内容之一服务和其中涉及到的工厂. 话题 AngularJS中服务可以说是和DI紧密联系在一起 ...

  2. Javascript之自定义事件

    Javascript自定义事件,其本质就是观察者模式(又称订阅/发布模式),它的好处就是将绑定事件和触发事件相互隔离开,并且可以动态的添加.删除事件. 下面通过实例,一步一步构建一个具体的Javasc ...

  3. [WCF编程]7.实例上下文模式

    一.实例上下文模式概述 实例上下文(IntanceContext Mode)表示服务端的服务实例与客户端的服务代理的绑定方式. 在实例化服务器对象时,WCF采用了3种不同的模式:单调(Per-Call ...

  4. iOS动态部署方案

    转载: iOS动态部署方案 前言 这里讨论的动态部署方案,就是指通过不发版的方式,将新的内容.新的业务流程部署进已发布的App.因为苹果的审核周期比较长,而且苹果的限制比较多,业界在这里也没有特别多的 ...

  5. 自己对WSO2 ESB 见解

    这周没想到要更新什么内容,就把我最近工作接触的WSO2 ESB简单介绍下吧.     前提: 一切文档,知识都要与官方文档为准. WSO2 ESB: http://wso2.com/products/ ...

  6. Java多线程之synchronized(五)

    上篇介绍了用synchronized修饰static方式来实现“Class 锁”,今天要介绍另一种实现方式,synchronized(class)代码块,写法不一样但是作用是一样的.下面我附上一段代码 ...

  7. JavaEE程序编码规范

    JavaEE程序编码规范 目   录 JAVA程序编码规范1 1变量的命名规则1 1.1常量(包含静态的)1 1.2类变量(静态变量)及实例变量1 1.3局部变量1 1.4参数2 1.5其它2 2方法 ...

  8. python 接口自动化测试(三)

    1.WriteIni.py import ConfigParser cf = ConfigParser.ConfigParser() cf.add_section("PC_WSDL" ...

  9. 实现CA证书创建及客户端申请证书

    author:JevonWei 版权声明:原创作品 CA证书的相关文件路径 openssl配置文件/etc/pki/tls/openssl.cnf /etc/pki/tls/openssl.cnf C ...

随机推荐

  1. sed编辑器基础

    一. 更多的替换选项 ①替换标记 root@localhost sed]# cat data4.txt This is a test of the test script. This is the s ...

  2. 【LeetCode 36】有效的数独

    题目链接 [题解] 就一傻逼模拟题 [代码] class Solution { public: bool isValidSudoku(vector<vector<char>>& ...

  3. 【LeetCode 31】下一个排列

    题目链接 [题解] 从右往左找第一个下降的位置i(即满足nums[i]<nums[i+1]); 然后在[i+1..len-1]这个区间里面找到一个最大的下标k,使得nums[k]>nums ...

  4. centos7 安装VMware tools 出现The path "" is not a valid path to the 3.10.0-514.el7.x86_64 kernel headers

    执行:yum install "kernel-devel-uname-r == $(uname -r)"

  5. paper 139:qt超强绘图控件qwt - 安装及配置

    qwt是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式 ...

  6. IOS 创建目录/文件夹

    •IOS 应用目录简介 个文件夹:Documents, Library和 tmp.Library包含Caches.Preferences目录. Documents:应用中用户数据可以放在这里,iTun ...

  7. Linux命令 uname

    1.简介 管理系统而使用的命令,用于显示系统信息(不同linux版本可能有写差异) 2.语法 uname [-amnrsv] (1) -a,--all 显示所有的信息 (2) -s,--kernel- ...

  8. Java + selenium Timeout接口用法介绍

    上一篇介绍了关于如何启动浏览器的方法.这篇文章要介绍一下,上一篇代码中关于等待时间的接口方法,代码如下: driver.manage().timeouts().pageLoadTimeout(5, T ...

  9. shell脚本之nginx的安装

           为了编写nginx自动部署的脚本而刚学习的shell脚本语言.写文章只是为了记录,有错误勿喷. 一.创建shell脚本程序        操作系统是Linux的 CentOS 7 版本. ...

  10. 13-python基础—python3中的map()

    map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表. 通俗解释: m ...