在resolv.conf下面配置的DNS服务器,以后系统中凡是使用域名的地方都会去指定的DNS服务器去解析IP。
server配置:[转]
1.前提:在构建DNS服务器之前最好先学习一下DNS的工作原理。
2.安装DNS套件:支持DNS的套件名称为bind和bind-utils,bind的名字源于很早以前美国的一个项目(印象中好象是^_^)。
3.DNS的相关文件:
设定文件为/etc/named.conf
zone的文件默认放在/var/named文件夹中。(zone可以看成是一个简单的配置文件)
3.配置DNS。首先查看/etc目录下有没有named.conf文件,这个是配置文件,对于DNS的正常启动非常关键。
现在假设我想把自己机器上的域名设置为linux.wellcom.com。下面是我的named.conf的内容:
options {
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
pid-file "/var/run/named/named.pid"; //can shutdown by rm file;
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";
//copy from web ,create cach-only DNS
forward only; //Only allow forword!
forwarders{
202.96.128.166;
202.96.128.86;
};
allow-query { any; }; //allow any client to query?
allow-transfer { none;};
recursion yes;
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint; //选择的 type 为 hint (root . 专用)
file "named.ca"; //设定档案的档名!预设为 named.ca或者named.root。
};
zone "wellcom.com" IN { //正解:表示wellcom.com这个域名,而"主机名+域名->IP"的记录文件就是
//named.wellcom.com
type master;
file "named.wellcome.com";
};
zone "0.0.127.in-addr.arpa"{ //反解:即“IP->hostName+domainName"的记录文件
type master;
file "named.127.0.0";
};
4.然后设置正解文件named.wellcom.com
$TTL 600 //Time To Live :呆在cache里面的时间。
; IN代表的是internet标准。而@代表相应的域名,如在这里代表wellcom.com,即表示
; 一个域名记录定义的开始。而linux.wellcom.com则是这个域的主域名服务器,而root.
; wellcom.com则是管理员的邮件地址。注意这里用.代表@符号。SOA表示授权开始。
@ IN SOA linux.wellcome.com. root.wellcome.com. (
2008081722 ; Serial
28800 ; Refresh
14400 ; Retry
720000 ; Expire
86400 ) ; minimum
; 主机的设定参数部分,@符号好像可以省略
@ IN NS linux ; linux.wellcom.com == linux
; NS表示这个主机是一个域名服务器,省略了后面的域。
@ IN MX 10 linux
; MX定义了邮件记录
linux IN A 127.0.0.1
; A定义了一条地址记录,主机名于ip地址的对应关系
www IN CNAME linux
; CNAME:定义了对应主机的一个别名,即www.wellcom.com == linux.wellcom.com
5.设置反解文件named.127.0.0
$TTL 600
@ IN SOA linux.wellcom.com. root.wellcom.com. (
2008081723 ; Serial
28800 ; Refresh
14400 ; Retry
720000 ; Expire
86400 ) ; Minimum
; The server's infomations
@ IN NS linux.wellcom.com.
1 IN PTR linux.wellcom.com.
;1表示的是127.0.0.1,同理2表示127.0.0.2。这个设置跟zone的设定有关。如果zone的设定为0.127.in-addr.arpa,则这里的数字可以用1.1代表127.0.1.1
6.测试:
调用命令:[service named start ]启动DNS服务器。
打开/etc/resolv.conf文件,往里面加入
search wellcom.com
nameserver 127.0.0.1
这样当你机器查找wellcom.com这个域名的时候就不会通过ISP的DNS了,而是连到自己机器上的DNS。
现在打开终端开始测试
[root@localhost named]# nslookup
> linux.wellcom.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: linux.wellcom.com
Address: 127.0.0.1
测试成功。
鸟哥的Linux学习笔记 DNS服务器知识
Linux DNS的负载均衡及子域委派