DNS基本配置

 dns(协议)  bind(程序) named(进程)

 以下我们实现这个协议时通过bind这个程序。

 

DNS基本配置过程 

配置环境:

主机1台(以下操作均在虚拟机上进行)

【 】仅表示注释

操作系统:redhat 5.8

当前主机是IP:172.16.16.3 

主机名称ns1(ns1.magedu.com)

主机别名www

提供dns功能:bind97

确保yum源已经配置完善

我们实验用的是redhat5.8但是我们实验是用bind97所有要卸载原来默认安装的bind,当然各位在做实验之前先查看下当前环境的bind是哪个版本,然后在决定是否要卸载

  
  
  
  
  1. rpm -e  bind-libs bind-utils 
  2.  
  3. yum -y install bind97 bind97-libs bind97-utils 
  4.  
  5.   
  6.  
  7. 提供配置文件,将默认配置文件移除,然后我们自己编辑配置文件 
  8.  
  9. mv /etc/named.conf /etc/named.conf.ba 
  10.  
  11. vim /etc/named.conf 
  12.  
  13.   
  14.  
  15. options{ 
  16.  
  17.         directory "/var/named"
  18.  
  19. }; 
  20.  
  21. zone "." IN { 
  22.  
  23.         type hint; 
  24.  
  25.         file "named.ca"
  26.  
  27. };                                    
  28.  
  29. zone "localhost" IN{ 
  30.  
  31.         type master; 
  32.  
  33.         file "localhost.zone"
  34.  
  35. }; 
  36.  
  37. zone "0.0.127.in-addr.arpa" IN { 
  38.  
  39.         type master; 
  40.  
  41.         file "127.0.0.zone"
  42.  
  43. }; 
  44.  
  45. zone "magedu.com" IN { 
  46.  
  47.         type master; 
  48.  
  49.         file "magedu.com.zone"
  50.  
  51. }; 
  52.  
  53. zone "16.16.172.in-addr.arpa" IN { 
  54.  
  55.         type master; 
  56.  
  57.         file "172.16.16.zone"
  58.  
  59. }; 
 

四个区域已经声明好了,named.ca,这个文件是自动生成的里面的四个文件还没有,我们接下来创建四个文件

【注意每一条NS记录和MX记录,都有对应的A记录,否则会报错】

  
  
  
  
  1. vim /var/named/localhost.zone  
  2.  
  3. $TTL 86400 
  4.  
  5. @           IN  SOA localhost.  admin.localhost. ( 
  6.  
  7.                     2012101801 
  8.  
  9.                     1H 
  10.  
  11.                     5M 
  12.  
  13.                     7D 
  14.  
  15.                     1D) 
  16.  
  17. @           IN  NS  localhost. 
  18.  
  19. localhost.  IN  A   127.0.0.1 
  20.  
  21.   
  22.  
  23. vim /var/named/127.0.0.zone  
  24.  
  25. $TTL 86400 
  26.  
  27. @   IN  SOA localhost.  admin.localhost. ( 
  28.  
  29.                     2012101801 
  30.  
  31.                     1H 
  32.  
  33.                     2M 
  34.  
  35.                     7D 
  36.  
  37.                     1D); 
  38.  
  39. @   IN  NS  localhost.; 
  40.  
  41. 1   IN  PTR localhost.; 
  42.  
  43.   
  44.  
  45. vim /var/named/magedu.com.zone 【正向区域文件】 
  46.  
  47. $TTL 86400              【保留缓存时长】 
  48.  
  49. $ORIGIN magedu.com. 
  50.  
  51. @       IN  SOA wd.magedu.com.  admin.magedu.com. ( 
  52.  
  53.             2012102001  【序列号】 
  54.  
  55.             2H          【刷新时间】 
  56.  
  57.             10M         【重试时间】 
  58.  
  59.             11D         【过期时间】 
  60.  
  61.             1D)         【否定回答的TTL值】 
  62.  
  63.         IN  NS      wd 
  64.  
  65.         IN  NS      ns1 
  66.  
  67.         IN  MX 10   mail 
  68.  
  69. wd      IN  A       172.16.16.1 
  70.  
  71. ns1     IN  A       172.16.16.3 
  72.  
  73. mail    IN  A       172.16.16.2 
  74.  
  75. www     IN  A       172.16.16.1 
  76.  
  77.   
  78.  
  79. vim /var/named/172.16.16.zone 【反向区域文件】 
  80.  
  81. $TTL 86400 
  82.  
  83. $ORIGIN 16.16.172.in-addr.arpa 
  84.  
  85. @   IN  SOA wd.magedu.com.  admin.magedu.com. ( 
  86.  
  87.             2012102004 
  88.  
  89.             2H 
  90.  
  91.             10M 
  92.  
  93.             11D 
  94.  
  95.             1D 
  96.  
  97.             ) 
  98.  
  99.         IN  NS  wd.maged.com. 
  100.  
  101.         IN  NS  ns1.magedu.com. 
  102.  
  103. 1        IN  PTR wd.magedu.com. 
  104.  
  105. 1        IN  PTR www.magedu.com. 
  106.  
  107. 3        IN  PTR ns1.magedu.com. 
  108.  
  109. 2        IN  PTR mail.magedu.com. 
  110.  
  111.   
  112.  
  113. 然后给文件更改权限 
  114.  
  115. cd /var/named/ 
  116.  
  117. chmod 640 /etc/named.conf 172.16.16.zone localhost.zone 127.0.0.0.zone 172.16.16.zone  
  118.  
  119. chown :named /etc/named.conf 172.16.16.zone localhost.zone 127.0.0.0.zone 172.16.16.zone  
  120.  
  121.   
  122.  
  123. check-namedconf     
  124.  
  125. service rndc start 启动服务 【记得查看日志tail /var/log/messgaes】 

 

用dig 测试即可

dig -t A www.magedu.com @127.0.0.1 【测试正向解析】

dig -x 172.16.16.1 @127.0.0.1 【测试反向解析】

 

dig 用法

dig是个诊断工具(bind中的一个诊断工具)

dig 

-t 指明类型

-x 后面直接加要查询的IP 

【以下用magedu.com 为例子介绍这个工具的用法.用本机进行查询】

【@后面加的是执行查询动作的服务器的IP】

dig -t A www.magedu.com @127.0.0.1

dig -x 172.16.16.3 @127.0.0.1  

dig -t AXFR magedu.com  @127.0.0.1【完全区域传送】

dig -t AXFR 16.16.172.in-addr.arpa @127.0.0.0.1 【完全反向区域传送】

注意:我们应该控制只有通过我们认证的才允许执行区域传送,如果任何主机都可以请求到区域传送的话,是相当危险的。

仅允许谁同步

allow-transfer { 任意IP段; 任意IP };

例如:

allow-transfer { 127.0.0.1; };表示允许本机进行完全区域传送

allow-transfer { 127.0.0.0/8; };表示允许这个网段的主机进行完全区域传送

allow-transfer有两个默认的值

allow-transfer { none; };不允许任何主机进行区域传送

allow-transfer { any; };允许任何主机进行区域传送

但是allow-transfer是基于IP地址认证的,是非常的不可靠的。所以我们要基于密钥来验证

 

 

 

你可能感兴趣的:(dns基本配置实现)