前言:shell
重点步骤:找主配置文件,找启动脚本vim
ip解析域名,多用于测试缓存
www.sina.com.cn. 最后一个点是根,总体就是彻底合格域名安全
www是主机名称,sina二级域名,com.cn是顶级域名 .是根服务器
在服务安装完毕时,就是缓存服务器数据结构
[root@localhost ~]# vim /etc/named.conf options { '选项' listen-on port 53 { any; }; '监听地址全部' listen-on-v6 port 53 { ::1; }; directory "/var/named"; '目录在/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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { 192.168.10.0/24; }; '容许此网段前来解析'
#正向解析 zone "localhost" IN { '主机名,例kgc.com' type master; 'master类型,主服务器' file "named.localhost"; '区域数据文件名,A记录,能够解析主机头,' allow-update { none; }; '容许更新' allow-transfer { 173.16.16.2 } '从服务器的IP地址' }; #反向解析 zone "16.16.173.in-addr.arpa" IN { 'ip地址反写' type master; '主服务器' file "named.loopback"; '区域配置文件名' allow-update { none; }; '容许更新' };
16.16.173.in-addr.arpa 是ip地址的反写 正写是'173.16.16.?',?做为一个选项负载均衡
$TTL 1D '有效解析记录的生命周期' @ IN SOA @ rname.invalid. ( 'SOA标记、@域名、管理者邮箱' 0 ; serial '更新序列号,能够是10位之内的整数,当前0' 1D ; refresh '刷新时间,从新下载地址数据的间隔,1天' 1H ; retry '重试延时,下载失败后的重试间隔,1小时' 1W ; expire '失效时间,超过改时间仍没法下载则放弃,1周' 3H ) ; minimum '无效解析记录的生存周期 3小时' NS @ '@指本身' A 127.0.0.1 '回环地址,此行的首位没写,默认是本身的主机名,即输入本身的主机名就是在ping本身' AAAA ::1 ~
如果找不到主服务器,就会每1小时找一次,持续1w即一周dom
$TTL 1D '有效解析记录的生命周期' @ IN SOA @ rname.invalid. ( 'SOA标记、@域名、管理者邮箱' 0 ; serial '更新序列号,能够是10位之内的整数,当前0' 1D ; refresh '刷新时间,从新下载地址数据的间隔,1天' 1H ; retry '重试延时,下载失败后的重试间隔,1小时' 1W ; expire '失效时间,超过改时间仍没法下载则放弃,1周' 3H ) ; minimum '无效解析记录的生存周期 3小时' NS @ A 127.0.0.1 AAAA ::1 @ IN NS ns1.bdqn.com. '本身的域名叫作ns1.bdqn.com.' IN MX 10 mail.bdqn.com. '本身的邮件交换系统优先级别10的叫作mail.bdqn.com.' ns1 IN A 58.119.74.203 '主机名即主机头为ns1时,对应的ip地址58.119.74.203' www IN A 173.16.16.1 '主机名为www时,对应的ip地址为为173.16.16.1' mail IN A 173.16.16.4 ftp IN CNAME www 'cname,别名,即输入ftp至关于输入www' ~
[root@dns named]# rpm -qc bind '查看已安装bind软件的配置文件' /etc/logrotate.d/named /etc/named.conf /etc/named.iscdlv.key /etc/named.rfc1912.zones /etc/named.root.key /etc/rndc.conf /etc/rndc.key /etc/sysconfig/named /var/named/named.ca /var/named/named.empty /var/named/named.localhost /var/named/named.loopback [root@dns named]#
[root@dns named]# vim /etc/named.conf '配置主配置文件' options { listen-on port 53 { any; }; '监听地址修改成全部' listen-on-v6 port 53 { ::1; }; 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; }; '容许全部主机前来解析' /*
[root@dns named]# vim /etc/named.conf '配置主配置文件' zone "." IN { '根域,不要去动它' type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; '区域配置文件,接下来要配置它' include "/etc/named.root.key";
[root@dns named]# cd /var/named '去看一眼默认文件存放路径' [root@dns named]# ls chroot data dyndb-ldap kgc.com.zone named.empty named.loopback chroot_sdb dynamic kgc.com.local named.ca named.localhost slaves [root@dns named]# vim /etc/named.rfc1912.zones '配置区域配置文件'
以ipv6反向解析zone为界限,上面的是正向解析zone,下面是反向解析zonetcp
zone "kgc.com" IN { '建立一个kgc.com正向解析区域' type master; file "kgc.com.zone"; '存放文件在默认目录/var/named下,名为kgc.com.zone文件,如果没有须要本身建立' allow-update { none; }; }; zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN { type master; file "named.loopback"; allow-update { none; }; }; zone "0.0.10.in-addr.arpa" IN { type master; file "kgc.com.local"; allow-update { none; }; };
[root@dns named]# cp -p named.localhost kgc.com.zone '保留权限复制模板,重命名为kgc.com.zone' [root@dns named]# vim kgc.com.zone ''修改区域数据, $TTL 1D @ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS kgc.com. A 127.0.0.1 IN MX 5 mail.kgc.com. mail IN A 10.10.10.10 www IN A 9.9.9.9 ftp IN CNAME www * IN A 8.8.8.8
@ 表明变量,在这里指域名分布式
此时DNS的正向解析已经配置完毕
[root@dns named]# systemctl start named '启动服务' [root@dns named]# netstat -natp |grep named '查看端口状态-n 数字 -a 全部 -t tcp -p protocol 协议' tcp 0 0 192.168.139.132:53 0.0.0.0:* LISTEN 40771/named tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 40771/named tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 40771/named tcp6 0 0 ::1:53 :::* LISTEN 40771/named tcp6 0 0 ::1:953 :::* LISTEN 40771/named [root@dns named]# netstat -naup |grep named '-u udp' udp 0 0 192.168.139.132:53 0.0.0.0:* 40771/named udp 0 0 127.0.0.1:53 0.0.0.0:* 40771/named udp 0 0 192.168.122.1:53 0.0.0.0:* 40771/named udp6 0 0 ::1:53 :::* 40771/named
[root@dns named]# systemctl stop firewalld '关闭防火墙' [root@dns named]# setenforce 0 '关闭安全加强服务'
验证一下
新建一台虚拟机,网卡模式也设置为nat模式,而后指定dns
C:\Users\GSY>nslookup mail.kgc.com 服务器: UnKnown Address: 192.168.139.132 名称: mail.kgc.com Address: 10.10.10.10 C:\Users\GSY>nslookup qqq.kgc.com 服务器: UnKnown Address: 192.168.139.132 DNS request timed out. timeout was 2 seconds. 名称: qqq.kgc.com Address: 123.123.123.123
'也能够在本机的/etc/resolv.conf内输入dns服务器名,告诉主机dns的位置,进行本地验证 ' [root@dns named]# echo "nameserver 192.168.139.132" > /etc/resolv.conf [root@dns named]# nslookup www.kgc.com Server: 192.168.139.132 Address: 192.168.139.132#53 Name: www.kgc.com Address: 10.0.0.10
14 IN PTR www.kgc.com. 13 IN PTR ftp.kgc.com.
反向解析的区域数据文件配置
[root@dns named]# cp -p named.loopback kgc.com.local '建立的文件名与区域反向解析配置的文件名一致' [root@dns named]# vim kgc.com.local $TTL 1D @ IN SOA kgc.com. admin.kgc.com. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS kgc.com. A 14.0.0.14 14 IN PTR www.kgc.com. 13 IN PTR ftp.kgc.com. 2 IN PTR WWW.GSYDSG.com. ~
测试 nslookup 或者host均可以
[root@dns named]# systemctl restart named [root@dns named]# nslookup 14.0.0.2 '由于在配置文件中是大写的WWW,因此不是域名=' 2.0.0.14.in-addr.arpa name = WWW.GSYDSG.com. [root@dns named]# host 14.0.0.14 14.0.0.14.in-addr.arpa domain name pointer www.kgc.com. [root@dns named]# host 14.0.0.13 13.0.0.14.in-addr.arpa domain name pointer ftp.kgc.com. [root@dns named]#
www IN A 9.9.9.9 www IN A 7.7.7.7 www IN A 6.6.6.6 * IN A 8.8.8.8
验证同一域名对应到多个IP地址
C:\Users\GSY>nslookup www.kgc.com 服务器: UnKnown Address: 192.168.139.132 DNS request timed out. timeout was 2 seconds. 名称: www.kgc.com Addresses: 6.6.6.6 7.7.7.7 9.9.9.9
[root@dns named]# named-checkconf /etc/named.conf [root@dns named]# named-checkconf /etc/named.rfc1912.zones
没啥反应,由于是正常运转的,我把里面的数据改错验证一下
zoe "kgc.com" IN { '去掉个字母' type master; file "kgc.com.zone"; allow-update { none; }; };
[root@dns named]# named-checkconf /etc/named.rfc1912.zones /etc/named.rfc1912.zones:13: unknown option 'zoe'
错误改回来
[root@dns named]# named-checkconf -z /etc/named.rfc1912.zones zone kgc.com/IN: loaded serial 0 zone localhost/IN: loaded serial 0 zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0 zone 0.0.14.in-addr.arpa/IN: loaded serial 0 zone 0.in-addr.arpa/IN: loaded serial 0
-z 选项,还会查看其中的zone项是否有误
不带-z选项,只查看总体的语法
[root@dns named]# named-checkzone kgc.com /var/named/kgc.com.zone zone kgc.com/IN: loaded serial 0 OK
slave 从服务器
先管关掉防火墙再说
主配置文件/etc/bind/named.conf
数据文件 /var/named
程序 /usr/sbin/named
options { '众多选项' listen-on port 53 { 127.0.0.1; }; '监听此地址' listen-on-v6 port 53 { ::1; }; directory "/var/named"; '默认目录在/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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { localhost; }; '容许此主机名前来解析'
#正向解析 zone "localhost" IN { “主机名” type master; 'master类型,主服务器' file "named.localhost"; '区域数据文件名,A记录,能够解析主机头' allow-update { none; }; '容许更新' allow-transfer { 173.16.16.2 }; '从服务器的IP地址' }; zone "localhost" IN { “主机名” type slave; 'slave类型,从服务器' file “slaves/bdqn.com.zone”; allow-update { none; }; '容许更新' masters { 192.168.10.10; }; '主服务器的IP地址' }; #反向解析 zone "16.16.173.in-addr.arpa" IN { 'ip地址反写' type master; '主服务器' file "named.loopback"; '区域配置文件名' allow-update { none; }; '容许更新' };
以其中的named.localhost为模板带权限复制,名字改成区域配置文件中file参数的名字
$TTL 1D '有效解析记录的生命周期' @ IN SOA @ rname.invalid. ( 'SOA标记、@域名、管理者邮箱' 0 ; serial '更新序列号,能够是10位之内的整数,当前0' 1D ; refresh '刷新时间,从新下载地址数据的间隔,1天' 1H ; retry '重试延时,下载失败后的重试间隔,1小时' 1W ; expire '失效时间,超过改时间仍没法下载则放弃,1周' 3H ) ; minimum '无效解析记录的生存周期 3小时' NS @ A 127.0.0.1 AAAA ::1 @ IN NS ns1.bdqn.com. IN MX 10 mail.bdqn.com. mail IN A 173.16.16.4 ns1 IN A 58.119.74.203 ftp IN CNAME www www IN A 173.16.16.1
nslookup能够去检验
能够在/etc/hosts 和/etc/resolv.conf文件中输入dns服务器主机名
并确认,用以快速访问dns地址