1.DNSserver简单介绍



域名系统英文Domain
Name System,縮寫DNS)是因特网的一项服务。

它作为将域名IP地址相互映射的一个分布式数据库,可以使人更方便的訪问互联网。DNS
使用TCPUDPport53。

当前。对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。



在dns出现之前,我们把域名和IP的对比存放在/etc/hosts文件中边。可是随着IP的不断增大,使用文件存放显得不够了。并且不利于和其它的主机进行同步,DNS应运而生。



DNS的结构:他是利用树形文件夹的架构。将主机名的管理分配在不同层级的DNSserver,让每一层的改动和查找都变得功能单一。



DNS查询主机名的流程:



(1)先在本机有没有记录,没有的话向(.root)查询;

(2)向最顶层的.查询;

(3)然后分层的查询,每次仅仅查询它所对的下一层。

(4)查到之后记录缓存,而且将路径返回给用户。

注:在系统中我们能够通过dig命令进行路径追踪。



工作流程如图所看到的:





​2.搭建DNSserver





​今天我们来自己搭建一个DNSserver。这种需求在公司的内部还是有的。



​首先我们来查找安装dns的包有那些:





​安装dnsserver:





​开启服务后看到dns服务开启的port号是53:





​接下来我们要改动配置文件提供对应的服务,这里我们为了安全期间。在/var/named/chroot的文件夹下改动配置文件,而不直接对/etc/named文件夹下的文件进行改动。两者是同步的,可是有一个约束条件,前者仅仅有在dns开启成功的情况下才干使用!

!!







​我们在选项中关闭了ipv6的开放。并且同意随意用户使用。







主配置文件的最后两行各自是副配置文件和我们的dns加密文件:







​(1)DNS的正向解析:

​我们依次来查看:







​我们来设置自己的域名系统,上边的是模板,底下的我们指定了域名配置文件的名称,这个要自己创建,位置在/var/named/chroot/var/named下:







​这个文件夹底下也有域名配置文件的模板,我们拷贝一份并进行设置:







这个是初始模样。请务必记住,而且和改动之后的进行对照:







​改动之后的:







​注意:这里的@等于example.com. 所以在最后两行,假设没有把域名补全的话。系统会把@所代表的值加入到末尾。而且注意每一个com后边另一个点。



​这个时候我们重新启动服务,而且查看火墙是否已经关闭:







​服务端设置好之后,我们在另外一台机子上訪问dnsserver。



​首先要做的就是改动ifcfg-eth0文件中的DNS1參数为指定DNSserver的IP:192.168.2.100.然后又一次启动network服务:









​又一次启动network:











​我们追踪了一下。发现能够找到www.example.com,而且dnsserver为192.168.2.100这就说明我么之前的dnsserver配置是没有问题的。





​上述部分是dnsserver的正向解析,同一时候我们还知道dns具有反向解析的能力。那怎样实现呢,当然还是要改动配置文件了,与正向解析的步骤区别不大。



​(2)DNS的反向解析:



​回到副配置文件里。在文件夹/var/named/chroot/etc下:







​看到我们IP的书写格式了么,是的,既然是反向解析,IP的书写顺序也是相反的,而且指定了配置文件:







​跳转到配置文件文件夹。首先我们拷贝反向解析配置文件的模板。然后进行编辑:







​这个是模板的格式:







​我们改动之后的样子:







​记住最后一行。它代表的意思是192.168.2.200所相应的域名是ptr.example.com.这个是我们等会检验配置是否正确的标准。



​退出保存后重新启动dns服务:







​回到客户机我们来反向解析一下192.168.2.200是什么域名:







​小结:



​     如上所讲,dns的正向解析和反向解析已经完毕,可是这种功能有点单一化,其实它还有些不使用,比方说怎样去同步的改动,怎样和dhcp共同协作提供ddns的服务。这些我们在下节解说。

linux杂谈(十八):DNSserver的配置(一)的更多相关文章

  1. redis(十八):Redis 配置

    #redis.conf# Redis configuration file example.# ./redis-server /path/to/redis.conf ################# ...

  2. Linux学习十八之、善用判断式

    原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0340bashshell-scripts_3.php 善用判断式 在第十一章中,我们提到过 $? 这个变量所 ...

  3. WDA基础十八:Select option配置

    为了省代码...为了方便管理WDA的查询条件... 首先建配置表: 说明: 上面的KEY基本都是维护的维度,可以根据销售组织,根据用户组,根据组件,根据SELECT OPTION的不同...等等,可以 ...

  4. 攻城狮在路上(叁)Linux(十八)--- 文件系统的简单操作

    本篇仅作为补漏. 一.查看磁盘和目录的容量:df  du df:列出文件系统的整体磁盘使用量. du:评估文件系统的磁盘使用量(常用于评估目录所占容量) 二.连接文件:ln 1.hard link:硬 ...

  5. 学习笔记:CentOS7学习之十八:Linux系统启动原理及故障排除

    目录 学习笔记:CentOS7学习之十八:Linux系统启动原理及故障排除 18.1 centos6系统启动过程及相关配置文件 18.1.1 centos6系统启动过程 18.1.2 centos6启 ...

  6. Java框架spring 学习笔记(十八):事务管理(xml配置文件管理)

    在Java框架spring 学习笔记(十八):事务操作中,有一个问题: package cn.service; import cn.dao.OrderDao; public class OrderSe ...

  7. Saiku使用iframe嵌入页面访问地址配置化(二十八)--DWR的基本使用

    Saiku使用iframe嵌入页面使用时ip与端口配置化(二十八)--DWR的基本使用 DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开 ...

  8. LNMP(linux+nginx+mysql+php)服务器环境配置

    一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服 ...

  9. VMware vSphere 服务器虚拟化之十八桌面虚拟化之安装View Composer服务器

                        VMware vSphere 服务器虚拟化之十八桌面虚拟化之安装View Composer服务器      View Compose服务可安装在管理虚拟机的vC ...

  10. Linux 账号管理与 ACL 权限配置

    要登陆 Linux 系统一定要有账号与口令才行,否则怎么登陆,您说是吧?不过, 不同的使用者应该要拥有不同的权限才行吧?我们还可以透过 user/group 的特殊权限配置, 来规范出不同的群组开发项 ...

随机推荐

  1. hpuoj--校赛--与学妹滑雪(最短路+精度判断)

    问题 G: 感恩节KK专场--与学妹滑雪 时间限制: 1 Sec  内存限制: 128 MB 提交: 284  解决: 25 [提交][状态][讨论版] 题目描述 这周下的雪好大好大,不过这正和KK学 ...

  2. json数据字典,以及数据在下拉框中显示

    建立person_vocation.json数据字典文件,内容: [ {"id":1,"disabled":false,"selected" ...

  3. Java中MySQL事务处理举例

    实例(以sql语句中的insert语句为例) import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pr ...

  4. Swift学习笔记(2):错误处理

    目录: Error do-catch 断言 Error 在 Swift 中,错误用符合 Error 协议的类型的值来表示.这个空协议表明该类型可以用于错误处理异常. Swift 的枚举类型尤为适合构建 ...

  5. Android RecyclerView和ScrollView嵌套使用

    我们的recyclerView有多个layoutmanager,通过重写layoutmanager的方法就可以让recyclerView和ScrollView嵌套了.但是请注意,如果recyclerV ...

  6. SVN: repository browser 库浏览器

    SVN: repository browser  库浏览器 -----如果不想全部下载,可以通过repository browser  库浏览器 从库中选择要下载的文件夹内容下载(svn针对性下载)

  7. shell脚本不同运行方式的差异

    说明:以下是个人的见解,不一定都正确,如有错误,欢迎指正! 一,shell脚本的运行方式,最常见的有以下几种: 1 )  . xxx.sh,注意,前面是一个点'.' 2 ) source xxx.sh ...

  8. CMSIS-RTOS 中断处理Interrupt Handling

    RTOS中断处理Interrupt Handling 在RTOS中使用信号来触发线程间的行为是比较简单和高效的,而对于Cortex-M微控制器来讲,从中断源获取信号来触发线程同样是一种重要的方式.虽然 ...

  9. 08-for循环

  10. 减少UIViewController切换的耦合

    我们一般切换UIViewController的时候用的是例如以下代码 #import "UIViewControllerDemo.h" UIViewControllerDemo * ...