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. c++11 继承构造函数

    若基类拥有数量众多的不同版本的构造函数,而派生类中只有一些成员函数,则对于派生类而言,其构造函数就等同于构造基类. struct A { A(int i) {} A(double d, int i) ...

  2. 如何更改PHPCMS网站后台标题(title)

    打开PHPCMS安装目录,选择phpcms 然后选择Languages目录,打开. 打开目录后,选择zh-cn目录,选择admin.lang.php用editPlus打开,将第九行后面的引号中的内容换 ...

  3. python--表达式形式的yield、面向过程编程、内置函数

    yield的表达式形式 def init(func): def wrapper(*args, **kwargs): g = func(*args, **kwargs) next(g) return g ...

  4. 【数据库】一篇文章搞掂:MySQL数据库

    一.安装 使用版本:5.7(2018/08/03 阿里云的云数据库最高支持5.7,所以这里考虑用5.7) 下载版本:MySQL Community Server 5.7.23 下载地址:https:/ ...

  5. 反向代理Reverse proxy

    https://www.zhihu.com/question/24723688/answer/160252724 反向代理在计算机世界里,由于单个服务器的处理客户端(用户)请求能力有一个极限,当用户的 ...

  6. java.net.BindException: Address already in use: 解决方法

    java.net.BindException: Address already in use: 解决方法   1. 执行cmd 2. cmd命令模式下输入netstat -ano,然后找到占用端口的那 ...

  7. Linux命令 shutdown

    1. 简介 shutdown是用来让计算机处于暂停,关机,重启的指令 2.语法 shutdown [krhHPc]  [时间] [警告信息] 时间的格式: hh:mm 表示多长时间以后执行       ...

  8. ASP.NET Core项目目录结构介绍

    我们下面通过在Visual Studio 2017中创建一个空的Web应用程序来详细说明下asp.net core项目目录结构: 1.项目结构说明 (1).依赖项 这里主要分两部分SDK, 目前这两部 ...

  9. mysql分表分库 ,读写分离

    1.分表 当项目上线后,数据将会几何级的增长,当数据很多的时候,读取性能将会下降,更新表数据的时候也需要更新索引,所以我们需要分表,当数据量再大的时候就需要分库了. a.水平拆分:数据分成多个表 b. ...

  10. Win10 打开MSDTC

    标签:log   com   http   it   sp   src   c   bs   io 1,Win+R 打开运行窗口,输入 dcomcnfg,打开组件服务窗口 2,在组件服务 catalo ...