日记 [2007年03月12日]redhat9 DNS配置

上周五建的NAT除了没有DNS解析功能,其他都ok了
安装DNS服务
直接从redhat9的安装光盘里面找到 bind-9.2.1-16.i386.rpm安装就可以了
启动DNS服务,service named start
加入开机自动启动 chkcfg --add named on
安装完毕以后,因为没有默认配置文件,需要手动建立named.conf文件!~
cd /etc
vi named.conf
是个空白文件,在里面输入以下内容:
options {
        directory "/var/named";
};

zone "." {
           type hint;
           file "named.ca";
};
保存退出
然后建立/var/named文件夹
cd /var
mkdir named
cd named
然后建立根域.的file文件named.ca
首先在/etc/resolv.conf文件里面设置好DNS服务器
echo nameserver 211.84.112.1 > /etc/resolv.conf
dig -t NS . 会列出13个根DNS服务器地址(a-m)
dig -t NS . > /var/named/named.ca
采用如下方式生成rndc的配置文件:
rndc-confgen >/etc/rndc.conf
vi /etc/rndc.conf  打开查看该文件,可以看见最后面13行的内容已经用#注释了,而且说明该部分内容要求追加到/etc/named.conf文件里面!

下面将结尾的13行内容追加到named.conf文件中:
tail  +13 /etc/rndc.conf  >> /etc/named.conf   注意是追加,而不是覆盖
追加完后编辑named.conf去掉对应行的#号
查看运行记录:
tail /var/log/messages
输入rndc status 可以查看rndc的状态
返回:
number of zones: 0
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/1000
tcp clients: 0/100
server is up and running
之类的说明工作正常,DNS已经可以解析域名了!~~
可以试试查询效果!~
将/etc/resolv.conf 文件里面的DNS设置为本机解析:
echo "nameserver 127.0.0.1"  > /etc/resolv.conf

然后可以查询dns了,比如host [url]www.mtx8.com  [/url]等待一会将返回对应的服务器信息,因为需要通过根域名服务器逐级查询该域名,所以第一次比较慢,后来将被服务器缓存起来,再次查询速度将非常快!OK,本机担任DNS域名解析效果已经可以简单的投入使用!

第二部分: 解析Localhost主机回环主机域
上面没有添加localhost域,无法通过dns解析localhost主机
可以用host localhost 来测试

下面要加入解析localhost 127.0.0.1回环域

在/etc/named.conf文件中加入zone区域:
接着上面的根域后面加入:
zone "localhost" {
     type  master;
     file "named.local";
};
保存退出

编辑/var/named/named.local 文件:
vi /var/named/named.local
内容格式要求如下:
@  1D IN SOA   localhost.  root.localhost (
              2004081201    ;serial    //序列号,表示域的更新信息
              1H            ;refresh   //多长时间刷新一下其他域名服务器的记录 ,1小时
              15M           ;retry     //辅助服务器向主服务器(或相反)发送信息重试的次数 ,15分钟
              1W            ;expire    //重试多少次以后过期的时间 1周
              1D   )        ;TTL       //最小存活期限,表示时间是1天
localhost.  IN   NS    localhost.
locahost.   IN   A     127.0.0.1

上面的内容第一行@表示named.conf文件里面zone 部分定义的区域
IN 表示互联网类型
SOA是任何区文件里都需要的定义命令, 定义localhost.是一个域名,  而root.localhost表示管理员信箱root@localhost 电子邮箱的@必须用.来表示  这里可以简写为root,后面的没有写完整的部分默认由本域的域名补全,表示本域的邮箱用户名,省略域名以后就不能加.来表示@了!
接着的小括号(开始里面的每行一个意思,为分号;后面的是注释说明文字,可以不写注释部分,但是数字不能省略,一行写一个
括号结束以后的接着的第一行表示localhost.域的dns服务器是localhost.主机
前面的是域名,后面的是主机,中间是类型
第二行是localhost.主机的A记录是 127.0.0.1
因为localhost.域可以用@表示,所以可以用
@   IN  NS  @ 来表示
因为第一个域表示域名,所以前面的@或localhost.都可以省略!
这样上面的最后2行可以简写为
     IN   NS  @
     IN   A   127.0.0.1

用rndc重新加载一下:
rndc  reload
然后测试Localhost主机是否能否解析:
host localhost
可以看见解析成功!比如:下面的测试A记录和NS记录
host -t A localhost
host -t NS localhost

第三部分:建立mtx8.com域名解析区域
/vi /etc/named.conf
增加下面的区域:
zone  "mtx8.com" {
    type  master;
    file "mtx8.com.zone";
};

然后到/var/named/下面建立mtx8.com的zone文件:
vi /var/named/mtx8.com.zone
内容如下:
@ 1D IN   SOA mtx8.com.    wuwentao2000.126.com (
              2004081201  ;serial
              1H          ;refresh
              15M         ;retry
              1W          ;expire
              1D )        ;TTL
       IN NS  dns.mtx8.com.
       IN MX 10 mail
dns    IN A   211.84.114.205
www    IN A  211.84.112.125
blog   IN CNAME www
wuwentao IN A  211.84.114.100
mail  IN CNAME www


第四部分:建立反向解析区域:
127.0.0.0的反向区域
编辑/etc/named.conf文件加入:
zone "0.0.127.in-addr.arpa" {
       type master;
       file "127.0.0.zone";
};
编辑/var/named/127.0.0.zone
$TTL 1D
@   IN  SOA   @  root.localhost.   ( 20050330 1H 15M 1W  1D)
    IN  NS    localhost.
1   IN  PTR   localhost.
保存退出
rndc  reload
host  127.0.0.1  测试效果
dig -x   127.0.0.1
dig  -t  PTR  1.0.0.127.in-addr.arpa

第五部分:增加mtx8.com的反向记录

编辑/etc/named.conf增加以下记录:
zong "112.84.211.in-addr.arpa" {
   type master;
   file "211.84.112.zone";
};

建立/var/named/211.84.112.zone
vi /var/named/211.84.112.zone
输入以下内容:
@   IN  SOA  mtx8.com.     wuwentao2000.126.com. (
      20060331
      36000
      7200
      3600000
      86400  )
    IN  NS  dns.mtx8.com.
125  IN  PTR  [url]www.mtx8.com.[/url]
保存退出
rndc reload
host  [url]www.mtx8.com[/url]测试效果

第六部分  子域授权
再已经建立的/named/mtx8.com.zone文件添加一条NS记录
(添加*.home.mtx8.com的子域,DNS服务器为dns.home.mtx8.com,对应IP为:211.84.114.1)
home     IN  NS    dns.home
dns.home IN  A     211.84.114.1
保存退出
rndc  reload

然后到211.84.114.1配置*.home.mtx8.com区域
    

第七部分: 辅助域名服务器的配置
/etc/named.conf文件的配置如下:
zone "mtx8.com" {
     type "slave";
     file "mtx8.com.zone";
     master { 211.84.114.205; };
};
注意master { 211.84.114.205; };的格式,中间的主服务器与括号前后都需要有空格
加入上面的部分即可,而它的配置文件mtx8.com.zone将会自动从主服务器下载,无需手动配置了
rndc reload
ls /var/named/   查看是否将mtx8.com.zone文件从主服务器下载下来了!
tail  /var/log/messages  查看named服务器重新加载配置的启动信息
ls  -ld /var/named

注意named服务进程运行的用户帐号和/var/named目录的写入文件权限!

第八部分:修改服务进程执行的权限为普通用户,不用root帐号来运行named
在/etc/named.conf文件里面设置pid-file选项:
options {
.....这里是其他的设置信息,再现有的部分增加下面的一行:
pid-file "/var/named/named.pid";
};
接着添加 named用户:
useradd -s /bin/false -d /dev/null  named
chown named.named /var/named
chmod 700 /var/named
killall -9 named   关闭已经以root帐号运行的named进程
named -u named     用-u选项设置named 进程运行的用户为named帐号
将启动信息添加到/etc/rc.local文件里面,设置为开机自动运行

第九部分:其他设置选项
options部分
forwarders { 211.84.112.1; };      设置服务器域名无法解析时将把请求转发到该服务器去解析
all-transfer { 211.84.114.100; };  只允许该IP的机器下载zone文件,一般是辅助域名服务器地址
all-query  { 211.84.114.1/24; };   允许使用该DNS进行解析域名的客户端IP地址范围

你可能感兴趣的:(职场,dns,休闲,REDHAT9)