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. python字符转化

    int(x [,base ]) 将x转换为一个整数 long(x [,base ]) 将x转换为一个长整数 float(x) 将x转换到一个浮点数 complex(real [,imag ]) 创建一 ...

  2. Druid动态数据源配置

    上文已经讲了单个数据源的Druid的配置(http://www.cnblogs.com/nbfujx/p/7686634.html) Druid动态数据源配置 主要是继承AbstractRouting ...

  3. UVA 10529 - Dumb Bones (概率dp)

    题目描述 You are trying to set up a straight line of dominos, standing on end, to be pushed over later f ...

  4. js事件---同一个事件实现全选与反选功能

    背景: 点击头部按钮,实现全选与反选功能 1.绑定事件,把当前勾选状态传递给方法 $event <el-checkbox v-model="ModelCheckAll" cl ...

  5. SpringMVC架构实现原理

    SpringMVC架构实现原理 一.SpringMVC介绍 Spring mvc是一个基于mvc的web框架.其中核心类是DispatcherServlet,它是一个Servlet,顶层是实现的Ser ...

  6. echarts 柱状图 X(Y)轴数据过多时,滑动以及内置缩放的问题

    前言:在开发中碰到的情况(菜鸟出门).           在使用echarts 图表的时候发现要展示的数据过多,但是系统留的展示框太小,造成数据都挤压在一块(不好看而且新感觉很不专业).       ...

  7. idea 配置idk

    [Toc] #一.idea配置全局jdk ##1.1 File-->Project Structure ##1.2 选择SDKs ##1.3 选择jdk路径即可,可以添加多个jdk #二.配置项 ...

  8. https://www.cnblogs.com/limanjihe/p/10184327.html

    https://www.cnblogs.com/limanjihe/p/10184327.html https://blog.csdn.net/xnnswmzdszyd/article/details ...

  9. swiper内容滚动太长滚动Bug

    swiper内部有个横向滚动的盒子 由于swiper滚动,导致滚动盒子的时候自动跳到了下一页 wiper提供一个 noSwipingClass的属性,用来阻止自带的滚动事件 window.mySwip ...

  10. HBase版本进化史及大版本特性

    HBase 2.0 新特性介绍 2018年4月30日HBase发布了2.0的Release版本.HBase的2.0版本承载了太多的Features,共包含4551个Issues,可以说是迄今最大的一个 ...