DNS

实验是在redhat7.2的系统进行的

主机名:server102 ;IP:172.25.254.102

                server101             172.25.254.101

实验所需安装包 bind.x86_64  dhcp.x86_64

[root@server102 ~]# yum install -y bind dhcp -y


正向解析配置:

[root@server102 ~]# vim /etc/named.conf

10 options {
 11         listen-on port 53 { any; };                                              ##默认是监听本机53端口,设置为监听所有
 12         listen-on-v6 port 53 { ::1; };
 13         directory       "/var/named";
 14         dump-file       "/var/named/data/cache_dump.db";
 15         statistics-file "/var/named/data/named_stats.txt";
 16         memstatistics-file "/var/named/data/named_mem_stats.txt";
 17         allow-query     { any; };                                                ##允许任何人来查询


[root@server102 ~]# vim /etc/named.rfc1912.zones

 25 zone "westos.com" IN {                                                  ##指定域名
 26         type master;
 27         file "westos.com.zone";                                           ##指定读取A记录文件
 28         allow-update { none; };                                              
 29 };

[root@server102 ~]# cp -p /var/named/named.localhost /var/named/westos.com.zone

[root@server102 ~]# vim  /var/named/westos.com.zone

  1 $TTL 1D
  2 @       IN SOA  dns root (                                               ##IN表示后面的数据使用的是INTERNET标准。而@则代表相应的域名DSOA表示授权的开始

  3                                         0       ; serial                 ##本行前面的数字表示配置文件的修改版本,格式是年月日当日修改的修改的次数,

每次修改这个配置文件时都应该修改这个数字,要不然你所作的修改不会更新到网上的其它DNS服务器的数据库上,

即你所做的更新很可能对于不以你的所配置的其他DNS服务器为DNS服务器的客户端来说就不会反映出你的更新,

也就对它们来说你更新是没有意义的


  4                                         1D      ; refresh        ## 定义的是以为单位的刷新频率 即规定从域名服务器多长时间查询一个主服务器,以保证从服务器的数据是最新的
  5                                         1H      ; retry                 ## 上面的这个值是规定了以秒为单位的重试的时间间隔
  6                                         1W      ; expire             ## 上面这个用来规定从服务器在向主服务更新失败后多长时间后清除对应的记录,上述的数值是以分钟为单位的
  7                                         3H )    ; minimum        ## 这个数据用来规定缓冲服务器不能与主服务联系上后多长时间清除相应的记
  8         NS      dns
  9 dns     A       172.25.254.101                    ##前面为主机名会自动接设置的该配置文件的域名,后面为对应ip
 10 www     A       172.25.254.222
 11 sss     A       172.25.254.100

[root@server102 ~]# vim /etc/resolv.conf
[root@server102 ~]# cat /etc/resolv.conf
# Generated by NetworkManager


# No nameservers found; try putting DNS servers into your
# ifcfg files in /etc/sysconfig/network-scripts like so:
#
# DNS1=xxx.xxx.xxx.xxx
# DNS2=xxx.xxx.xxx.xxx
# DOMAIN=lab.foo.com bar.foo.com
nameserver 172.25.254.102                              ## 设定dns服务器

[root@server102 ~]# systemctl restart named

测试:

[root@server102 ~]# dig www.westos.com

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> www.westos.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14134
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.westos.com.            IN    A

;; ANSWER SECTION:
www.westos.com.        86400    IN    A    172.25.254.222

;; AUTHORITY SECTION:
westos.com.        86400    IN    NS    dns.westos.com.

;; ADDITIONAL SECTION:
dns.westos.com.        86400    IN    A    172.25.254.101

;; Query time: 0 msec
;; SERVER: 172.25.254.102#53(172.25.254.102)
;; WHEN: Sat Aug 12 14:50:43 CST 2017
;; MSG SIZE  rcvd: 93

[root@server102 ~]#


反向解析的配置:


[root@server102 ~]# vim /etc/named.rfc1912.zones

 49 zone "254.25.172.in-addr.arpa" IN {                       ##前面是对应ip段,应该反着写,
 50         type master;
 51         file "westos.com.ptr";                                          ##对应读取的文件名
 52         allow-update { none; };                                
 53 };

[root@server102 ~]# cp -p /var/named/named.loopback /var/named/westos.com.ptr
[root@server102 ~]# vim /var/named/westos.com.ptr 

  1 $TTL 1D
  2 @       IN SOA  dns root (
  3                                         0       ; serial
  4                                         1D      ; refresh
  5                                         1H      ; retry
  6                                         1W      ; expire
  7                                         3H )    ; minimum
  8         NS      dns
  9 dns     A       172.25.254.102
 10 111     PTR     www.westos.com.                   ##前面为对应ip地址,会自动补齐所属ip段, 后面为对应域名
 11 222     PTR     bbs.westos.com.

[root@server102 ~]# systemctl restart named

测试:

[root@server102 ~]# dig -x 172.25.254.111

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> -x 172.25.254.111
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11712
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;111.254.25.172.in-addr.arpa.    IN    PTR

;; ANSWER SECTION:
111.254.25.172.in-addr.arpa. 86400 IN    PTR    www.westos.com.

;; AUTHORITY SECTION:
254.25.172.in-addr.arpa. 86400    IN    NS    dns.254.25.172.in-addr.arpa.

;; ADDITIONAL SECTION:
dns.254.25.172.in-addr.arpa. 86400 IN    A    172.25.254.102

;; Query time: 0 msec
;; SERVER: 172.25.254.102#53(172.25.254.102)
;; WHEN: Sat Aug 12 15:05:19 CST 2017
;; MSG SIZE  rcvd: 118

[root@server102 ~]#

内网,外网给不同答案配置:

[root@server102 ~]# vim /etc/named.conf

 49 /*
 50 zone "." IN {
 51         type hint;
 52         file "named.ca";
 53 };
 54
 55 include "/etc/named.rfc1912.zones";
 56 include "/etc/named.root.key";
 57 */                                                                             ##将本身默认指定读取文件注释掉
 58
 59 view localhost {
 60         match-clients { 172.25.254.102; };                  ##指定ip
 61
 62 zone "." IN {
 63         type hint;
 64         file "named.ca";
 65 };
 66
 67 include "/etc/named.rfc1912.zones";                        ##指定读取文件
 68 };
 69
 70 view any {
 71         match-clients { any; };
 72
 73 zone "." IN {
 74         type hint;
 75         file "named.ca";
 76 };
 77
 78 include "/etc/named.rfc1913.zones";
 79 };


[root@server102 ~]# cp -p /etc/named.rfc1912.zones /etc/named.rfc1913.zones
[root@server102 ~]# vim /etc/named.rfc1913.zones

 25 zone "westos.com" IN {
 26         type master;
 27         file "westos.com.inter";
 28         allow-update { none; };
 29 };

[root@server102 ~]# cp -p /var/named/westos.com.zone /var/named/westos.com.inter

[root@server102 ~]# vim /var/named/westos.com.inter

  1 $TTL 1D
  2 @       IN SOA  dns root (
  3                                         0       ; serial
  4                                         1D      ; refresh
  5                                         1H      ; retry
  6                                         1W      ; expire
  7                                         3H )    ; minimum
  8         NS      dns
  9 dns     A       1.1.1.101
 10 www     A       1.1.1.222
 11 sss     A       1.1.1.100
[root@server102 ~]# systemctl restart named

测试:

[root@server101 ~]# vim /etc/resolv.conf
[root@server101 ~]# cat /etc/resolv.conf
# Generated by NetworkManager

# No nameservers found; try putting DNS servers into your
# ifcfg files in /etc/sysconfig/network-scripts like so:
#
# DNS1=xxx.xxx.xxx.xxx
# DNS2=xxx.xxx.xxx.xxx
# DOMAIN=lab.foo.com bar.foo.com
nameserver 172.25.254.102

[root@server101 ~]# dig www.westos.com

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> www.westos.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 19897
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.westos.com.            IN    A

;; ANSWER SECTION:
www.westos.com.        86400    IN    A    1.1.1.222

;; AUTHORITY SECTION:
westos.com.        86400    IN    NS    dns.westos.com.

;; ADDITIONAL SECTION:
dns.westos.com.        86400    IN    A    1.1.1.101

;; Query time: 0 msec
;; SERVER: 172.25.254.102#53(172.25.254.102)
;; WHEN: Sat Aug 12 15:25:21 CST 2017


;; MSG SIZE  rcvd: 93


[root@server102 ~]# dig www.westos.com

; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7 <<>> www.westos.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41683
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.westos.com.            IN    A

;; ANSWER SECTION:
www.westos.com.        86400    IN    A    172.25.254.222

;; AUTHORITY SECTION:
westos.com.        86400    IN    NS    dns.westos.com.

;; ADDITIONAL SECTION:
dns.westos.com.        86400    IN    A    172.25.254.101

;; Query time: 0 msec
;; SERVER: 172.25.254.102#53(172.25.254.102)
;; WHEN: Sat Aug 12 15:26:17 CST 2017
;; MSG SIZE  rcvd: 93


新建立主机自动更新自己的解析记录到dnsserver端

借助dhcp自动分配IP给新主机时,同时通知dns,通过key认证更新

配置:

[root@server102 ~]# vim /etc/named.conf

 42 include "/etc/westos.key";

[root@server102 ~]# vim /etc/named.rfc1913.zones
 25 zone "westos.com" IN {
 26         type master;
 27         file "westos.com.inter";
 28         allow-update { key westos; };                           ##指定westos.com域使用westos key更新
 29 };

[root@server102 ~]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos             ##生成128位,加密方式为hmac-md5,名字为为westos的钥匙

[root@server102 ~]# cat Kwestos.+157+01702.key
westos. IN KEY 512 3 157 vEgPJZlWGEmzA/7BOgqYKw==


[root@server102 ~]# cp -p  /etc/rndc.key /etc/westos.key
[root@server102 ~]# vim /etc/westos.key

[root@server102 ~]# cat /etc/westos.key
key "westos" {
    algorithm hmac-md5;
    secret "vEgPJZlWGEmzA/7BOgqYKw==";
};

[root@server102 named]# chmod g+w /var/named                                    ##给目录组用户写权限,不然内容更新不进来
[root@server102 ~]# cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp: overwrite ‘/etc/dhcp/dhcpd.conf’? y
[root@server102 ~]# vim /etc/dhcp/dhcpd.conf

 7 option domain-name "westos.com";
  8 option domain-name-servers 172.25.254.102;

 14 ddns-update-style interim;                                                 ##DHCP服务器与DNS服务器的动态信息更新模式:interim为DNS互动更新模式,ad-hoc为特>殊DNS更新模式,none为不支持动态更新模式。
 30 subnet 172.25.254.0 netmask 255.255.255.0 {
 31   range 172.25.254.155 172.25.254.166;
 32   option routers 172.25.254.250;
 33 }

27 28以及35行以后的全部删掉

35 key westos {                                                                      ##指定key
 36         algorithm hmac-md5;                                             ##加密方式
 37         secret vEgPJZlWGEmzA/7BOgqYKw==;
 38 };
 39
 40 zone westos.com  {                                                       ##指定更新域名
 41         primary 127.0.0.1;
 42         key westos;
 43 }

[root@server102 ~]# systemctl restart dhcpd
[root@server102 ~]# systemctl restart named

测试:

设定一台主机网络的工作方式为dhcp
设定这台主机的主机名 music.westos.com,这个名称在原有的dns服务中是没有解析的
重启网络看ip 和主机名称的解析


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值