host,dig都是通过DNS查询,对于一台服务器来说,我们自己的应用环境总有一台叫localhost的主机,默认情况下localhost的主机总是在hosts文件定义,为取代hosts文件,需要把localhost加进DNS服务器,任何一台有网络的主机都 会有一个回环设备地址,回环设备地址没有相应的主机名,很多服务都 会起不来。
添加localhost域
#vi /etc/named.conf 添加
zone “localhost” { 区名叫localhost
type master; 表示这是主域服务器,数据库是自己维护的,不需要其他人管理
file “named.local”; 数据库文件(区文件)位置
};
编缉/var/named/named.local
@ 1D IN SOA localhost. root (
2006081201编号更新一次自己加1,当发生改变时,会通知其他域名服务器更新数据库
1H 多少时间刷新其他DNS的数据库记录
15M 主向从DNS服务器发送信息出现错误,会隔15分钟再重试
1W 如果重试还有错,一星期后过期
1D ) 缓存保存时间,默认为1天
IN NS @ 指定这个域的DNS服务器
IN A 127.0.0.1 指定DNS服务器的IP地址
在这个文件里必须指定这个文件所服务的域的范围,到底为哪个域服务,第一个字段,一般是域名或主机名,@表示当前的域名,就是前面zone后面的那句”localhost”,localhost将作为一个变量传递给named.local文件
第二个字段,表示域类型,IN为互联网类型
第三个字段,记录类型,任何区文件里都有一条SOA记录。还有其他记录类型,如NS域名服务器,A地址,接着后面是当前域的域名和管理者信息,管理者信息是一个邮箱地址,上面使用了缩写,全写应该是root.localhost.
注意不能用@,因为前面说过了,这是表示当前域名,并且最后是以点结束。
小括号前后要有空格,小括号包括的是整个域的管理信息。
localhost. IN NS localhost. 表示localhost. 域的DNS服务器为localhost
localhost. IN A 127.0.0.1 表示localhost主机IP地址为127.0.0.1
主机名,域名要以点结尾,表示结束。相同记录可省略某个字段
(二十七)
增加一个正向区
/etc/named.conf 添加
zone “chinaitlab.com” {
type master;
file “chinaitlab.com.zone”;
};
/var/named/chinaitlab.com.zone:
@ 1D IN SOA chinaitlab.com. root (
2006081201
1H
15M
1W
1D )
IN NS ns
IN MX 10 mail
ns IN A 192.168.0.22
www IN A 10.0.0.1
news IN CNAME www
技巧:
#history 显示历史记录(执行过的命令)
#history 20 显示最近20条操作记录
#history -c 清空历史记录
vi中查找“-c”字符,使用“:/\-c /代表查找 \代表转义 (二十九)
子域授权
主服务器的/etc/named/chinaitlab.com.zone
domain IN NS ns.domain
ns.domain IN A 192.168.0.2
在父域chinaitlab.com的区文件中,指定子域domain的DNS服务器为ns.domain,并添加A记录。当查询domain.chinaitlab.com域的主机时,将会通过ns.domain.chinaitlab.com这台子域服务器来查询,但无法子域服务中查找父域中的主机,说明父域和子域之间是单向的。
当使用#host ns.domina.chinaitlab.com查询时,仍无法查询成功,虽然区文件中定义了ns.domain的A记录,但我们查询的是domain子域的主机,它将去192.168.0.2的子域服务器中查找主机记录,但现在子域服务器还没有配置。
上面的ns.domain也可改成:
domain IN NS domain
domain IN A 192.168.0.2
用父域的domain主机名指向domain子域,不管子域DNS主机名怎 么改,只要能指向子域的DNS服务器就行。
登录子域服务器192.168.0.2
按照以前的设置编译安装或rpm安装,然后
#named -u named 启动
在/etc/named.conf添加
zone “domain.chinaitlab.com” {
type master;
file “domain.chinaitlab.com.zone”;
};
编缉/var/named/domain.chinaitlab.com.zone
$TTL 1D
@ IN SOA @ root (
2006091201
1H
15M
1W
1D )
IN NS ns.
ns IN A 192.168.0.2
www IN A 192.168.0.3