Linux DNS配置(转)

从bind安装到配置全过程.所有linux平台都支持,带注释

从安装到配置.不会架设DNS的人来.不是RPM安装的.
如有疑问加QQ:3645636


下载软件:
ftp://ftp.isc.org/isc/bind9/

我下载的是最新版本9.5.0b2

我存在/usr/local/lapm
cd /usr/local/lapm       //进入文件所在的目录
tar -zxvf bind*          //解压bind-9.5.0b2,*代表通配符
cd bind*                 //进行
./configure --prefix=/usr/local/named /    //将bind安装到指定的目录
----enable-threads                         //开启多线程,跟迅雷下载的哪个多线程意思差不多,更多参数,咨询--help
make                          //编译
make install                   //编译安装

cd /usr/local/named            //进行bind目录
sbin/rndc-confgen > etc/rndc.conf       //生成密匙文件
tail -10 rndc.conf | head -9 | sed s/#/ //g > named.conf       //在当前etc目录生成named.conf文件
cd etc
打开/usr/local/named/etc/named.conf文件
添加以下文件:
清空named.conf文件里的内容,加入以下配置
key "rndc-key" {
        algorithm hmac-md5;
        secret "j4TzPFdh8r6b+QVY2VXWvw==";
};

controls {
        inet 127.0.0.1 port 953
                allow { 127.0.0.1; } keys { "rndc-key"; };
};                                                           //密匙

options {
directory "/var/named";          //域名文件存放的绝对路径
pid-file "named.pid";              //如果bind启动,自动会在/var/named目录生成一个named.pid文件,打开文件就是named进程的ID
};

zone "." IN {
        type hint;          //根域名服务器
        file "named.root";  //存放在/var/named目录,文件名为named.root
};

zone "localhost" IN {
        type master;     //类型为主域名服务器
        file "localhost.zone";  //本地正向解析的文件
        allow-update { none; };  
};

zone "0.0.127.in-addr.arpa" IN {
        type master;      //类型为主域名服务器
        file "named.local";   //本地反向解析的文件
        allow-update { none; };
};

zone "test.com" IN {      //建立test.com域
        type master;      
        file "test.zone";    //test.com域映射IP地址可在此文件编写
        allow-update { none; };
};


zone "1.168.192.in-addr.arpa" in {   //反向解析
        type master;   
        file "test.local";              //存放反向解析的文件
        allow-update { none; };
};


打下依次建立这些区域文件
mkdir /var/named
cd /var/named
vi named.root    //根域名服务器的存放位置,比喻hp.com域不在自己的解析范围,自动将解析交给根域名服务器
named.root内容是不定期更新的,最新的内容都是去ftp://rs.internic.net/domain/下载

vi localhost.zone  //建立本地解析文件
$TTL    86400
$ORIGIN localhost.
@                       1D IN SOA       @ root (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum

                        1D IN NS        @
                        1D IN A         127.0.0.1


vi named.local     //建立本地反解析文件

$TTL    86400
@       IN      SOA     localhost. root.localhost.  (
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
              IN      NS      localhost.

1       IN      PTR     localhost.


vi test.zone    //建立要解析的域名
$ttl    1D
@               IN SOA  test.com.  root.test.com. (

                                       1053891162
                                        3H
                                        15M
                                        1W
                                        1D )

                        IN NS          test.com.
                        IN MX    5    test.com.
www                IN A          192.168.1.100    //将www.test.com域名指向192.168.1.100
china                IN A          198.182.196.56  //将china.test.com域名指向www.kernel.org


vi test.local             //建立test域的反向解析
$TTL 86400
@ IN SOA test.com. root.test.com.(
20031001;
7200;
3600;
43200;
86400);
@ IN NS test.com.
100 IN PTR www.test.com.  

启动name

/usr/local/named/sbin/named      //加入参数-g,可以实时查看named的状态及错误

修改本地DNS,将服务器改为自己的IP
vi /etc/resolv.conf
nameserver 192.168.1.100   
:wq   //保存退出

测试结果:
[root@localhost ~]# ping www.test.com
PING www.test.com (192.168.1.100) 56(84) bytes of data.
64 bytes from www.test.com (192.168.1.100): icmp_seq=1 ttl=64 time=0.034 ms
64 bytes from www.test.com (192.168.1.100): icmp_seq=2 ttl=64 time=0.054 ms
64 bytes from www.test.com (192.168.1.100): icmp_seq=3 ttl=64 time=0.061 ms
64 bytes from www.test.com (192.168.1.100): icmp_seq=4 ttl=64 time=0.051 ms

--- www.test.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 2999ms
rtt min/avg/max/mdev = 0.034/0.050/0.061/0.009 ms

[root@localhost ~]# host www.test.com
www.test.com has address 192.168.1.100


[root@localhost ~]# nslookup
> www.test.com
Server:         192.168.1.100
Address:        192.168.1.100#53

Name:   www.test.com
Address: 192.168.1.100


反向解析测试:
[root@localhost ~]# host 192.168.1.100
100.1.168.192.in-addr.arpa domain name pointer www.test.com.

如有不明白之处,本人自当努力解答,尽量用Google,或者用google.com.tw去台湾搜索!


关于named.root这个名字是自行定义的,是根互联网的根域名服务器,我要解析www.hp.com,首先,我们的本地DNS服务器没有发现自已域里掌控com域,将这个请求推给name.root里定义的根域名服务器  com域名服务器再寻找hp.com 接着由www.hp.com接手,再返回给用户主机对应的IP地址. 由于网络是在美国发源的. 都是从小到大,比喻com是商业,hp是一个商业公司,www.hp.com是商业网站,
support.hp.com是技术支持网站. 而实际解析顺序是com.hp.www

named.root文件是根据网络环境变化而变化的.是不定时更新的,所以得去下载.下载地址:ftp://rs.internic.net/domain

你可能感兴趣的:(Linux DNS配置(转))