Linux中DNS服務器的基本配置

 

  
  
  
  
  1. DNS 是計算機域名(Domain Name System)的縮寫,主要功能是將計算機域名與IP地址之間做轉換。執行這一服務的網絡主機就能夠稱做爲DNS服務器,一般咱們都認爲DNS只是將域名轉換成IP地址,而後再使用所查到的IP地址去鏈接(俗稱「正向解析」)。事實上,將IP地址轉換成域名的功能也是常使用到的,(俗稱「逆向解析」)。下面就來用一個假設的域名(www.mageedu.com),ip地址爲172.16.86.1,是本機IP地址,那咱們就用本機來作DNS服務器來說一下DNS的基本配置吧,很簡單的哦。一學就會哦。 
  2.  
  3. 首先介紹一下基本知識: 
  4. 數據庫中的,每個條目稱做一個資源記錄,資源記錄類型: 
  5.  
  6. SOA(Start Of Authority):    #起始受權記錄    
  7. 格式: ZONE NAME  TTL   IN   SOA   FQDN  ADMINISTRATOR_MAILBOX ( 
  8.         serial number:版本號或序列號 
  9.         refresh:刷新週期 
  10.         retry:重試時間 
  11.         expire:過時時長 
  12.         nagative ansver TTL:否認答案的緩存時長) 
  13.          
  14. 如:  mageedeu.com       600   IN    SOA     ns1.mageedu.com.   admin.mageedu.com. (  
  15.                     2013040101 
  16.                     1H 
  17.                     5M 
  18.                     1W 
  19.                     1D )         
  20.     時間單位:M(分鐘)、H(小時)、D(天)、W(周),默認單位是秒 
  21.     郵箱格式:admin@mageedu.com -也能夠寫爲->admin.mageedu.com 
  22.      
  23.      
  24. NS(Name Server):#名稱服務器 
  25. 格式: Zone MAIN NAME -->FQDN    
  26. 如:  mageedu.com      600   IN   NS   ns1.mageedu.com. 
  27.         ns1.mageedu.com. 600   IN   A    172.16.86.1 
  28.          
  29.      
  30. MX(Mail eXchanger):#郵件交換器 
  31. 格式: ZONE NAME   TTL  IN   MX   pri   VALUE 
  32.         優先級:0-99,數字越小級別越高 
  33. 如:  mageedu.com.       600  IN   MX  10  mail.mageedu.com. 
  34.         mail.mageedu.com.  600  IN   A       1.1.1.3 
  35. A(address):FQDN-->IPv4    #這裏是由IPv4地址解析到域名 
  36. AAAA(address):FQDN-->IPv6    
  37. PTR(pointer):IP-->FQDN     #反向解析由IP解析域名 
  38. CNAME(Canonical NAME):FQDN-->FQDN     #別名記錄 
  39. 如   ftp.magedu.com.    IN    CNAME     www.magedu.com. 
  40.  
  41.  
  42. 1、 首先要配置yum源,咱們是從本地服務器上下載的,大家能夠用光盤或者鏡像文件掛載本地也是能夠的。咱們就用bind97來介紹一下吧。 
  43.  
  44. [root@localhost ~]#cd /etc/yum.repos.d     
  45. [root@localhost yum.repos.d]# wget ftp://172.16.0.1/pub/gls/server.repo 
  46.  
  47.  
  48. 2、安裝bind97,並添加或修改其主配置文件,咱們這裏就來本身編輯其配置文件。 
  49.  
  50. [root@localhost yum.repos.d]# rpm -e bind-libs bind-utils 
  51. [root@localhost yum.repos.d]# yum install bind97-libs bind97-utils 
  52. [root@localhost ~]#  yum  install bind97 -y          #安裝bind97主包 
  53. [root@localhost ~]# cd /etc/ 
  54. [root@localhost etc]# cat named.conf     #查看配置文件 
  55. [root@localhost etc]# mv /etc/named.conf /etc/named.conf.orig  #這裏把原有的配置文件重命名或者刪除均可以 
  56. [root@localhost etc]# ll -l /etc/named.conf.orig          #查看原配置文件的權限和屬性 
  57. -rw-r----- 1 root named 930 Mar 29 20:03 /etc/named.conf.orig 
  58.  
  59. [root@localhost etc]# vim named.conf           #編輯配置文件 建立緩存名稱服務器 
  60.  
  61. [root@localhost etc]# chown root:named /etc/named.conf       #修改屬主和屬組 
  62.  
  63. [root@localhost etc]# chmod 640 /etc/named.conf       #修改權限 
  64. [root@localhost etc]# named-checkconf                  #檢查語法是否有錯誤,不報信息就是最好的信息 
  65. [root@localhost etc]# named-checkzone "." /var/named/named.ca   
  66. zone ./IN: has 0 SOA records 
  67. zone ./INnot loaded due to errors. 
  68. [root@localhost etc]# named-checkzone "localhost" /var/named/named.localhost  
  69. zone localhost/IN: loaded serial 0 
  70. OK 
  71. [root@localhost etc]# named-checkzone "0.0.127.in-addr.arpa" /var/named/named.loopback 
  72. zone 0.0.127.in-addr.arpa/IN: loaded serial 0 
  73. OK 
  74.  
  75. [root@localhost ~]# service named start               #啓動DNS服務器 
  76. Starting named:                                            [  OK  ] 
  77.  
  78. 3、關閉 selinux 
  79.  
  80. [root@localhost ~]# getenforce                 #查看當前selinux狀態          
  81. Enforcing                                       #開啓 
  82. [root@localhost ~]# setenforce 0                #關閉selinux   
  83. [root@localhost ~]# getenforce     
  84. Permissive 
  85.  
  86. [root@localhost ~]# vim /etc/selinux/config   #修改配置文件永久有效 
  87.  
  88. 4、修改DNS服務器地址爲本機地址,並讓它開機自動運行 
  89.  
  90. [root@localhost ~]# vim /etc/resolv.conf            
  91. nameserver 172.16.86.1 
  92. search localdomain 
  93.  
  94. [root@localhost ~]# chkconfig --list named     
  95. named           0:off   1:off   2:off   3:off   4:off   5:off   6:off 
  96. [root@localhost ~]# chkconfig named on   #用此命令實現開機自動運行DNS服務器 
  97. [root@localhost ~]# chkconfig --list named 
  98. named           0:off   1:off   2:on    3:on    4:on    5:on    6:off 
  99.  
  100.  5、實現正向解析 
  101.  
  102. [root@localhost named]# vim /etc/named.conf    #編輯主配置文件,添加以下內容 
  103.  
  104. zone "magedu.com"  IN { 
  105.         type master; 
  106.         file "mageedu.com.zone"
  107. }; 
  108.  
  109. [root@localhost named]#vim mageedu.com.zone        #在/var/named目錄下建立文件並編輯文件內容 
  110. $TTL 600 
  111. magedu.com.    IN  SOA  ns1.mageedu.com.  admin.mageedu.com. ( 
  112.                 2013040101 
  113.                 1H 
  114.                 5M 
  115.                 2D 
  116.                 6H ) 
  117.                 IN      NS       ns1.mageedu.com. 
  118.                 IN      MX   10  mail.mageedu.com. 
  119. ns1             IN      A        172.16.86.1 
  120. mail            IN      A        172.16.86.2 
  121. www             IN      A        172.16.86.1 
  122. ftp             IN     CNAME     www 
  123.                                          
  124. [root@localhost named]# chmod 640 mageedu.com.zone  
  125. [root@localhost named]# chown root:namedmageedu.com.zone  
  126.  
  127.  
  128. [root@localhost named]# named-checkzone "mageedu.com" /var/named/mageedu.com.zone  
  129. zonemagedu.com/IN: loaded serial 2013040101 
  130. OK 
  131.  
  132.  
  133. [root@localhost named]# service named restart           #重啓DNS服務 
  134. Stopping named:                                            [  OK  ] 
  135. Starting named:                                            [  OK  ] 
  136.  
  137. 測試結果: 
  138.  
  139. [root@localhost named]# dig -t CNAME ftp.mageedu.com 
  140.  
  141. ; <<>> DiG 9.7.0-P2-RedHat-9.7.0-6.P2.el5_7.4 <<>> -t CNAME ftp.mageedu.com 
  142. ;; global options: +cmd 
  143. ;; Got answer: 
  144. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40718 
  145. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 
  146.  
  147. ;; QUESTION SECTION
  148. ;ftp.mageedu.com.       IN  CNAME 
  149.  
  150. ;; ANSWER SECTION
  151. ftp.mageedu.com.    600 IN  CNAME   www.mageedu.com. 
  152.  
  153. ;; AUTHORITY SECTION
  154. mageedu.com.        600 IN  NS  ns1.mageedu.com. 
  155.  
  156. ;; ADDITIONAL SECTION
  157. ns1.mageedu.com.    600 IN  A   172.16.86.1 
  158.  
  159. ;; Query time: 5 msec 
  160. ;; SERVER: 172.16.86.1#53(172.16.86.1) 
  161. ;; WHEN: Fri Mar 29 21:23:43 2013 
  162. ;; MSG SIZE  rcvd: 85 
  163.  
  164.  
  165. [root@localhost named]# dig -t NSmagedu.com 
  166.  
  167. ; <<>> DiG 9.7.0-P2-RedHat-9.7.0-6.P2.el5_7.4 <<>> -t NSmagedu.com 
  168. ;; global options: +cmd 
  169. ;; Got answer: 
  170. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37572 
  171. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 
  172.  
  173. ;; QUESTION SECTION
  174. ;mageedu.com.           IN  NS 
  175.  
  176. ;; ANSWER SECTION
  177. mageedu.com.        600 IN  NS  ns1.mageedu.com. 
  178.  
  179. ;; ADDITIONAL SECTION
  180. ns1.mageedu.com.    600 IN  A   172.16.86.1 
  181.  
  182. ;; Query time: 13 msec 
  183. ;; SERVER: 172.16.86.1#53(172.16.86.1) 
  184. ;; WHEN: Fri Mar 29 21:24:29 2013 
  185. ;; MSG SIZE  rcvd: 63 
  186.  
  187.  
  188.  
  189. [root@localhost named]# dig -t MXmagedu.com 
  190.  
  191. ; <<>> DiG 9.7.0-P2-RedHat-9.7.0-6.P2.el5_7.4 <<>> -t MXmagedu.com 
  192. ;; global options: +cmd 
  193. ;; Got answer: 
  194. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57248 
  195. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2 
  196.  
  197. ;; QUESTION SECTION
  198. ;mageedu.com.           IN  MX 
  199.  
  200. ;; ANSWER SECTION
  201. mageedu.com.        600 IN  MX  10 mail.mageedu.com. 
  202.  
  203. ;; AUTHORITY SECTION
  204. mageedu.com.        600 IN  NS  ns1.mageedu.com. 
  205.  
  206. ;; ADDITIONAL SECTION
  207. mail.mageedu.com.   600 IN  A   172.16.86.2 
  208. ns1.mageedu.com.    600 IN  A   172.16.86.1 
  209.  
  210. ;; Query time: 9 msec 
  211. ;; SERVER: 172.16.86.1#53(172.16.86.1) 
  212. ;; WHEN: Fri Mar 29 21:25:02 2013 
  213. ;; MSG SIZE  rcvd: 100 
  214.  
  215.  
  216. 6、實現反向解析 
  217.  
  218. [root@localhost named]vim /etc/named.conf 
  219. zone "86.16.172.in-addr.arpa"  IN { 
  220.                 type master; 
  221.                 file "172.16.86.zone"
  222.  
  223. [root@localhost named]# vim 172.16.86.zone 
  224. $TTL 600 
  225. @    IN  SOA  ns1.mageedu.com.  admin.mageedu.com. ( 
  226.                 2013040101 
  227.                 1H 
  228.                 5M 
  229.                 2D 
  230.                 6H ) 
  231.                 IN      NS      ns1.mageedu.com. 
  232. 1               IN      PTR     ns1.mageedu.com. 
  233. 1               IN      PTR     www.mageedu.com. 
  234. 2               IN      PTR     mail.mageedu.com. 
  235.  
  236. [root@localhost named]# chmod 640 172.16.86.zone  
  237. [root@localhost named]# chown root:named 172.16.86.zone                                                      
  238.  
  239. [root@localhost named]# named-checkzone "86.16.172.in-addr.arpr"  172.16.86.zone  
  240. zone 86.16.172.in-addr.arpr/IN: loaded serial 2013040101 
  241. OK 
  242.  
  243. [root@localhost named]# service named restart 
  244. Stopping named:                                            [  OK  ] 
  245. Starting named:                                            [  OK  ] 
  246.  
  247. [root@localhost named]# dig -x 172.16.86.1      #dig -x IP 根據IP查主機名 
  248.  
  249. ; <<>> DiG 9.7.0-P2-RedHat-9.7.0-6.P2.el5_7.4 <<>> -x 172.16.86.1 
  250. ;; global options: +cmd 
  251. ;; Got answer: 
  252. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46711 
  253. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 1 
  254.  
  255. ;; QUESTION SECTION
  256. ;1.86.16.172.in-addr.arpa.  IN  PTR 
  257.  
  258. ;; ANSWER SECTION
  259. 1.86.16.172.in-addr.arpa. 600   IN  PTR www.mageedu.com. 
  260. 1.86.16.172.in-addr.arpa. 600   IN  PTR ns1.mageedu.com. 
  261.  
  262. ;; AUTHORITY SECTION
  263. 86.16.172.in-addr.arpa. 600 IN  NS  ns1.mageedu.com. 
  264.  
  265. ;; ADDITIONAL SECTION
  266. ns1.mageedu.com.    600 IN  A   172.16.86.1 
  267.  
  268. ;; Query time: 5 msec 
  269. ;; SERVER: 172.16.86.1#53(172.16.86.1) 
  270. ;; WHEN: Fri Mar 29 21:43:49 2013 
  271. ;; MSG SIZE  rcvd: 119 
  272.  
  273. [root@localhost named]# dig -x 172.16.86.2 
  274.  
  275. ; <<>> DiG 9.7.0-P2-RedHat-9.7.0-6.P2.el5_7.4 <<>> -x 172.16.86.2 
  276. ;; global options: +cmd 
  277. ;; Got answer: 
  278. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 50818 
  279. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 
  280.  
  281. ;; QUESTION SECTION
  282. ;2.86.16.172.in-addr.arpa.  IN  PTR 
  283.  
  284. ;; ANSWER SECTION
  285. 2.86.16.172.in-addr.arpa. 600   IN  PTR mail.mageedu.com. 
  286.  
  287. ;; AUTHORITY SECTION
  288. 86.16.172.in-addr.arpa. 600 IN  NS  ns1.mageedu.com. 
  289.  
  290. ;; ADDITIONAL SECTION
  291. ns1.mageedu.com.    600 IN  A   172.16.86.1 
  292.  
  293. ;; Query time: 2 msec 
  294. ;; SERVER: 172.16.86.1#53(172.16.86.1) 
  295. ;; WHEN: Fri Mar 29 21:44:16 2013 
  296. ;; MSG SIZE  rcvd: 106 
  297.  
  298. [root@localhost named]# dig -x 172.16.86.3 
  299.  
  300. ; <<>> DiG 9.7.0-P2-RedHat-9.7.0-6.P2.el5_7.4 <<>> -x 172.16.86.3 
  301. ;; global options: +cmd 
  302. ;; Got answer: 
  303. ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28749 
  304. ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 
  305.  
  306. ;; QUESTION SECTION
  307. ;3.86.16.172.in-addr.arpa.  IN  PTR 
  308.  
  309. ;; ANSWER SECTION
  310. 3.86.16.172.in-addr.arpa. 600   IN  PTR www.mageedu.com. 
  311.  
  312. ;; AUTHORITY SECTION
  313. 86.16.172.in-addr.arpa. 600 IN  NS  ns1.mageedu.com. 
  314.  
  315. ;; ADDITIONAL SECTION
  316. ns1.mageedu.com.    600 IN  A   172.16.86.1 
  317.  
  318. ;; Query time: 6 msec 
  319. ;; SERVER: 172.16.86.1#53(172.16.86.1) 
  320. ;; WHEN: Fri Mar 29 21:44:29 2013 
  321. ;; MSG SIZE  rcvd: 105 
  322.  
  323.  
  324. 7、就這樣一個簡單的DNS服務器就作成了,是否是很簡單啊 ,本身動手實現如下吧。 
相關文章
相關標籤/搜索