构建域名缓存服务器

大家都知道,平时我们访问某个网站输入的一般都是字符串(域名)如:www....com等等,但是在互联网中标识不同的主机的并不是这些字符串,而是主机具体的IP地址,所以我们其实是通过IP地址对某个网站之类的站点进行访问的,大家也许就纳闷了,我输入的就是域名,而不是IP地址啊,这就对了!之所以我们用具有特色容易记忆的域名而不是一串数字组成的IP地址就可以访问站点的主要原因就是因为有DNS这个“幕后英雄。
     DNS的主要作用就是对域名和域名相对于对应的IP进行相互“翻译”的,这个翻译的过程规范的说就是解析,DNS服务器中记录了它所管理的范围内的所有的域名和IP地址的对应关系,当我们输入域名的时候,DNS通过查询自己的记录,将域名解析成与之对应的IP地址,让我们对站点请求连接的数据包可以找到相应的站点,这叫做正向解析,当DNS服务器将IP地址解析为其相对应的域名时,这叫做反向解析。
     我们现在了解到NDS服务器管理的是一个范围(域)的,在这个域内,会有提供不同服务的主机,DNS要通过相应的文本文件记录对这个域的内提供不同服务的主机的信息,针对主机提供不同的服务其记录类型也是不同的,主要的记录类型主要有一下几种:
         A :正向记录,是用来记录域名所对应的IP地址
         NS:(name server)指明当前域内有哪些服务器
         MX:用来指明一个域的邮件服务器
         CANME:进行正式名称和别名的对应
         SOA:标明当前域的起始授权记录,指明当前域内的主DNS服务器
    了解了这些基本的DNS内容之后,我们就可以自己来搭建以个最基础的DNS服务器(域名缓存服务器)来好好了解DNS的真正内容了,下面我们就来搭建一个域内的一个DNS缓存服务器,这个缓存服务器主要是我们为对DNS服务器进行更深一点的了解而搭建的,并不是真正用来放在互联网上进行相应的服务的,所以要相对简单很多。

搭建过程:

1、安装软件包bind,由于只是讲解,我们就采用简单的方法安装。

yum install bind -y

2、配置DNS的主配置文件/etc/named.conf,由于这个文件本来不存在,所以我们手动创建。

vim /etc/named.conf 并添加如下内容:

options {

directory "/var/name/" ;     #定义NDS服务器的全局工作目录

} ;

zone "." IN {                     #声明根区域,在下面我们将具体介绍根区域

type hint ;

file "named.ca"

};

zone "localhost" IN {                       #定义本地解析的域

type master;    类型为主域名服务器

file "localhost.zone";   文件名

};

zone "0.0.127.in-addr.arpa" IN {             #定义本地域的反向解析

tpye  master;

file "named.local"

};

保存退出,即可

3、创建我们在主配置文件中定义的三个文件named.ca localhost.zone  named.local  注意:这三个文件的名字和作用是相对固定的,不能改变。
         (1)创建根区域文件named.ca 
              cd /var/named
              dig -t NS . > named.ca   这个文件保存的是全球的13个根域,当全球的哪个DNS服务器不能解析某个地址的时候就可以直接向这13个根域的主服务器发送解析请求,当让是在联网的前提下。

(2)创建本地域正向解析文件localhost.zone
              vim localhost.zone  写入如下内容:

$TTL 86400   定义全局解析缓存的有效期限。

@    IN  SOA    localhost.(主dns服务器的名字)  admin@localhost.(邮箱)(                         2011081601   序列号,最多十位
                      1H   辅助服务器的刷新时间间隔,默认为秒,
                      10M  重试时间, 如果不能联系主服务器,隔多长时间重试连接                             7D  过期时间,如果在这段时间内连接不上主服务器,那么开始自杀
                      1D )  否定回答的ttl值,告诉没有之后,1天内不要 在进行查询
                      IN   NS         localhost.   本地域的NDS服务器
        localhost.    IN    A          127.0.0.1    本地域 的正向解析记录

(3)创建本地域的反向解析文件named.local
              vim named.local  输入如下内容
              $TTL 86400 。                  
              @             IN  SOA    localhost.   admin@localhost.  (
                                                 2011081601   
                                                 1H                    
                                                 10M            
                                                 7D    
                                                 1D )          
                            IN   NS         localhost.   
                  1         IN   PTR        localhost.

保存即可

4、检查创建文件的语法是否有错误

由于这些文件对语法的要求十分严格,所以在启动服务前有必要进行语法检测。

named-checkconf  检查主配置文件的语法错误,若无任何提示,则表示正常

service named configtest  也可以检查主配置文件语法错误

named-checkzone "localhost"  "file-name" 用来测试记录文件的语法是否正确

如果检查语法没有错误,我们就可以启动服务了

service named start

5、验证实验结果是否正确

通过命令dig  -t  A localhost @IP  主机ip  来查看正向解析

dig  -x @IP 来查看反向解析

如果看到了域名和IP的对应关系则表示解析成功,当让这只是一个最基础的NDS服务器,关于DNS服务器其他功能的添加,将会在后面介绍。

转载于:https://blog.51cto.com/aceruser/646665

DNS服务器构建(一)-—构建域名缓存服务器相关推荐

  1. cdn缓存服务器有网站图片,cdn缓存服务器上传图片

    cdn缓存服务器上传图片 内容精选 换一换 图片组件作为一个基本组件,用于展示图片.用户可以通过属性"图片地址",来选择图片. 体验馆提供了各场景下的无服务器构造方案,指导您端到端 ...

  2. 如何通过网站域名查询服务器地址,如何根据域名查看服务器地址

    如何根据域名查看服务器地址 内容精选 换一换 园区智能体的算法服务支持的输出类型为Webhook.在创建作业前您需确保Webhook Service已运行成功.下面以一个简单的python脚本作为示例 ...

  3. 网站备案 服务器不在一个地方,域名和服务器不在一个 如何备案

    域名和服务器不在一个 如何备案 内容精选 换一换 请根据您的实际情况,选择用于备案的服务器,并单击"验证". 如果您购买了华为云云速建站产品搭建网站,需要购买和绑定域名,通过域名访 ...

  4. python获取当前服务器ip_Python实现获取域名所用服务器的真实IP

    本来是要写个程序用的,没写完不写了,这一部分就贴出来吧 验证域名和IP class JianKong(): '''查询IDC信息,封ip和过白名单''' def __init__(self): pas ...

  5. cdn缓存服务器有网站图片,CDN缓存服务器图片存储一致性hash算法的理解

    用hash做缓存,假如有三台服务器,1,2,3,有三万张图片,我想将图片平均缓存到我三台服务器上,一个服务器大概一万张,怎么去实现这个办法呢,可以用hash来取余数进行操作,加入我们是以图片的名字作为 ...

  6. 网站服务器不要开启BBR,在缓存服务器上开启bbr测试

    目前我们服务器上的拥塞控制策略是cubic算法: sysctl -a |grep tcp_congestion_control net.ipv4.tcp_congestion_control = cu ...

  7. LinuxProbe 0x16 安装Bind服务程序、正向/反向解析、从署服务器、加密传输dns、缓存服务器、分离解析

    几天没写, csdn的编辑器都换了, 找不到之前的入口了, 新的编辑器不是很好用,不知道排版出来怎么样,将就看吧... 安装Bind服务程序 BIND(Berkeley Internet Name D ...

  8. 代理缓存服务器知识点整理

    [代理缓存服务器知识点整理] 一.http相关 1.正常http请求跟代理http请求的区别 常规的http请求头部:GET /index.html HTTP/1.1 Host:www.xuxiong ...

  9. unity 缓存服务器_缓存服务器

    设置 Asset Server 旧版 Asset Bundle 缓存服务器 重要信息:缓存服务器 (Cache Server) 仅支持资源导入管线 (Asset Import Pipeline) 版本 ...

最新文章

  1. VTS工具测试指定的testcase函数(以VtsHalKeymasterV4_0TargetTest为例)
  2. python npy文件_python实现npy格式文件转换为txt文件操作
  3. 用C#实现RSS的生成和解析,支持RSS2.0和Atom格式
  4. 美国密西西比州立大学招收机器学习、数据挖掘方向全奖博士生
  5. MySQL(一)SQL执行流程与MySQL架构
  6. abaqus利用python实现部件合并_在abaqus python中使用Element()构造函数创建部件元素...
  7. vue3被删除的两个功能
  8. 聊一聊Kaggle比赛
  9. WebRTC 聊天Demo
  10. python语言设置_Python语言脚本的安装和配置
  11. 穿越计算机的迷雾--读书笔记四
  12. 地理加权回归的学习(地理加权回归用来量化空间异质性)
  13. [乡土民间故事_徐苟三传奇]第六回_放牛伢妙计订合同
  14. 点网络计算机怎么出现蓝屏,电脑总是出现蓝屏该怎么解决
  15. HP 1022N 网络打印机安装步骤
  16. tiny服务器系列,温州中学TinyWebDB服务器正式启用
  17. APP稀有资源及19种无需编程的App创建工具
  18. Spring MVC 教程详解 个人总结 复习必备 面试宝典 狂神笔记
  19. 国家食品药品监督管理局投诉举报
  20. [转载]C#中IndexOf的使用

热门文章

  1. Download PuTTY: latest release (0.75) pscp
  2. 一道经典面试题 你是是否理解 if()没有大括号与有大括号区别吗?
  3. java bundle类_java ResourceBundle介绍
  4. python函数解读_通过7个Python函数来解释区块链
  5. python黑网站_python
  6. c语言表达式1 33的值是,2015年计算机二级C语言测试题及答案(1)
  7. 常用连续型分布介绍及R语言实现
  8. python字典和集合对象可以进行索引操作_建议收藏丨纯知识点:Python基础—字典、集合操作大全...
  9. vue echarts div变化_数据可视化之echarts在Vue中的使用
  10. linux libimf.so,如何安装Linux版FLOW-3D及注意事项