一、配置基本的DNS 服务器(包含正向解析和反向解析)
域名:abc.com
服务器IP:10.1.2.11

1. 编辑主配置文件/etc/named.conf
----------------------------------------------------
options {
listen-on port 53 { any; }; <-- 改为any,监听所有本地IP地址
listen-on-v6 port 53 { ::1; };
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; }; <-- 允许任何人查询
recursion yes;

dnssec-enable no;
dnssec-validation no;
dnssec-lookaside auto;

/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";

managed-keys-directory "/var/named/dynamic";
};

logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};

zone "." IN {
type hint;
file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
----------------------------------------------------

2. 配置区域声明文件/etc/named.rfc1912.zones,添加一个域及其反向解析域
----------------------------------------------------
zone "abc.com" IN {
type master;
file "data/master.abc.com.zone";
};
zone "2.1.10.in-addr.arpa" IN {
type master;
file "data/master.1.1.10.in-addr.arpa.zone";
};
----------------------------------------------------

3. 配置区域数据库文件
正向解析域 /var/named/data/master.abc.com.zone
----------------------------------------------------
$TTL 3600
@ IN SOA dns.abc.com. root.abc.com. (
2014051901 <-- 版本号,下面是各种时间,如果不做主从结构,这些可以任意写
30 <-- slave 主动联系master的间隔
60 <-- slave 从master更新失败的重试间隔
90 <-- 在无法联系master的情况下多久slave停止服务
3600 ) <-- 对否定回答的缓存时间
IN NS dns.abc.com. <-- 指定本域中权威DNS服务器
dns IN A 10.1.1.1 <-- dns 服务器的地址
mail IN A 10.1.1.1 <-- A记录就是主机的IP地址Address
host1 IN A 10.1.1.11
----------------------------------------------------

反向解析域 /var/named/data/master.1.1.10.in-addr.arpa.zone
----------------------------------------------------
$TTL 86400
@ IN SOA dns.abc.com. root.abc.com. (
2014051901
30
60
90
3600 )
IN NS dns.abc.com. <-- 指定本域中权威DNS服务器
11 IN PTR host1.abc.com.
----------------------------------------------------

4. 启动服务 service named start
第一次启动该服务的时,会创建文件/etc/rndc.key,大概需时1分半钟,如果不想等待,可以使用下面的技巧绕过去:
[root@mob ~]# mv /dev/random /dev/random.orig <-- 备份原来的random 文件
[root@mob ~]# cp -a /dev/urandom /dev/random <-- 复制一份urandom 来做random
[root@mob ~]# service named start <-- 然后再次启动DNS 服务器,会很快完成
[root@mob ~]# mv -f /dev/random.orig /dev/random <-- 恢复random

5. 测试
把系统的域名服务器改为刚刚创建的域名服务器
vi /etc/resolv.conf
nameserver 10.1.1.1

用命令nslookup 测试
nslookup dns.abc.com

、配置DNS转发:
我们配置的DNS是只能解析我们定义的zone的,我们没有定义的是不能解析的。
配置DNS转发就可以解析其他互联网上的域名了,前提是这个域名在互联网中的确在使用,也就是说这个域名已经被某个DNS服务器解析了。
vim  /etc/named.conf //在options{} 里面增加
forward first;  
forwarders { 8.8.8.8; };
这两行就是用来配置转发的,该DNS服务器不能解析的域名会转发到8.8.8.8这个DNS服务器上去解析。

配置DNS服务器的更多相关文章

  1. 在Debian上用Bind 配置DNS服务器

    1 什么是DNS 初学者可能不理解DNS到底是什么,干什么用.我是在1998年大学毕业时才听说这个词的.那时我在聊天室碰到潍坊信息港的一个网管,我恬不知耻地说我也是个网管,他说也维护DNS吗?我说,D ...

  2. 烂泥:centos安装及配置DNS服务器

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 要在centos配置DNS服务器,要先安装DNS软件BIND.当然我们也可以安装其他的DNS软件,比如国内的开源DNS软件DNSPod. 在此我们以通过 ...

  3. 如何配置DNS服务器(局域网——域名指向某个IP地址)

    单击“开始”,指向“管理工具”,然后单击“DNS”,打开 DNS 管理器.   如有必要,向管理单元添加适用的服务器,然后连接该服务器.在控制台树中,单击适用的 DNS 服务器.   在“操作”菜单上 ...

  4. 配置DNS服务器IP

    #############################脚本功能及说明#################### #该脚本用来在本地服务器上配置DNS服务器IP #创建时间:2014-10-22 ## ...

  5. Linux下搭建Oracle11g RAC(2)----配置DNS服务器,确认SCAN IP可以被解析

    从Oracle 11gR2开始,引入SCAN(Single Client Access Name) IP的概念,相当于在客户端和数据库之间增加一层虚拟的网络服务层,即是SCAN IP和SCAP IP  ...

  6. centOS7配置DNS服务器

    世上无难事只怕有心人,遇事千万千万不要抵触,消极的情绪是失败之母,一点一滴,踏踏实实是通往幸福的捷径. 历经激动,受挫,抵触和鼓励以及征服,终于配好了让我欢喜让我忧的dns.在这里记录下来,希望能够给 ...

  7. CentOS7安装和配置dns服务器

    (1)dns介绍 1.基本介绍 名字解析: NetBIOS名:localhost wins hosts FQDN:完全限定域名,www.baidu.com hosts文件: 作用:实现名字解析,主要为 ...

  8. CentOS6.4 配置DNS服务器

    1.安装bind yum install -y bind bind-chroot bind-utis 2.配置named.conf [root@dns /]# vi /etc/named.conf 注 ...

  9. 通过Docker配置DNS服务器

    1. 概述 DockerHub中的 sameersbn/bind 镜像提供了搭建DNS服务器的功能,本文给出使用该镜像搭建DNS服务器的例子. 2. 环境 DNS服务器主机 IP:10.11.150. ...

随机推荐

  1. [CareerCup] 18.3 Randomly Generate Integers 随机生成数字

    18.3 Write a method to randomly generate a set of m integers from an array of size n. Each element m ...

  2. Java 中的转义字符

    注意斜杠方向,为键盘右上角的斜杠 \t 在当前编辑位置插入一个 tab \b 在当前编辑位置插入一个空格 \n 换行(在当前编辑位置插入 a newline) \r 在当前编辑位置插入一个回车     ...

  3. python 获得当前路径

    先要装载 os模块: import os print os.getcwd() 或者 print os.path.abspath(os.curdir) print os.path.abspath('.' ...

  4. Jquery 捕捉页面关闭事件

    (http://www.php100.com/html/program/jquery/2013/0905/6052.html) $(window).bind('beforeunload',functi ...

  5. 搭建vpn

    之前买的vpn,对linux支持很不友好,家里装的又是ubuntu.突然一想自己买个vps搭个vpn. 先买了host1plus的vps,一个月30块,配了两天,pptp,l2tp,shadow so ...

  6. myeclipse + tomcat 项目自动部署

    在MyEclipse中设置项目的自动部署需要综合考虑两个方面: 1是MyEclipse本身,通过主菜单中project->auto ,另一个就是tomcat配置文件.配置文件包括 conf 下的 ...

  7. Careercup | Chapter 8

    8.2 Imagine you have a call center with three levels of employees: respondent, manager, and director ...

  8. 一次与iptables有关的Openstack排错

    先说下环境: 宿主机A(192.168.1.242)上运行着实例a(192.168.1.176), 宿主机B(192.168.1.56)上运行着实例b(192.168.1.50). 用户说从实例b上t ...

  9. HDU 5919 Sequence II(主席树+逆序思想)

    Sequence II Time Limit: 9000/4500 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) To ...

  10. MVC Pager 使用

    MVC Pager  4.0+     3.0版本使用  ,直接来点使用的.一看就明白 @Ajax.Pager(Model,pagerOptions,mvcAjaxOptions); @using W ...