配置DNS仅对本人自己的虚拟机,自己可以依据真实需要配置:
1、装需要用到的软件,可以到网站上去下,看准哦这里是依据我自身的条件
 # cd /etc/yum.repos.d/
 配置yum源



 2、# yum list all bind* 查看所有以bind开头的软件包,bind运行起来叫named,是名称服务,这个名称服务所提供的协议叫DNS,能够实现DNS服务的工具叫bind
我们这里只需再装上一个软件包,因为默认安装好了两个,这两个是bind-libs.i386                       30:9.3.6-4.P1.el5               installed
bind-utils.i386 ,所以再装上一个bind.i386就可以了,一定不要装bind-chroot.i386,因为装了以后配置文件的路径就变了
# yum install bind 安装bind
bind安装好之后我们必须要为他提供准备工作,第一、任何一个dns服务器,在接受到请求的域的解析不是它所负责的域时,要转向谁?要转向根,但是他怎么知道根在哪呢?这就是准备工作一,告知根的位置,写配置文件。
本地有个主机名是localhost IP:127.0.0.1 所以上来就要给
DNS服务器要想工作至少要有三个区域:根区域、localhost的正向解析区域、localhost的反向解析区域;每个区域都需要一个配置文件;
DNS服务器或bind的主配置文件默认是在/etc/named.conf,属主是root,属组是用户named,同时要想启用工作,需要区域文件,区域文件默认是在/var/named,文件名叫什么都是在主配置文件中定义好的
3、手动创建上面的几个文件,首先创建主配置文件
# ls /etc | grep named 查看有没有named文件 是没有的,安装bind默认是不安装namedserver的
# vim /etc/named.conf
options {
     directory "/var/named"; 定义工作目录



};



zone "." IN {        定义根



        type hint;  
        file "named.ca" ;
};



zone "localhost" IN {
        type master;
        file "localhost.zone";
};



zone "0.0.127.in-addr.arpa" IN {  反向解析,需要把网段反过来写
        type master;
        file "named.local";
};
:wq
# ll /etc/named.conf  看一下文件的属性 上面我们提到过主配置文件属主是root,属组是用户named
# chown :named /etc/named.conf
4、创建localhost的正向解析文件
  #  cd /var/named
  # dig -t NS . 查看根的域名服务器有哪些
  # vim localhost.zone
     $TTL 600
     localhost.     IN        SOA    localhost.     admin.localhost. (
                                     2012030601
                                     1H
                                     10M
                                     1W
                                     1D )
    localhost.                 IN        NS      localhost.
    localhost.                  IN        A       127.0.0.1
:wq
创建反向解析文件
# vim named.local
 $TTL 600
 @           IN       SOA        localhost.      admin.localhost. (
                                            2012030601
                                           1H
                                           10M
                                           1W
                                           1D )
             IN         NS             localhost.
1            IN          PTR          localhost.
:wq
# chown :named  localhost.zone named.local  将这两个文件的属组改为named
# service named configtest  检查语法
# service named  start
# netstat -tunlp | grep :53   注:named监听在udp tcp 53的端口上,说明已经启用了



接下来扩展DNS服务器让它能解析我们自己注册的域名,以magedu.com为例,这里是正向解析,首先编辑主配置文件去定义这个区域
# vim  /etc/named.conf  在原有内容下面加一行
  zone "magedu.com" IN {
              type master;
              file “magedu.com.zone”;
 };
写区域文件
# cd /var/named
# vim magedu.com.zone
$TTL 600    定义ttl值
# $ORIGIN  magedu.com.
@     IN           SOA               ns.magedu.com.     admin.magedu.com. (
                                               2012030601
                                               1H
                                               10M
                                               1W
                                               1D )                                     
             IN        NS            ns.magedu.com. 
             IN        MX     10    mail   10是优先级
ns           IN        A            172.16.27.1
mail         IN        A            172.16.0.1   定义mail服务器
www          IN        A            1.1.1.1   
ftp          IN        A            1.1.1.2
pop          IN        CNAME        mail         注:mail有个别名pop
www          IN        A           172.16.27.2      www可以有第二地址
imap         IN        A       1.1.1.1       一个ip也可以有多个主机名
 :wq
改属组
# chown :named  magedu.com.zone
# service named reload  要想让named生效不需要重启,只需要重新载入即可
# vim /etc/resolv.conf     要让本机解析,需要改下配置文件
     nameserver 172.16.27.1  注:nameserver指向172.16.27.1
# dig -t A www.magedu.com @172.16.27.1 本地解析若不改配置文件则在其后加上用谁解析
# dig -t NS magedu.com 看一下magedu.com的域名服务器ip是哪个



验证之前要改物理机的hosts文件在c盘 --> WINDOWS --> system32 --> drives --> etc --> hosts 在文件中添加一行



172.16.27.1  www.magedu.com




转载于:https://blog.51cto.com/4374568/798874