BIND
- 安装
NS服务器软件:bind,powerdns,unbound
BIND相关程序包:yum list all bind*
bind:服务器
bind-libs:相关库
bind-utils:客户端
bind-chroot: /var/named/chroot/
BIND程序名:named - bind服务器
端口号:53/udp 用于解析地址FQDN <-- --> IP,主从服务器数据同步(用于对主服务器数据库进行查询)
53/tcp 用于主从服务器同步
- 服务脚本和名称:
/etc/rc.d/init.d/named(centos 6)
/etc/named.conf(centos 7) – 修改下面两项
listen-on … {localhost;}
allow-query {any;}
/usr/lib/systemd/system/named.service - 主配置文件:
/etc/named.conf
/etc/named.rfc1912.zones
/etc/rndc.key
解析库文件:/var/named/ZONE_NAME.ZONE (修改文件属组chgrp named ZONE_NAME.ZONE) - 注意:
一台物理服务器可同时为多个区域提供解析
必须要有根区域文件;named.ca
应该有两个(如果包括ipv6的,应该更多)实现localhost和本地回环地址的解析库
rndc:remote name domain controller默认与bind安装在同一主机,且只能通过127.0.0.1连接named进程
提供辅助性的管理功能;953/tcp - 配置文件
主配置文件:
全局配置:options {};
日志子系统配置:logging {};
区域定义:本机能够为哪些zone进行解析,就要定义哪些zone
zone “ZONE_NAME” IN {};
注意:任何服务程序如果期望其能够通过网络被其它主机访问,至少应该监听在一个能与外部主机通信的IP地址上
缓存名称服务器的配置:
监听外部地址即可
dnssec: 建议关闭dnssec,设为no
-
配置主DNS服务器
主DNS名称服务器:
在主配置文件中定义区域
ZONE_NAME<---->IP
zone “ZONE_NAME” IN {
type {master|slave|hint|forward};
file “ZONE_NAME.zone”;
};
定义区域解析库文件
出现的内容
宏定义
资源记录
主配置文件语法检查
named-checkconf
解析库文件语法检查:
named-checkzone “123.com” /var/named/123.com.zone
配置生效:
rndc reload 或 service named reload
主区域示例$TTL 86400 $ORIGIN 123.com. @ IN SOA ns1.123.com. admin.123.com ( 2015042201 1H 5M 7D 1D ) IN NS ns1 IN NS ns2 IN MX 10 mx1 IN MX 20 mx2 ns1 IN A 172.16.100.11 ns2 IN A 172.16.100.12 mx1 IN A 172.16.100.13 mx2 IN A 172.16.100.14 websrv IN A 172.16.100.11 websrv IN A 172.16.100.12 www IN CNAME websrv
-
测试命令
- dig [-t type] name [@SERVER] [query options]
dig只用于测试dns系统,不会查询hosts文件进行解析
查询选项:
+[no]trace:跟踪解析过程 : dig +trace
- dig [-t type] name [@SERVER] [query options]