|
DNS服务管理
主配置文件:/etc/named.conf ,注:语句后面的 ; 号 [root@bogon named# vi /etc/named.conf options { #全局选项 listen-on port 53 { 127.0.0.1;|192.168.4.150; }; #默认监听本机的53号端口,可注释掉或调整为指定ip ,注ip地址后加";" listen-on-v6 port 53 { ::1; }; #开启ipv6 监听,可注释掉 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"; allow-query { localhost|any; }; #授权为指定的主机解析,默认只为本机解析,可调整为any或注释掉 recursion yes|no; #递归查询,默认开启 dnssec-enable yes; #sec功能,与安全加密传输相关的选项,可注释掉 dnssec-validation yes; #同上一条,可注释掉 bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; pid-file "/run/named/named.pid"; #named 启动文件pid session-keyfile "/run/named/session.key"; allow-transfer { none|ip; }; #允许区域传送的主机;可拒绝所有、指定ip传送,默认开启,建议指定ip进行区域传送};logging { #日志子系统配置 channel default_debug { file "data/named.run"; severity dynamic; };};zone "." IN { #根区域定义,若要做内网根服务器,要注释掉 type hint; file "named.ca";};include "/etc/named.rfc1912.zones"; #加载指定区域文件include "/etc/named.root.key";
7 E* z: o! | Z7 R: j# I
/ Q3 f! p6 s2 K! Q) c9 g R$ e5 e
3 D6 q) K9 r0 v6 L8 O* B[root@bogon ~# vi /etc/named.rfc1912.zones zone "itwish.cn" IN { #区域记录 type master|slave|forward|hint; #类型,主dns服务器、辅助dns服务器、转发dns、根dns服务器 file "itwish.cn.zone"; #区域数据库文件 allow-transfer { 192.168.4.120; }; #允许区域传送的主机};
* ?; T/ h. t9 u9 [ a% b5 o ) f9 J* c e8 S; _" ^* D8 `
+ Z( H' E# b0 o[root@bogon ~# vi /var/named/itwish.cn.zone $TTL 1D #默认的TTL值@ IN SOA ns1 admin.itwish.cn. ( #SOA记录,记录域中的主DNS服务器,一个区域解析库中只能有且仅能有一个SOA记录,必须位于解析库的第一条记录 2018061004 ; serial #序列号 1D ; refresh #主从复制的时间间隔 1H ; retry #如果主从复制失败重试时间 1W ; expire #失效时间 3H ) ; minimum #否定答案的TTL值 IN NS ns1 #名字服务器记录 IN NS ns2 #针对itwish.cn区域,ns1与ns2共2台ns服务器,实现主从复制功能 IN MX 10 mail #邮件mx记录 ns1 IN A 192.168.4.110 #正向解析记录ns2 IN A 192.168.4.120* IN A 192.168.4.110 #泛域名解析,解析未找到的主机则返回该ip地址www IN CNAME ns1 #别名记录mail IN A 192.168.4.110tech IN NS ns3.tech #子域名字服务器记录 IN NS ns4.tech #针对tech.itwish.cn区域,ns3与ns4共2台ns服务器,实现主从复制功能ns3.tech IN A 192.168.4.130ns4.tech IN A 192.168.4.1405 l# m! `- O* a8 J& |& r5 T. w' W
4 [ q+ t0 k" ~. L- T
& T" O, A& K) N* Z) T1 W
[root@bogon named# vi /etc/named.rfc1912.zones zone "4.168.192.in-addr.arpa" IN { #定义反向区域名称 type slave; masters { 192.168.4.120; }; file "slaves/192.168.4.zone"; allow-transfer { none; };};[root@bogon named# vi /var/named/192.168.4.zone $TTL 3H@ IN SOA ns1.itwish.cn. adminns.itwish.cn. ( #第一条为SOA记录 20180522012 ; serial 1D ; refresh 1H ; retry 2W ; expire 24H ) ; minimum IN NS ns1.itwish.cn. IN NS ns2.itwish.cn.110 IN PTR ns1.itwish.cn. #PTR 记录120 IN PTR ns2.itwish.cn.. k& [. ^. t/ Q! M( a8 N( e
$ l) `7 h3 d- o/ G0 A. ~" R
& ?8 y t2 }( Z( j9 e& k" @ 资源记录的格式:name① [TTL]② IN③ Rrtype④ Value⑤ 注:FQDN中最后的 . 号 ②TTL (Time- To-Live):表示一条域名解析记录在DNS服务器上缓存时间;例如$TTL 1D的意思是默认的TTL值为1天 ③IN:关键字 ④dns资源记录类型(Resource Record),包括SOA ,NS ,MX ,A记录 ,AAAA,PTR ,CNAME 等 ⑤Value ,通过对以上记录类型示例分析——针对不同的资源记录类型,Value值也不尽相同 SOA:有n个数值,主DNS服务器及邮箱地址;最主要的是主DNS服务器,格式可为相对名称或FQDN NS:DNS服务器的FQDN(或相对名称) 如 IN NS ns1
- S1 \, q$ X+ _% Q MX:包含优先级和FQDN(或相对名称),如 IN MX 10 mail
6 ]" q2 b2 W' Y7 N A:ip地址 ,如 ns1 IN A 192.168.4.110
( V) {/ _1 y/ u; Y h$ c+ q1 v2 P CNAME:FQDN(或相对名称),如 www IN CNAME ns1 ) n' Q& x8 N- p$ {$ i$ \$ L2 M
PTR:FQDN ,如 1 IN PTR localhost. 8 g, R4 y8 A" U* n ?( M, Z, I
DNS记录类型详解及演示
' w7 r/ G: [8 L) _% l4 a, Q3 z
(1)SOA:Start of Authority 起始授权记录,记录域中的主DNS服务器,一个区域解析库中只能有且仅能有一个SOA记录,必须位于解析库的第一条记录 @ IN SOA ns1 admin.itwish.cn. ( # SOA记录 2018061004 ; serial #序列号 1D ; refresh #主从复制的时间间隔 1H ; retry #如果主从复制失败重试时间 1W ; expire #失效时间 3H ) ; minimum #否定答案的TTL值#注释 @:区域名称 itwish.cn,通常可简写为@ 符号IN:关键字,可省略SOA:资源记录类型ns1:主dns服务器的名称,可以是相对名称ns1或 FQDN ns1.itwish.cn.admin.itwish.cn. :邮箱地址,把@转换成. ,如邮箱admin@itwish.cn 格式为admin.itwish.cn.' J: E/ x& E0 B: W) j! a
; T+ A5 D0 l6 w0 I0 z
( J) T6 U$ P% [0 _# u
(2)NS :Name server 域名服务器,记录指定负责给定区域的名称服务器 ,注:区域内包含几条NS记录,就需对多台NS服务器配置相对应的A记录 ,示例为2台NS服务器ns1 和ns2 ,就需配置ns1 和ns2 服务器的A记录 IN NS ns1 #名字服务器记录 IN NS ns2 #针对itwish.cn区域,ns1与ns2共2台ns服务器,实现主从复制功能ns1 IN A 192.168.4.110 #正向解析记录ns2 IN A 192.168.4.120 #注释 named :可省略,代表itwish.cn 区域 IN:关键字,可省略NS:资源记录类型 ns1:主dns服务器的名称,可以是相对名称ns1或 FQDN ns1.itwish.cn. ns2:针对itwish.cn区域,ns1与ns2共2台ns服务器,实现主从复制功能
# G; V9 c* Z0 U' T# J+ X
( N; ^, M( A6 \. N
( f8 j7 j+ n/ S0 [5 t3 g* w8 ` (3)MX :邮件交换记录 ,记录列出了负责接收发到域中的电子邮件的主机记录 IN MX 10 mail #邮件mx记录 #注释 named :可省略,代表itwish.cn 区域 IN:关键字,可省略MX:资源记录类型 mail:邮件交换记录名称,可以是相对名称mail或 FQDN mail.itwish.cn.
# I+ _+ [5 ~0 _( n: X8 O
% ?! f0 z/ R: d9 m; [8 g- b 3 P: I) W+ \" |+ P9 `$ Q6 h5 n( ~; _
(4)A记录 :FQDN --> IP ,列出特定主机名的 IP 地址 ns1 IN A 192.168.4.110 #正向解析记录ns2 IN A 192.168.4.120#注释 ns1 :主机名,可以是相对名称ns1或 FQDN ns1.itwish.cn.IN:关键字,可省略A:资源记录类型 192.168.4.110:ip地址; l/ b/ ?- Q* V H1 @8 P
4 c' {/ [# b/ H8 m6 k G7 G
! z- K1 E3 f- C5 j. i6 e7 u (5)AAAA:FQDN-->ipv6 (6)PTR:指针记录 IP --> FQDN ,只能定义在反向区域数据文件中,反向区域名称为逆向网络地址加.in-addr.arpa.后缀组成,如 “0.0.127.in-addr.arpa” 反向解析区域 1 PTR localhost.#注释 1:ip地址IN:关键字,可省略PTR:资源记录类型 localhost. :主机名称,可以是相对名称或 FQDN
" L+ s" I" w8 s: y- A3 ~
1 I& g5 a; v1 u
# } l6 w; z- ` (7)CNAME :别名记录 ,此记录指定标准主机名的别名 www IN CNAME ns1 #别名记录#注释 www:主机别名,可以是相对名称或 FQDNIN:关键字,可省略CNAME:资源记录类型 ns1 :主机名称,可以是相对名称或 FQDN
" v# u1 ?( q( `/ \0 g: `" W
- R$ ~8 w$ E# u7 k! ]% C5 x
$ T; Z2 \! n0 p. T1 m- [: C* X; F语法:dig [@server] [-b address] [-c class] [-f filename] [-k filename] [-m] [-p port#] [-q name] [-t type] [-x addr] ! P: a, ~) P0 j& Q( _
[-y [hmac:]name:key] [-4] [-6] [name] [type] [class] [queryopt...] 常用选项:1 M5 f- F2 r1 h0 N3 b
-x addr:测试反向解析 -t type:指定查询记录类型 -t axfr ZONE_NAME @SERVER :模拟区域传送5 V4 e: G1 B* {' D' \- }
-t NS . :查询根DNS服务器
+ Q( ^; N$ j$ b. I7 h -f filename :通过从文件 filename 读取一系列搜索请求加以处理 -p port# :查询一个非标准的端口号,标准的DNS端口号 53 +[no]trace :[不]适用迭代 +[no]tcp :是否使用tcp +[no]recurse:是否使用递归host reload: 重载主配置文件和区域解析库文件 reload zonename: 重载区域解析库文件 retransfer zonename: 手动启动区域传送,而不管序列号是否增加 notify zonename: 重新对区域传送发通知 reconfig: 重载主配置文件 querylog: 开启或关闭查询日志文件/var/log/message trace: 递增debug一个级别 trace LEVEL: 指定使用的级别 notrace:将调试级别设置为 0 flush:清空DNS服务器的所有缓存记录 rndc:密钥 . t9 D; e$ E+ ^+ ]% g
rndc:持有一半密钥,保存于rndc的配置文件中 BIND:持有一般密钥,保存在主配置文件中 rndc的配置文件/etc/rndc.conf # rndc-confgen -r /dev/urandom > /etc/rndc.conf 生成密钥 # named-checkconf:检查配置文件的语法 # named-checkzone "itwish.cn" /var/named/itwish.cn.zone :查询区域数据库文件的语法 # service named configtest :检查所有区域文件的语法 & j- u7 B/ a3 y U5 w3 V8 ^8 E
DNS正向解析,反向解析,主从复制,子域委派,区域转发,acl 及view视图案例
DNS正向解析案例配置
$ C: h S( a3 n! x1 K5 D; L
1)安装bind[root@ns1 ~# yum install bind bind-utils -y #yum 安装bind [root@ns1 ~# chkconfig named on [root@ns1 ~# service named startStarting named: named: already running [ OK [root@ns1 named# ss -tunl #确认named 进程启用,tcp 及 udp 53端口处于监听状态Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNCONN 0 0 192.168.23.110:53 *:* tcp LISTEN 0 3 192.168.23.110:53 *:* 2)停止iptables 和selinux 功能[root@ns1 ~# service iptables stop #停止iptables 服务[root@ns1 ~# chkconfig iptables off[root@ns1 ~# vi /etc/selinux/config SELINUX=disabled #修改为disabled,其他行注释掉,禁用selinux功能3)定义主配置文件[root@ns1 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.110; }; #定义监听指定ip 53端口 directory "/var/named"; allow-query { any; }; #允许给所有客户端请求解析 recursion yes; #允许递归};include "/etc/named.rfc1912.zones";3)定义区域配置文件[root@ns1 ~# vi /etc/named.rfc1912.zones zone "itwish.cn" IN { #区域定义 type master; #类型,主服务器 file "itwish.cn.zone"; #区域数据库文件,指向/var/named/itwish.cn.zone};4)新建区域解析数据库文件 /var/named/itwish.cn.zone[root@ns1 ~# vi /var/named/itwish.cn.zone $TTL 1D@ IN SOA ns1 admin.itwish.cn. ( #SOA记录 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 #NS记录 IN MX 10 mail #MX记录ns1 IN A 192.168.4.110 #正向A解析记录www IN A 192.168.4.1105)分配权限[root@ns1 ~# chown root:named /var/named/itwish.cn.zone #修改文件的权限和所属组,保证named进程有此文件的可读属性[root@ns1 ~# chmod 640 /var/named/itwish.cn.zone[root@ns1 ~# ll /var/named/itwish.cn.zone-rw-r-----. 1 root named 120 Jun 11 10:39 /var/named/itwish.cn.zone6)测试[root@ns1 ~# named-checkconf #检查配置文件[root@ns1 ~# named-checkzone "itwish.cn" /var/named/itwish.cn.zone #检查itwish.cn 区域配置语法[root@ns1 ~# service named configtest # 测试所有配置区域[root@ns1 ~# rndc reload #重载配置文件[root@ns1 ~# dig -t A www.itwish.cn @192.168.4.110 //使用dig命令测试,返回以下值说明成功;; QUESTION SECTION:;www.itwish.cn. IN A;; ANSWER SECTION:www.itwish.cn. 10800 IN A 192.168.23.110[root@ns1 ~# dig -t NS itwish.cn @192.168.4.110 ;; QUESTION SECTION:;itwish.cn. IN NS;; ANSWER SECTION:itwish.cn. 10800 IN NS ns1.itwish.cn.
/ q O2 }/ _( ^/ s; W' ]0 N
, @+ g/ K% m3 G+ Z A2 u( a$ Z2 A* |/ C! y
DNS反向解析案例配置 2 S9 `* g e+ v
[root@ns1 ~# vi /etc/named.rfc1912.zones # 加入反向区域zone "4.168.192.in-addr.arpa" IN { #地址需要反着写,加上.in-addr.arpa type master; file "192.168.4.zone";};2)新建区域解析数据库文件[root@ns1 ~# vi /var/named/192.168.4.zone $TTL 3H@ IN SOA ns.itwish.cn. adminns.itwish.cn. ( 20180522012 ; serial 1D ; refresh 1H ; retry 2W ; expire 24H ) ; minimum IN NS ns1.itwish.cn.110 IN PTR ns1.itwish.cn. IN PTR www.itwish.cn.3)分配权限[root@ns1 ~# chown root:named /var/named/192.168.4.zone #修改文件的权限和所属组,保证named进程有此文件的可读属性[root@ns1 ~# chmod 640 /var/named/192.168.4.zone4)测试[root@ns1 ~# named-checkconf #检查配置文件[root@ns1 ~# named-checkzone "192.168.4.zone" /var/named/192.168.4.zone #检查192.168.4.zone 区域配置语法[root@ns1 ~# service named configtest # 测试所有配置区域[root@ns1 ~# rndc reload #重载配置文件[root@ns1 ~# dig -x 192.168.4.110 @192.168.4.110 #使用dig命令测试,返回以下值说明成功;; QUESTION SECTION:;110.4.168.192.in-addr.arpa. IN PTR;; ANSWER SECTION:110.4.168.192.in-addr.arpa. 10800 IN PTR ns1.itwish.cn.110.4.168.192.in-addr.arpa. 10800 IN PTR www.itwish.cn.
" B$ ]2 M6 V. i# V3 I" l 8 q, e8 z" `9 ?
/ B7 z- z0 s# w6 j: M; ^
区域中添加从服务器的关键项: 在上级获得授权,允许区域传送:# allow-transfer {127.0.0.1;127.16.100.1} 在上级区域数据文件中为从服务器添加一条NS记录和对应的A或PTR记录
) t) {3 a/ ^8 X+ E( D- ~
DNS主从复制案例配置 * n1 O! H+ X3 d' _
1)配置主dns服务器[root@ns1 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.110; }; directory "/var/named"; allow-query { any; }; recursion yes; };include "/etc/named.rfc1912.zones";[root@ns1 ~# vi /etc/named.rfc1912.zones zone "itwish.cn" IN { type master; file "itwish.cn.zone"; allow-transfer { 192.168.4.120; }; #允许把该区域传送给从DNS服务器192.168.4.120};[root@ns1 ~# vi /var/named/itwish.cn.zone $TTL 1D@ IN SOA ns1 admin.itwish.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 IN NS ns2 #新增一条ns记录 ,将从DNS服务器的NS记录添加到此 IN MX 10 mail ns1 IN A 192.168.4.110 www IN A 192.168.4.110ns2 IN A 192.168.23.120 #新增一条A记录 ,将从DNS服务器的A记录添加到此2)配置从dns服务器[root@ns2 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.120; }; directory "/var/named"; allow-query { any; }; recursion yes; };[root@ns2 ~# vim /etc/named.rfc1912.zoneszone "itwish.cn" IN { type slave; #类型为从服务器 masters { 192.168.4.110; }; #同步DNS服务器的IP地址 file "slaves/itwish.cn.zone"; #数据库文件保存到 /var/named/slaves/ 文件夹下,名字叫itwish.cn.zone allow-transfer { none; }; #禁止区域传送};[root@ns2 ~# service named restart #重启服务[root@ns2 ~# ls /var/named/slaves/ #可以看到数据库文件则证明已经同步成功dongfei.com.zone.slaveitwish.cn.zone" A& Q2 Y/ f4 s T3 Z2 a
9 w3 ~) ~+ J- v6 Y$ E6 J; N5 D0 Q" e2 v; e
BIND子域授权的实现,在父域的配置文件中添加如下项: 授权的子区域名称 子区域的名称服务器
g& R- i2 {" b. f4 l R6 Z' P 子区域的名称服务器的IP地址 如 tech IN NS ns3.tech.itwish.cn.
( S: Q( `" r# G ns3.tech.itwish.cn. IN A 192.168.4.130
& Z" |& S; j1 x8 m9 k! S+ Q9 |( V 区域转发类型:
- K ^0 m* |! s& | k( _0 f 全局转发: 对非本机所负责解析区域的请求,全转发给指定的服务器,在/etc/named.conf 中配置
( N6 C) u; B ?- V- l+ m7 \* K 特定区域转发:仅转发对特定的区域的请求,比全局转发优先级高,在区域文件zone 中配置
' M. z1 V( P+ }( r 转发器类型: first模式:优先先转发到目标DNS服务器,如果区域不存在,再转发到根上去查询; h0 T+ M1 q( @0 Y' M+ y# G
onyl模式:只转发到目标DNS服务器,如果目标主机没有此查询的信息则转发失败
0 D. k4 b3 i$ b+ ]" }
1)配置dns父域[root@ns1 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.110; }; directory "/var/named"; allow-query { any; }; recursion yes; forward first; #first模式 ,全局转发 forwarders { 192.168.4.110;192.168.4.120; }; #目标DNS服务器IP };include "/etc/named.rfc1912.zones";[root@ns1 ~# vi /etc/named.rfc1912.zones zone "itwish.cn" IN { type master; file "itwish.cn.zone"; allow-transfer { 192.168.4.120; }; #允许把该区域传送给从DNS服务器192.168.4.120};[root@ns1 ~# vi /var/named/itwish.cn.zone #在区域添加子域NS记录及其A记录$TTL 1D@ IN SOA ns1 admin.itwish.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 IN NS ns2 IN MX 10 mail ns1 IN A 192.168.4.110 www IN A 192.168.4.110ns2 IN A 192.168.23.120 tech IN NS ns3.tech.itwish.cn. #将tech子域授权给ns3.tech.itwish.cn.ns3.tech.itwish.cn. IN A 192.168.23.130 #添加相对应的正向解析A记录2)配置子域及区域转发 [root@ns3 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.130; }; directory "/var/named"; allow-query { any; }; recursion yes; };include "/etc/named.rfc1912.zones"; [root@ns3 ~# vi /etc/named.rfc1912.zones zone "tech.itwish.cn" IN { type master; file "tech.itwish.cn.zone"; }; zone "itwish.cn" IN { type forward; #转发区域 forwarders { 192.168.4.110; 192.168.4.120; }; #转发目标服务器 forward first; #优先先转发到目标DNS服务器,如果区域不存在,再转发到根上去查询}; [root@ns3 named# vi /var/named/tech.itwish.cn.zone #配置子域区域文件$TTL 10800 ; 3 hourstech.itwish.cn IN SOA ns3.tech.itwish.cn. adminns.tech.itwish.cn. ( 1884700031 ; serial 86400 ; refresh (1 day) 3600 ; retry (1 hour) 1209600 ; expire (2 weeks) 86400 ; minimum (1 day) ) NS ns3.tech.itwish.cn. MX 10 mail.tech.itwish.cn.$ORIGIN tech.itwish.cn.mail A 192.168.23.130ns3 A 192.168.23.130www A 192.168.23.110
9 ^8 Z1 m+ J6 T8 I; t" I" x6 ~
0 I& O- V& Y5 U1 Q- E7 ?# M/ b; P+ ^$ f7 J
bind有四个内置的acl,acl——把一个或多个地址归并为一个集合,并通过一个统一的名称调用;只能先定义,后使用,因此一般定义在配置文件中,处于options的前面 none: 没有一个主机 any: 任意主机 localhost: 本机 localnet: 本机的IP同掩码运算后得到的网络地址
! J( {6 [2 I$ Y. ~0 T
view:视图:实现智能DNS 一个bind服务器可定义多个view,每个view中可定义一个或多个zone 每个view用来匹配一组客户端,所有的zone都只能定义在view中 多个view内可能需要对同一个区域进行解析,但使用不同的区域解析库文件 u- i8 c9 n1 a
[root@localhost named# vi /etc/named.rfc1912.zones acl uniom { #定义acl ,注意acl的匹配顺序关系,至上而下 192.168.4.0/24 ;};acl telom { 172.16.10.0/24;};acl othom { any;};view uninet { #定义view 视图 ,所有的zone都需定义在view中match-clients { uniom; }; #匹配的acl 选项zone "localhost" IN { type master; file "named.localhost"; allow-update { none; };};zone "0.0.127.in-addr.arpa" IN { type master; file "named.loopback"; allow-update { none; };}; zone "itwish.cn" IN { type master; file "itwish.cn.zone.uniom"; };};view telnet {match-clients { telom; }; zone "itwish.cn" IN { type master; file "itwish.cn.zone.telom"; };view anynet {match-clients { othom; }; zone "itwish.cn" IN { type master; file "itwish.cn.zone.uniom"; };};[root@localhost named# vi itwish.cn.zone.uniom $TTL 1D@ IN SOA ns1 admin.itwish.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 IN MX 10 mailns1 IN A 192.168.4.110www IN A 192.168.4.120[root@localhost named# vi itwish.cn.zone.telom $TTL 1D@ IN SOA ns1 admin.itwish.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 IN MX 10 mailns1 IN A 172.16.10.1www IN A 172.16.10.2[root@localhost named# dig -t A www.itwish.cn @172.16.10.1 #确认通过172.16.10.x的客户端进行访问,获取的ip 为172.16.10.2;; QUESTION SECTION:;www.itwish.cn. IN A;; ANSWER SECTION:www.itwish.cn. 86400 IN A 172.16.10.2;; AUTHORITY SECTION:itwish.cn. 86400 IN NS ns1.itwish.cn.;; ADDITIONAL SECTION:ns1.itwish.cn. 86400 IN A 172.16.10.1[root@localhost named# dig -t A www.itwish.cn @192.168.4.110 #确认通过192.168.4.x的客户端进行访问,获取的ip 为192.168.10.120;; QUESTION SECTION:;www.itwish.cn. IN A;; ANSWER SECTION:www.itwish.cn. 86400 IN A 192.168.4.120;; AUTHORITY SECTION:itwish.cn. 86400 IN NS ns1.itwish.cn.;; ADDITIONAL SECTION:ns1.itwish.cn. 86400 IN A 192.168.4.110
9 m% d: F' ^" v
/ B7 R9 C7 ?( I- N- \
. [ V: Z& R8 j7 X8 @+ b
部署安装DNS(域名解析)系统
部署实验: 1、部署根域名解析服务器 2、部署一级域名.cn 域名解析服务器 3、部署二级域名.itwish 和.goodoing 域名解析系统,ns1 与 ns2 服务器实现主从复制功能
( h1 Z& Z; R* h& B 4、部署子域tech域名解析服务器,ns3 与 ns4 服务器实现主从复制 ,部署转发区域itwish.cn 及goodoing.cn ,转发服务器为ns1 和 ns2 1)对所有服务器,安装bind组件,禁用selinux功能并停止iptables功能 # yum install bind bind-utils -y #yum安装bind # service named start # service iptables stop #停止iptables 服务# chkconfig iptables off# vi /etc/selinux/config SELINUX=disabled #修改为disabled ,其他行注释掉 ,禁用selinux功能
4 C6 e( @/ Z4 g4 i$ j
! \( E+ H0 ~% k7 h' }/ O7 E* H
0 |# ~% |* a) Q9 L& G" G7 D2 W2)部署根域名解析服务器 [root@PXE named# vi /etc/named.confoptions { listen-on port 53 { 192.168.4.150; }; 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"; recursion yes;};include "/etc/named.rfc1912.zones";[root@PXE named# vi /etc/named.rfc1912.zones zone "." IN { #增加根域 type master; file "root.zone"; allow-transfer { none; };};[root@PXE named# vi /var/named/root.zone #定义根域数据库文件$TTL 1D@ IN SOA root. radmin. ( 2018061005 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS root.root. IN A 192.168.4.150cn IN NS dns.cn. #定义子域 cndns.cn. IN A 192.168.4.160[root@PXE ~# chown root:named /var/named/*.zone #修改文件的权限和所属组,保证named进程有此文件的可读属性[root@PXE ~# chmod 640 /var/named/*.zone[root@PXE ~# named-checkconf #检查配置文件[root@PXE ~# service named configtest # 测试所有配置区域[root@PXE ~# rndc reload #重载配置文件
; l. w6 O& \& ] ~
! K3 Z" L' L9 D. `8 z" p/ A6 Q
3)部署cn域名解析服务器 [root@cn named# vi /etc/named.conf options { listen-on port 53 { 192.168.4.160; }; 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"; recursion yes;};include "/etc/named.rfc112.zones";[root@cn named# vi /etc/named.rfc1912.zones zone "cn" IN { type master; file "cn.zone";};[root@cn named# vi /var/named/cn.zone $TTL 1D@ IN SOA dns admin.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS dnsdns IN A 192.168.4.160itwish IN NS ns1.itwish IN NS ns2.itwishns1.itwish.cn. IN A 192.168.4.110ns2.itwish.cn. IN A 192.168.4.120[root@cn ~# chown root:named /var/named/*.zone [root@cn ~# chmod 640 /var/named/*.zone[root@cn ~# named-checkconf [root@cn ~# service named configtest [root@cn ~# rndc reload
( L9 K9 V( L' U3 S3 a ! O) j# D m! P' f) I/ ~. K1 G
/ s$ J/ y5 O6 [/ g1 m# R4)部署ns1域名解析服务器 [root@ns1 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.110; }; 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"; recursion yes;};include "/etc/named.rfc1912.zones";[root@ns1 ~# vi /etc/named.rfc1912.zones zone "itwish.cn" IN { type master; file "itwish.cn.zone"; allow-transfer { 192.168.4.120; };};zone "goodoing.cn" IN { type slave; masters { 192.168.4.120; }; file "slaves/goodoing.cn.zone"; allow-transfer { none; };};[root@ns1 ~# vi /var/named/itwish.cn.zone $TTL 1D@ IN SOA ns1 admin.itwish.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 IN NS ns2 IN MX 10 mailns1 IN A 192.168.4.110ns2 IN A 192.168.4.120www IN A 192.168.4.110mail IN A 192.168.4.110tech IN NS ns3.tech IN NS ns4.techns3.tech IN A 192.168.4.130ns4.tech IN A 192.168.4.140[root@ns1 ~# chown root:named /var/named/*.zone [root@ns1 ~# chmod 640 /var/named/*.zone[root@ns1 ~# named-checkconf [root@ns1 ~# service named configtest [root@ns1 ~# rndc reload
( Y$ s* K- X6 o E) B' u 6 p7 p `8 I9 d1 x6 j5 ?" F' {
; W6 A3 Z- V0 w9 _; {/ l- U' h
5)部署ns2域名解析服务器 [root@ns2 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.120; }; 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"; recursion yes;};include "/etc/named.rfc1912.zones";[root@ns2 ~# vi /etc/named.rfc1912.zones zone "goodoing.cn" IN { type master; file "goodoing.cn.zone"; allow-transfer { 192.168.4.110; };};zone "itwish.cn" IN { type slave; masters { 192.168.4.110; }; file "slaves/itwish.cn.zone"; allow-transfer { none; };};[root@ns2 ~# vi /var/named/goodoing.cn.zone $TTL 1D@ IN SOA ns2 admin.goodoing.cn. ( 2018061004 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns1 IN NS ns2 IN MX 10 mailns1 IN A 192.168.4.110ns2 IN A 192.168.4.120www IN A 192.168.4.120mail IN A 192.168.4.120tech IN NS ns3.tech IN NS ns4.techns3.tech IN A 192.168.4.130ns4.tech IN A 192.168.4.140[root@ns2 ~# chown root:named /var/named/*.zone [root@ns2 ~# chmod 640 /var/named/*.zone[root@ns2 ~# named-checkconf [root@ns2 ~# service named configtest [root@ns2 ~# rndc reload
5 i. [& i. c& s# R
/ J1 b l' ~7 ?! I8 c' i! `, l0 f) u7 d4 y/ ]+ D
6)部署ns3域名解析服务器 [root@ns3 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.130; }; 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"; recursion yes;};include "/etc/named.rfc1912.zones";[root@ns3 ~# vi /etc/named.rfc1912.zones zone "tech.itwish.cn" IN { type master; file "tech.itwish.cn.zone"; allow-transfer { 192.168.4.140; };};zone "tech.goodoing.cn" IN { type slave; masters { 192.168.4.140; }; file "slaves/tech.goodoing.cn.zone"; allow-transfer { none; };};zone "itwish.cn" IN { type forward; forward first; forwarders { 192.168.4.110; 192.168.4.120; };};zone "goodoing.cn" IN { type forward; forward first; forwarders { 192.168.4.110; 192.168.4.120; };};[root@ns3 ~# vi /var/named/tech.itwish.cn.zone $TTL 1D@ IN SOA ns3 admin.tech.itwish.cn. ( 2018061002 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns3 IN NS ns4 IN MX 10 mailns3 IN A 192.168.4.130ns4 IN A 192.168.4.140www IN A 192.168.4.130mail IN A 192.168.4.130[root@ns3 ~# chown root:named /var/named/*.zone [root@ns3 ~# chmod 640 /var/named/*.zone[root@ns3 ~# named-checkconf [root@ns3 ~# service named configtest [root@ns3 ~# rndc reload |1 |2 h% S) Y3 |
* r( w& c" D- f6 V1 k5 `! A
9 @3 g% H' i7 }4 W+ M
7)部署ns4域名解析服务器 [root@ns4 ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.140; }; 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"; recursion yes;};include "/etc/named.rfc1912.zones";[root@ns4 ~# vi /etc/named.rfc1912.zones zone "tech.goodoing.cn" IN { type master; file "tech.goodoing.cn.zone"; allow-transfer { 192.168.4.130; };};zone "tech.itwish.cn" IN { type slave; masters { 192.168.4.130; }; file "slaves/tech.itwish.cn.zone"; allow-transfer { none; };};zone "itwish.cn" IN { type forward; forward first; forwarders { 192.168.4.110; 192.168.4.120; };};zone "goodoing.cn" IN { type forward; forward first; forwarders { 192.168.4.110; 192.168.4.120; };};[root@ns4 ~# vi /var/named/tech.goodoing.cn.zone $TTL 1D@ IN SOA ns4 admin.tech.goodoing.cn. ( 2018061002 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum IN NS ns3 IN NS ns4 IN MX 10 mailns3 IN A 192.168.4.130ns4 IN A 192.168.4.140www IN A 192.168.4.130mail IN A 192.168.4.130[root@ns4 ~# chown root:named /var/named/*.zone [root@ns4 ~# chmod 640 /var/named/*.zone[root@ns4 ~# named-checkconf [root@ns4 ~# service named configtest [root@ns4 ~# rndc reload
+ v, s/ m- X0 L! D8 n& U
/ X# o- K$ p0 q9 J( O$ z) S) R/ P+ W. l
8)配置cach缓存DNS服务器,测试域名解析 [root@cach ~# vi /etc/named.conf options { listen-on port 53 { 192.168.4.100; }; 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"; recursion yes;};zone "." IN { type hint; file "named.ca";};include "/etc/named.rfc1912.zones";[root@cach ~# vi /var/named/named.ca . 3600000 NS A.ROOT-SERVERS.NET.A.ROOT-SERVERS.NET. 3600000 A 192.168.4.150 #将根服务器指向我们自己搭建的根DNS服务器[root@cach named# dig -t NS .;; QUESTION SECTION:;. IN NS;; ANSWER SECTION:. 82572 IN NS root.[root@cach named# dig -t NS cn;; QUESTION SECTION:;cn. IN NS;; ANSWER SECTION:cn. 86400 IN NS dns.cn.[root@cach named# dig -t NS itwish.cn;; QUESTION SECTION:;itwish.cn. IN NS;; ANSWER SECTION:itwish.cn. 86400 IN NS ns1.itwish.cn.itwish.cn. 86400 IN NS ns2.itwish.cn.[root@cach named# dig -t NS tech.itwish.cn;; QUESTION SECTION:;tech.itwish.cn. IN NS;; ANSWER SECTION:tech.itwish.cn. 86400 IN NS ns4.tech.itwish.cn.tech.itwish.cn. 86400 IN NS ns3.tech.itwish.cn.[root@cach named# dig -t NS tech.goodoing.cn;; QUESTION SECTION:;tech.goodoing.cn. IN NS;; ANSWER SECTION:tech.goodoing.cn. 86400 IN NS ns4.tech.goodoing.cn.tech.goodoing.cn. 86400 IN NS ns3.tech.goodoing.cn.[root@cach named# dig -t A www.tech.goodoing.cn;; QUESTION SECTION:;www.tech.goodoing.cn. IN A;; ANSWER SECTION:www.tech.goodoing.cn. 86400 IN A 192.168.4.130
$ i8 q' m" D- x0 o
2 U2 Q& ?0 n7 Y* l. w& ^3 N
+ j N" K: ?5 K3 i& i$ J1 X H" ^
至此,linux DNS系统部署并调配完成,实现了内网根域及各主机的解析。 |