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. [PHP]怎样在SAE的CodeIgniter项目中隐藏掉index.php

    第一步:改动项目根文件夹的config.yaml文件.加入例如以下内容: handle: - rewrite: if(!is_dir() && !is_file() && ...

  2. BootStrap有用代码片段(持续总结)

    > 如题.持续总结自己在使用BootStrap中遇到的问题.并记录解决方法.希望能帮到须要的小伙伴 1.bootstrap上下布局.顶部固定下部填充 应用场景:经典上下布局中,顶部导航条固定,下 ...

  3. 疯狂java讲义之数据类型与运算符

    Java是一门强类型语言 所有变量必须先声明.后使用 指定类型的变量只能接受类型匹配的值 注释 @author 作者 @version 版本 @param 方法参数 @return 返回值 标识符与关 ...

  4. Linux-php7安装redis

    Linux-php7安装redis 标签(空格分隔): 未分类 安装redis服务 1 下载redis cd /usr/local/ 进入安装目录 wget http://download.redis ...

  5. jqueryValidator自定义校验规则的一种方式(不覆盖源码)

    1.封装自定义验证方法-validate-methods.js /***************************************************************** j ...

  6. Android实现App版本自动更新

    现在很多的App中都会有一个检查版本的功能.例如斗鱼TV App的设置界面下: 当我们点击检查更新的时候,就会向服务器发起版本检测的请求.一般的处理方式是:服务器返回的App版本与当前手机安装的版本号 ...

  7. Spring MVC登录注册以及转换json数据

    项目结构; 代码如下: BookController package com.mstf.controller; import javax.servlet.http.HttpServletRespons ...

  8. 机器学习(七) PCA与梯度上升法 (下)

    五.高维数据映射为低维数据 换一个坐标轴.在新的坐标轴里面表示原来高维的数据. 低维 反向 映射为高维数据 PCA.py import numpy as np class PCA: def __ini ...

  9. notepad++调用python3中文乱码

    使用notepad++,配置好快捷键调用python3,一切就绪,仿佛就差代码了,结果一使用, 中文乱码,一直没有好的解决办法. 最后只能在代码中增加一行重写向输出解决,示例如下: #!/usr/bi ...

  10. hdu 6363 bookshelf

    题解讲的很清楚了,直接看代码就懂了 题解:http://bestcoder.hdu.edu.cn/blog/2018-multi-university-training-contest-6-solut ...