部署DNS正向解析

  • 主配置文件(/etc/named.conf):

  用来定义bind服务程序的运行。

  • 区域配置文件(/etc/named.rfc1912.zones):

  用来保存域名和ip地址对应关系的所在位置。类似于图书的目录,对应着每个域和相应ip地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。

  • 数据配置文件目录(/var/named):该目录用来保存域名和ip地址真是对应关系的数据配置文件。
  1. 主配置文件:/etc/named.conf
  2. 区域配置文件:/etc/named.rfc1912.zones
  3. 正向解析模板文件:/var/named/named.localhost
  4. 反向解析模板文件:/var/named/named.loopback
  • 首先配置防火墙规则

将INPU规则链设置为只允许指定网段的主机访问本机的53端口,拒绝来自其他所有主机的流量:

 [root@localhost ~]# iptables -I INPUT -s 192.168.127.0/ -p tcp --dport  -j ACCEPT
[root@localhost ~]# iptables -A INPUT -p tcp --dport -j REJECT
[root@localhost ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 192.168.127.0/ anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
REJECT tcp -- anywhere anywhere tcp dpt:domain reject-with icmp-port-unreachable
  • 下载bind

  bind,该包为DNS服务的主程序包

  bind-utils,该报为客户端工具,默认安装,用于搜索域名指令

    [root@localhost ~]# yum install bind bind-utils -y

  • 配置DNS主配置文件
 [root@localhost ~]# vim /etc/named.conf
options {
listen-on port { any; }; #127.0.0.1改成any;表示服务器上的所有IP地址均可提供DNS域名解析服务
listen-on-v6 port { ::; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; }; #把localhost改为any;表示允许所有人对本服务器发送DNS查询请求
  • 修改区域配置文件
 [root@localhost ~]# vim /etc/named.rfc1912.zones
zone "crucis.top" IN {
type master;
file "named.localhost";
allow-update { none; };
}; zone "localhost" IN {
type master;
file "named.localhost";
allow-update { none; };
};
  • 定义自己的域文件

  可以从/var/named目录中复制一份正向解析的模板文件(named.localhost),然后把域名和和ip地址的对应数据填写数据配置文件中并保存。再复制时记得加上-a参数,这可以保留原始文件的所有者、所属组、权限属性等信息,以便让bind服务程序顺利读取文件内容

 [root@localhost ~]# cd /var/named
[root@localhost named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@localhost named]# cp named.localhost crucis.top.zone -a
  • 配置自己的域文件
 [root@localhost named]# vim crucis.top.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
www IN A 192.168.127.140
lc IN A 192.168.127.140
whq IN A 192.168.127.140
~
  • 重启服务

    [root@localhost named]# systemctl restart named

  • 使用自己配置的DNS服务器
  • 重启网卡

    [root@localhost network-scripts]# systemctl restart network

  • 验证
 [root@localhost ~]# nslookup
> www.crucis.top
Server: 192.168.127.140
Address: 192.168.127.140# ** server can't find www.crucis.top: NXDOMAIN

  

DNS域名解析系统_2的更多相关文章

  1. DNS域名解析系统_1

    DNS服务概述: DNS的模式为C/S模式 DNS(Domain Name System)域名系统,在TCP/IP网络中有非常重要的地位,能够提供域名与ip地址的解析服务. DNS是一个分布式数据库, ...

  2. DNS域名解析系统

    1.DNS的组成 DNS系统是为解析域名为IP地址而存在的,它是由域名空间.资源记录.名称服务器和解析器组成. 域名空间是包含一个树状结构,用于存储资源记录的空间. 资源记录是与域名相关的数据,如IP ...

  3. 详解DNS域名解析系统(域名、域名服务器[根、顶级、授权/权限、本地]、域名解析过程[递归与迭代])

    文章转自:https://blog.csdn.net/weixin_43914604/article/details/105583806 学习课程:<2019王道考研计算机网络> 学习目的 ...

  4. TCP/IP之DNS域名解析系统

    DNS系统是一个分布式的数据库,当一个数据库发现自己并没有某查询所需要的数据的时候,它将把查询转发出去,而转发的目的地通常是根服务器,根服 务器从上至下层层转发查询,直到找到目标为止.DNS还有一个特 ...

  5. window下域名解析系统DNS诊断命令nslookup详解

    Ping指令我们很熟悉了,它是一个检查网络状况的命令,在输入的参数是域名的情况下会通过DNS进行查询,但只能查询A记录和CNAME(别名)记录,还会返回域名是否存在,其他的信息都是没有的.如果你需要对 ...

  6. 解决Ubuntu系统的每次开机重启后,resolv.conf清空的问题和DNS域名解析问题(图文详解)

    不多说,直接上干货! 问题情况描述如下: 普及知识:   /etc/resolv.conf ,其实是一个Link .它其实指向的是 /run/resolvconf/resolv.conf.  Ubun ...

  7. 域名解析系统DNS诊断命令nslookup详解【转】

    转自:http://www.renhaibo.com/archives/29.html Ping指令我们很熟悉了,它是一个检查网络状况的命令,在输入的参数是域名的情况下会通过DNS进行查询,但只能查询 ...

  8. DNS域名解析过程

    图1-10是DNS域名解析的主要请求过程实例图. 如图1-10所示,当一个用户在浏览器中输入www.abc.com时,DNS解析将会有将近10个步骤,这个过程大体描述如下.当用户在浏览器中输入域名并按 ...

  9. DNS域名解析服务器

    域名解析服务器,靠它把你要访问的网址找到然后把信息送到你电脑上.DNS 是域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的.域名服务器是指保存有该网络中所有主 ...

随机推荐

  1. C# 核心基础(1) 持续更新

    using System; namespace ConsoleApplicationCShape { class Program { static void Main(string[] args) { ...

  2. Hive启动报错Terminal initialization failed; falling back to unsupported java.lang.Incomp

    这个报错需要删除hadoop目录下,需要删除下面目录下的文件,重启hadoop和hive即可 $HADOOP_HOME/share/hadoop/yarn/lib/jline-0.9.94.jar

  3. 如何创建vue项目

    Vue项目环境搭建 """ node ~~ python:node是用c++编写用来运行js代码的 npm(cnpm) ~~ pip:npm是一个终端应用商城,可以换国内 ...

  4. Java:应用Observer接口实践Observer模式

    本文出自“子 孑” 博客,原文链接:http://zhangjunhd.blog.51cto.com/113473/68949 在Java中通过Observable类和Observer接口实现了观察者 ...

  5. python瞎练

    需求:有不规则列表 singlelist3 = [ '总计', '每吨人工:', '总人工', 1748.07, '金额'],如果当前元素为字符串且该元素的下一个相邻位置仍为字符串,那么请在该元素后面 ...

  6. mysql你问我答

    1.尊敬的先生,请您谈谈mysql数据库的引擎 数据库中的表设定了什么存储引擎,那么该表在数据存储方式.数据更新方式.数据查询性能以及是否支持索引等方面就会有不同的“效果”. mysql引擎大致分两类 ...

  7. 使用 stringstream 进行类型转换

    如何用使用stringstream进行类型转换: 1. 下面例子为整型和sting类型的相互转换示例 整型转换为字符串类型 string NumberToString(int num){    str ...

  8. Mac中iterm2显示彩色

    Mac中iterm2显示彩色 2016年08月23日 18:09:37 Sun7_She 阅读数:1974   参考网址:https://segmentfault.com/q/101000000065 ...

  9. SpringAop@Aspect注解实现切面编程

    SpringAOP在springboot中如何使用 #什么是aop## 概念> aop全称Aspect OrientedProgramming,面向切面,AOP主要实现的目的是针对业务处理过程中 ...

  10. 2019 南昌ICPC网络赛H The Nth Item

    The Nth Iteam 题意:F(0)=1,F(1)=1,F(n)=3*F(n-1)+2*F(n-2) (n>=2) ,F(n) mod 998244353.给出Q跟N1,Ni=Ni-1^( ...