使用bind搭建DNS服务器

二. 使用bind搭建DNS服务器

1. 安装bind
yum install -y bind
cp /etc/named.conf /etc/named.conf.bak  
>/etc/named.conf
vim /etc/named.conf 
加入如下配置:

  1. options {
  2. directory "/var/named";
  3. };
  4. zone "." IN  {
  5. type hint;
  6. file "named.ca";
  7. };
  8. zone "localhost" IN {
  9. type master;
  10. file "localhost.zone";
  11. };
  12. zone "0.0.127.in-addr.arpa" IN {
  13. type master;
  14. file "named.local";
  15. };

复制代码

chown named /etc/named.conf
cd /var/named/
dig -t NS . > named.ca
vim localhost.zone //加入

  1. @                   IN      SOA     localhost.  admin.localhost.     (
  2. 2013081601
  3. 1H
  4. 10M
  5. 7D
  6. 1D
  7. )
  8. @                   IN          NS          localhost.
  9. localhost.          IN          A           127.0.0.1

复制代码

vim named.local //加入

  1. $TTL 86400
  2. @                    IN      SOA     localhost.  admin.localhost.      (
  3. 2013081601
  4. 1H
  5. 10M
  6. 7D
  7. 1D
  8. )
  9. @                    IN          NS          localhost.
  10. 1                    IN          PTR         localhost

复制代码

检测配置是否有问题: named-checkconf 
检测正解析: named-checkzone "localhost" /var/named/localhost.zone 
检测反解析: named-checkzone "0.0.127.in-addr.arpa" /var/named/named.local
rndc-confgen -r /dev/urandom -a  // 这一步是生成 rndc.key, 如果没有这个key namd 是启动不了的。
chown named:named /etc/rndc.key
/etc/init.d/named start
netstat -lnp  |grep named  // 查看一下named进程是否监听了53端口
首先测试正向解析:dig @127.0.0.1 localhost. 
接着测试反解析:dig @127.0.0.1 -x 127.0.0.1



2. 增加一个域名(zone)

①vim /etc/named.conf //增加

zone "123.com" IN {

type master;

file "123.com.zone";

};

②编辑zone文件: vim /var/named/123.com.zone//增加

$TTL 1D

@           IN   SOA   @ admin.123.com.  (

2016042701        ; serial

1H                ; refresh

10M               ; retry

7D                ; expire

1D )              ; minimum

IN      NS        ns.123.com.

IN      MX  10  mail.123.com.

mail      IN      A          192.168.2.10

ns        IN      A          192.168.2.11

www    IN      A          11.11.11.12

bbs      IN      CNAME   www

编辑反解析文件:

①vim /etc/named.conf //增加

zone "2.168.192.in-addr.arpa" IN {

type master;

file "2.168.192.zone";

};

②vim /var/named/2.168.192.zone //增加

$TTL 1D

@  IN   SOA   @ admin.123.com.  (

2016042701        ; serial

1H                        ; refresh

10M                     ; retry

7D                       ; expire

1D )                     ; minimum

IN      NS        ns.123.com.

11        IN      PTR       ns.123.com.

10        IN      PTR       mail.123.com.

分别检测两个配置文件是否有问题:
named-checkzone "abc.com" abc.com.zone
named-checkzone "137.168.192.in-addr.arpa" 192.168.zone 
重启named服务,测试 dig @127.0.0.1 www.abc.com 
dig  @127.0.0.1 -x 192.168.137.11



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

4. 配置主从
在从服务器上 yum install -y bind
拷贝主上的配置文件到从上,其中有/etc/named.conf, /var/named/localhost.zone, /var/named/named.local  
拷贝过来后,修改一下从的/etc/named.conf 内容参考:

  1. options {
  2. directory "/var/named";
  3. };
  4. zone "." IN  {
  5. type hint;
  6. file "named.ca";
  7. };
  8. zone "localhost" IN {
  9. type master;
  10. file "localhost.zone";
  11. };
  12. zone "0.0.127.in-addr.arpa" IN {
  13. type master;
  14. file "named.local";
  15. };
  16. zone "abc.com" IN {
  17. type slave;
  18. file "slaves/abc.com.zone";
  19. masters { 192.168.0.11; };
  20. };
  21. zone "137.168.192.in-addr.arpa" IN {
  22. type slave;
  23. file "slaves/192.168.zone";
  24. masters { 192.168.0.11; };
  25. };

复制代码

从上生成rndc.key: rndc-confgen -r /dev/urandom -a 
chown named:named /etc/rndc.key
从上启动named: /etc/init.d/named start 
启动成功后会在 /var/named/下生成一个slaves目录,这个目录下会有192.168.zone, abc.com.zone这两个文件,内容是和主上的一样的
在从上测试: dig @127.0.0.1  www.abc.com

5. 测试主从同步
在主dns上更改文件 /var/named/abc.com.zone // 在最后增加一行:
123              IN      A       1.1.1.1
另外需要修改一下第三行的那个数字串,这个是用来做标记的,只有这个数字变化了,才可以让从自动跟着变,数字只能是变大,不能减小,2013081601 -> 2013081602
重启主namd服务: /etc/init.d/named restart
经测试我们发现一个问题,就是从经常会同步特别慢,这是很要命的。所以需要我们做一个特殊操作,在主上的/etc/named.conf中,abc.com的zone中增加两行:
notify yes;

also-notify { 192.168.0.12; };

时间: 2024-10-06 05:15:15

使用bind搭建DNS服务器的相关文章

CentOS6.6下bind搭建DNS服务器

我们通过浏览器访问互联网需要输入网址,而这个网址是我们比较容易记忆的,互联网上的服务器却并不能识别这一串有意义的地址,互联网之间的通信是靠ip地址来实现的,ip地址是数字组成的,对于我们日常访问都需要输入一串数字,这是一件很痛苦的事情,所以才有了上面说的有意义的网址,那么网址是如何转换成IP地址的呢?这就是DNS服务器的作用了. DNS全称是Domain Name System域名系统,那么域名又是什么呢?域名就是我们容易记忆的的一串字符,如果想拥有自己的域名则需要向域名代理商进行注册,代理商会

Linux搭建DNS服务器

DNS相关概念 DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析).DNS协议运行在UDP协议之上,使用端口号53. 作用:解析域名 区域:正向区域.反向区域 记录: A记录 MX记录:搭建邮件服务器 PTR记录:反向记录,出现在反向区域中 CNAME记录:别名记录 NS记录:DNS授权服

详解Linux 6&7上搭建DNS服务器

整个hteret大家庭中连接了数以亿计的服务器个人主机,其中大部分的网站,部件等服务器都使用了域名形式的地址,如www.google.com.mail 163.com 等.很显然这种地址形式要比使月01231317202103 7A 的户地址形式更加直观而且更容易被用户记住. DNS系统在网络中的 作用处是维护着一个地址数现连,其中记录了各种主机城名与户地址的技关系上内便光安户租序现供正向的地址解析服务正向解析根据域名查IP 地址即将指定的域名解析为相对应的P地址,域名的正向解 析是DNS服务器

Linux DNS (2)搭建DNS服务器

注意:实验很简单,环境很重要.大家在做实验的时候一定要注意环境的配置,不然实验做的再好最后的结果也和我们想的要的结果不一样的. 首先我们先准备环境: 虚拟机一个 RedHat5.9系统两个操作系统 我们把他们的网路连接在同一个"VMnet"里 配置IP地址,都配置在一个网段的IP. 注释: DNS有几点要注意的 DNS可以一个域名对应很多IP DNS可以一个IP对应很多域名 注意:首先要关闭防火墙和selinux [[email protected] ~]#  /etc/init.d/

搭建DNS服务器+邮件服务器

一·搭建DNS服务器 试验要求:完成DNS的正反向解析 试验前准备: 服务器 192.168.203.201 server1.example.com 客户机 192.168.203.202 server2.example.com 192.168.203.203 database.example.com 修改DNS nmcli c modify eno16777736 ipv4.dns 8.8.8.8 systemctl restat network 1.1 安装相关程序 yum install

搭建dns服务器

前言: 我们在一台服务器上搭建了两个web站点,并且是以域名作为区分的虚拟主机,当我们输入服务器的ip访问时,默认进入的是第一个虚拟主机,而且wordpress虚拟主机是要通过https验证证书的,所以必须得通过域名访问,所以接下来我们搭建一个域名服务器,解析www.a.com和www.b.com. 正文: 此次搭建dns服务器我们使用bind,首先第一步当然是安装程序啦~我们依然时候搭建http服务器的那个设备,ip为172.16.53.183 yum install bind 第一步,先进行

自己动手搭建DNS服务器

前言: 在我们平时上网中,访问的都是域名,那么域名是如何转换为IP地址的呢?进而访问我们的服务器主机的呢?这时候就需要用到DNS服务器了.DNS是由域名解析器和域名服务器组成的,域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器. 那么接下就开始搭建DNS服务器吧! 1.首先搭建主DNS服务器,ch1主机配置如下: [[email protected] ~]# yum -y install bind        ## 安装bind程序 [[emai

LINUX中搭建DNS服务器,实现正向、反向以及访问不同DNS解析

实现目标: 搭建DNS服务器 1)新浪服务器(dns.sina.com) dns.sina.com -->192.168.4.5 www.sina.com-->1.2.3.40 news.sina.com-->1.2.3.45 2)搜狐服务器(dns.sohu.net) dns.sohu.com-->192.168.4.6 movie.sohu.net-->5.6.7.80 study.sohu.net-->5.6.7.85 客户机测试: 向192.168.4.5能查询

搭建DNS服务器:正向解析区域、反向解析区域、主从DNS

在搭建DNS服务器之前,可以了解一下在什么情况才需要搭建DNS服务器,以及在什么情况下不需要搭建DNS服务器.在此之前,需要了解DNS中域(domain)和区域(zone)的基本概念,以及DNS资源记录的类型,如果对此不熟悉,可以参考我写的上一篇文章<Caching only DNS的设置与forwarding功能>. 一.为什么需要自己搭建DNS服务器? 搭建DNS服务器的原因大致有三点: (1)一般公司都有多台Server需要接入互联网上并提供服务,此时公司需要向ISP申请一个域(doma