DNS服务器的功能

  – 正向解析:根据注册的域名查找其对应的IP地址

  – 反向解析:根据IP地址查找对应的注册域名(不常用)

  

  NS(声明DNS记录)
  A(正向解析记录)
  CNAME(解析记录别名)

安装软件

  bind            # 域名服务包

  bind-chroot      #提供虚拟根支持,牢笼政策

  默认端口:TCP/UDP 53

  主配置文件:/etc/named.conf               #负责设置本机负责解析的域名

  地址库文件:/var/named/                     #完整的主机名域IP对应关系

修改主配置文件

  cp  /etc/named.conf           /root/named.bak        #修改前先备份

  vim /etc/name.conf  

    options {

      directory "/var/named";      #指定地址库文件存放位置

    };

    zone "tedu.cn" IN {           #指定本机负责解析的域名
       type master;        #指定主DNS服务器
       file "tedu.cn.zone";      #指定创建地址库文件名称
    };

建立对应的地址库文件

    cp  -p  name.localhost tedu.cn.zone  # 权限不变拷贝 

    所有的域名都必须以点最为结尾
    如果没有以点结尾,默认补全地址库负责的域名
    # vim tedu.cn.zone
      tedu.cn.          NS    svr7                  #声明域名DNS服务器
      svr7      A      192.168.4.7      #DNS服务器地址解析记录
      www     A      1.1.1.1               #域名正向解析记录
      ftp      A      2.2.2.2               #域名正向解析记录

重启服务器

  systemctl restart named

客户端验证 

  客户端解析域名优先级:
  1./etc/hosts
  2./etc/resolv.conf
  3.交由本机127.0.0.1:53处理

    

  指定DNS服务器地址

  echo nameserver  dns服务器ip    > /etc/resolv.conf

DNS轮询

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

泛域名解析

  *     A  192.168.0.1

  任何域名都会解析到192.168.0.1

   

  有规律的泛域名解析 

    pc1.tedu.cn ------> 192.168.10.1
    pc2.tedu.cn ------> 192.168.10.2
    pc3.tedu.cn ------> 192.168.10.3
    pc4.tedu.cn ------> 192.168.10.4
    ........
    pc50.tedu.cn ------> 192.168.10.50

    内置函数: $GENERATE 起始-结束  制造连续范围的数字

    $GENERATE  1-50   pc$   A  192.168.10.$

解析记录别名CNAME

  #vim/named/

    baidu     CNAME      a.shifen

  # baidu 与 a.shifen 的解析结果一致

  

分离解析

view "nsd" {
  match-clients { 192.168.4.207; };
  zone "tedu.cn" IN {
    type master;
    file "tedu.cn.zone";--->192.168.4.100
  };
  zone "sina.com" IN {
    type master;
    file "sina.com.other";--->10.20.30.40
  };
};

view "abc" {
  match-clients { 192.168.4.208; };
  zone "tedu.cn" IN {
    type master;
    file "tedu.cn.other";--->1.2.3.4
  };
  zone "sina.com" IN {
    type master;
    file "sina.com.abc";--->192.168.4.120
  };
}; view "other" {
  match-clients { any; };
  zone "tedu.cn" IN {
    type master;
    file "tedu.cn.other";--->1.2.3.4
  };
  zone "sina.com" IN {
    type master;
    file "sina.com.other";--->10.20.30.40
  };
};

    

  

 

  

DNS服务基础的更多相关文章

  1. DNS服务基础原理介绍

    FQDN 全称域名 localhost(主机名或者是别名).localdomain(域名)    FQDN=主机名.域名 根域               . 顶级域名       .com   .n ...

  2. Bind DNS服务——基础知识

    Linux基础--Bind DNS服务 Part0 DNS简介 域名系统(英语:Domain Name System,缩写:DNS)是互联网的一项服务.它作为将域名和IP地址相互映射的一个分布式数据库 ...

  3. Linux:Day18(上) dns服务基础进阶

    DNS:Domain Name Service,协议(C/S,53/udp,53/tcp):应用层协议. BIND:Bekerley Internat Name Domain,ISC(www.isc. ...

  4. 1、DNS服务基础

    w'indows上名称解析目录: C:\Windows\System32\drivers\etc https://jocent.me/2017/06/18/dns-protocol-principle ...

  5. linux web服务基础知识,dns

    #web服务基础知识c/s 客户端/服务器b/s 浏览器/服务器 nginx   >   web  server  服务端浏览器  >    web  client  客户端 #dns解析 ...

  6. Linux基础服务——Bind DNS服务 Part2

    Linux基础服务--Bind DNS服务 Part2 DNS反向解析与区域传送 实验环境延续Part1的实验环境. 反向区域配置 正向解析是域名到IP地址的映射,反向解析则是IP地址到域名的解析,在 ...

  7. Linux基础服务——Bind DNS服务 Part1

    Linux基础服务--Bind DNS服务 Part1 DNS正向解析 实验环境: CentOS8.3.2011 IP地址:192.168.100.50 VMware虚拟环境 NAT网段 需要解析的区 ...

  8. #WEB安全基础 : HTTP协议 | 0x3 TCP三次握手和DNS服务

    TCP三次握手精准无误地把数据送达目标处,TCP协议把数据包送出去后,向对方确认是否成功发送,握手过程中使用了TCP的标志(flag)——SYN和ACK 请看图 若握手中断,TCP协议再次从同样顺序发 ...

  9. 【Linux】DNS服务-BIND基础配置(二)

    BIND简介 现在使用最为广泛的DNS服务器软件是BIND(Berkeley Internet Name Domain),最早有伯克利大学的一名学生编写,现在最新的版本是9,有ISC(Internet ...

随机推荐

  1. [转帖]localectl

    localectl http://linux.51yip.com/search/localectl localectl 命令简介. 相关命令:暂无相关命令 localectl — 控制系统的本地化与键 ...

  2. Linux基础 目录

    一,linux入门介绍 二,界面目录介绍 三,vim使用 四,文件管理. 文件夹管理. 五.用户创建流程.用户管理 .组管理 六.权限管理.软连接/硬链接 七.磁盘管理 八.软件包的管理 九.系统服务 ...

  3. Laravel三种中间件的作用

    $middleware 属性: 这个属性称为全局中间件,为什么说是全局中间件呢?因为你的每一次请求,这里面的每个中间件都会执行. $routeMiddleware 属性: 这个属性称为路由中间件,为什 ...

  4. idea 如何加入插件SonarLint

    idea 如何加入插件SonarLint   IDEA的插件安装有两种方法:一是在线安装:二是离线安装,即将插件的安装包下载以后从本地安装.   一.在线安装的过程:         1.打开IDEA ...

  5. C#应用笔记

    1.ref关键字.out关键字——引用传递参数 2.什么时候用DateReader,什么时候用DateSet呢? 3.is操作符.as操作符的使用 4.Eval方法和Bind方法的区别 5.Serve ...

  6. 07 Redis存储Session

    django-redis-sessions 官方文档:https://pypi.org/project/django-redis-sessions/ dango-redis 官方文档:http://n ...

  7. express相关操作

    1.   安装应用生成器npm install express-generator –g 2.   生成项目Express --view=ejs myapp 3.   进入项目安装依赖包 npm in ...

  8. kali linux 安装 qq (deepin-wine)

    添加deeepin-wine 依赖 /etc/apt/sources.list: # Generated by deepin-installer deb http://mirrors.aliyun.c ...

  9. SCRUM 是一个用于开发和维护复杂产品的框架

    转自:http://www.scrumcn.com/agile/scrum-knowledge-library/scrum.html#tab-id-1 Scrum 是一个用于开发和维护复杂产品的框架 ...

  10. 3.第一个MyBatis程序_进化

    1.使用工具类 将SqlSession的获取 封装成一个工具 private static SqlSession session = null; static { try { InputStream ...