[root@os7-httpd1 ~]# rpm -ql bind
/etc/named.conf
/usr/lib/systemd/system/named.service
/usr/sbin/named #对外提供服务
# 1.数据库文件
/var/log/named.log
/var/named
/var/named/data
/var/named/dynamic
/var/named/named.ca #互联网13个根
/var/named/named.empty
/var/named/named.localhost
/var/named/named.loopback
/var/named/slaves
2.named.conf配置文件
- 修改named配置文件,设置所有人都能到本dns服务器查询
cat /etc/named.conf -n
12 options {
13 listen-on port 53 { localhost; }; localhost表示机器都能通过此机器进行上网
14 listen-on-v6 port 53 { ::1; };
15 directory "/var/named";
16 dump-file "/var/named/data/cache_dump.db";
17 statistics-file "/var/named/data/named_stats.txt";
18 memstatistics-file "/var/named/data/named_mem_stats.txt";
19 recursing-file "/var/named/data/named.recursing";
20 secroots-file "/var/named/data/named.secroots";
21 allow-query { localhost;any; }; # 对外提供服务,任何人都可以向我查询
22
3.nds记录域名和ip的对应关系,保存在名字解析数据库是个文本文件
- 数据库文件在:
cat /etc/named.conf -n
41 managed-keys-directory "/var/named/dynamic";
- 区域文件
要写在还要在cat /etc/named.rfc1912.zones
中写,也可以写在/etc/named.conf
里
zone "cnpc.com" { #域
type master; #主dns
file "cnpc.com.zone"; #/var/named/dynamic 数据库文件
};
4.资源定义记录格式
语法: name [TTL], IN(internat), rr_type ,value
1.@表示域cnpc.com或者jd.com 下面可以继承,所有下面可以不用写@
2.$TTL 1D #TTL 1D是指:记录缓存在NDS服务器上,或者客户端的缓存时间为1天,可以写在全局,也可以每行记录中单独写,86400(TTL)
3.IN(internat) #2. IN第一行写了,下面的每行记录,会继承IN,所有下面可以不用写IN
4. rr_type 资源记录包含A记录.NS记录等:
NS @ ## ns.cnpc.com.(当前域主dns服务器的名字)
A 127.0.0.1 ##最常见的 域名 到ip的记录
AAAA ::1 ##ipv6
5.value 就是 记录的值 比如A记录对应的 ip地址
5.soa记录,起始授权记录,一个区域解析库只能有一个SOA记录.必须位于解析库的第一条
格式:
name :当前区域的名字:例如:"baidu.com"
value: 有很多组成部分
- 当前区域的主dns服务器的FQDN,也可以使用当前区域的名字
- 当前区域管理员邮箱地址,邮箱的
@
要用.
代替 - 版本号,刷新时间等
cnpc.com.(域名) IN SOA nsadmin.cnpc.com.(管理员邮件地址) (
20220828; serial #版本号,这个域里面,内容更新一次,就要手动把20220828更新一次
2H; refresh #刷新时间#主备DNS服务器同步时间间隔,根据版本号进行复制对比,备用dns2小时去主看看有没有变化
1H; retry #重试时间#,主从同步,失败后,再次同步时间
1w; expire #备服务器从主服务器同步内容,如果从服务器1星期连接不到主服务器,那么从服务器,不能对外提供服务
3H; minimum #否定答案TTL,向本dns服务器查询,如果向我查wwwwww.aaa.com,的缓存TTL时间
)