CentOS 7下簡答搭建DNS服務器

1、DNS相關介紹 git

  DNS(Domain Name System)域名系統協議,做爲域名和IP地址相互映射的一個分佈式數據庫,可以使用戶更方便的訪問互聯網,而不用挨個記住IP地址。經過主機名,最終獲得該主機名對應的IP地址的過程叫作域名解析(或主機名解析)。DNS協議號是udp53。DNS服務器的做用就是就比如通信錄同樣,爲各類網絡程序找到對應目標主機的IP地址或對應的主機域名。每一個IP地址均可以有一個主機名,主機名由一個或多個字符串組成,字符串之間用小數點隔開。有了主機名,就不要死記硬背每臺IP設備的IP地址,只要記住相對直觀有意義的主機名就好了。這就是DNS協議所要完成的功能。數據庫

主機名到IP地址的映射有兩種方式:
  一、靜態映射,每臺設備上都配置主機到IP地址的映射,各設備獨立維護本身的映射表,並且只供本設備使用;
  二、動態映射,創建一套域名解析系統(DNS),只在專門的DNS服務器上配置主機到IP地址的映射。緩存

在解析域名時,能夠首先採用靜態域名解析的方法,若是靜態域名解析不成功,再採用動態域名解析的方法。能夠將一些經常使用的域名放入靜態域名解析表中,這樣能夠大大提升域名解析效率。正向解析:根據主機名稱(域名)查找對應的IP地址(實際應用中最多的),反向解析:根據IP地址查找對應的主機域名(不經常使用,通常用於搭建郵件服務器時)。安全

  根據服務器與所提供域名解析記錄的關係,將DNS服務器分爲不一樣的角色:
  一、緩存域名服務器,也稱爲高速緩存服務器,經過向其餘域名服務器查詢得到域名->IP地址記錄,將域名查詢結果緩存到本地,提升重複查詢時的速度
  二、主域名服務器,特定DNS區域的官方服務器,具備惟一性,負責維護該區域內全部域名->IP地址的映射記錄
  三、從域名服務器(通俗一點就是用於備份DNS服務器的),也稱爲輔助域名服務器其維護的域名->IP地址記錄,來源於主域名服務器搭建DNS服務,應用的軟件爲:BIND(Berkeley Internet Name Daemon)服務器

2、搭建過程
  網絡

  1 1. 安裝必要軟件包
  2 [root@SZH1 ~]# yum -y install bind bind-chroot bind-util bind-libs
  3 解釋:
  4 bind           提供了域名服務的主要程序及相關文件
  5 bind-utils     提供了對DNS服務器的測試工具程序(如nslookup、dig等)
  6 bind-chroot    爲bind提供一個假裝的根目錄以加強安全性(將「/var/named/chroot/」文件夾做爲BIND的根目錄)
  7 
  8 2. 修改dns配置文件
  9 修改前先備份
 10 [root@SZH1 ~]#  cp -p /etc/named.conf /etc/named.conf.bak // 參數-p表示備份文件與源文件的屬性一致。
 11 [root@SZH1 ~]# cat /etc/named.conf
 12 options {
 13     listen-on port 53 { any; };
 14     listen-on-v6 port 53 { any; };
 15     directory     "/var/named";
 16     dump-file     "/var/named/data/cache_dump.db";
 17     statistics-file "/var/named/data/named_stats.txt";
 18     memstatistics-file "/var/named/data/named_mem_stats.txt";
 19     recursing-file  "/var/named/data/named.recursing";
 20     secroots-file   "/var/named/data/named.secroots";
 21     allow-query     { any; };
 22 
 23     /* 
 24      - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
 25      - If you are building a RECURSIVE (caching) DNS server, you need to enable 
 26        recursion. 
 27      - If your recursive DNS server has a public IP address, you MUST enable access 
 28        control to limit queries to your legitimate users. Failing to do so will
 29        cause your server to become part of large scale DNS amplification 
 30        attacks. Implementing BCP38 within your network would greatly
 31        reduce such attack surface 
 32     */
 33     recursion yes;
 34 
 35     dnssec-enable yes;
 36     dnssec-validation yes;
 37 #    dnssec-lookaside auto;
 38     /* Path to ISC DLV key */
 39     bindkeys-file "/etc/named.root.key";
 40 
 41     managed-keys-directory "/var/named/dynamic";
 42 
 43     pid-file "/run/named/named.pid";
 44     session-keyfile "/run/named/session.key";
 45 };
 46 zone "szh.com" IN {
 47     type master;
 48     file "szh.com_zone";
 49     allow-update { none; };
 50 };
 51 zone "110.168.192.in-addr.arpa" IN {
 52     type master;
 53     file "192.168.110.zone";
 54     allow-update { none; };
 55 
 56 };include "/etc/named.rfc1912.zones";
 57 
 58 這兩個zone我在配置文件裏直接上的,我看不少人說要在/etc/named.rfc1912.zones文件中添加,但由於配置文件中存在最後一行,因此贊成生效。
 59 保存退出後輸入named-checkconf  // 檢查named.conf是否有語法問題。
 60 
 61 3. 查看named進程運行是否正常
 62 [root@SZH1 ~]# systemctl start named // 開啓named進程
 63 [root@SZH1 ~]# ps -eaf|grep named // 檢查進程
 64 [root@SZH1 ~]# netstat -nult|grep :53 // 檢查監聽端口
 65 
 66 4. 添加正向解析
 67 [root@SZH1 named]# cat szh.com_zone 
 68 $TTL 1D
 69 @    IN SOA    @ rname.invalid. (
 70                     0    ; serial
 71                     1D    ; refresh
 72                     1H    ; retry
 73                     1W    ; expire
 74                     3H )    ; minimum
 75     NS    @
 76     A    192.168.110.230
 77     AAAA    ::1
 78 ns  A 192.168.110.230
 79 vcenter  A 192.168.110.231
 80 
 81 [root@SZH1 named]# chown :named /var/named/szh.com_zone //受權 named 用戶
 82 
 83 [root@SZH1 named]# named-checkzone "szh.com" "/var/named/szh.com_zone" //檢查區域文件是否正確 
 84 
 85 5. 添加反向解析
 86 [root@SZH1 named]# cat 192.168.110.zone 
 87 $TTL 1D
 88 @    IN SOA    @ rname.invalid. (
 89                     0    ; serial
 90                     1D    ; refresh
 91                     1H    ; retry
 92                     1W    ; expire
 93                     3H )    ; minimum
 94     NS    @
 95     A    192.168.110.230
 96     AAAA    ::1
 97 230  PTR ns.szh.com.
 98 231  PTR vcenter.szh.com.
 99 
100 [root@SZH1 named]# chown :named /var/named/192.168.110.zone  //受權 named 用戶
101 
102 [root@SZH1 named]# named-checkzone "110.168.192.in-addr.arpa" "/var/named/192.168.110.zone " //檢查區域文件是否正確 
103 
104 6. 重啓服務,檢查dns是否生效
105 [root@SZH1 named]# systemctl restart named
106 [root@SZH1 named]# nslookup
107 > vcenter.szh.com
108 Server:        192.168.110.230
109 Address:    192.168.110.230#53
110 
111 Name:    vcenter.szh.com
112 Address: 192.168.110.231
113 ------------------------------------------------------dns配置成功-------------------------------------------------------------
相關文章
相關標籤/搜索