Centos 安裝 DNS 服務

DNS 簡介git

    網絡通訊中,數據鏈路層使用 MAC 地址,網絡層使用 IP 地址,傳輸層使用端口號;數據庫

    每臺計算機都須要有本身的 IP 地址,這樣才能保證信息傳輸的正確性,可是 IP 地址由數字構成,難以記憶和表達它的實際用途,因此用形象的域名來代替 IP 地址方便交流和記憶;vim

    網絡通訊中數據包的傳輸仍是須要靠 IP 地址來進行,IP 地址填寫在數據包的頭部,才能進行數據的傳輸,當 www.test.com 向 www.test1.com 發送信息的時候,首先必須將這兩個域名轉化成實際的 IP 地址;緩存

    DNS 服務就是完成域名到 IP 或者 IP 到域名的解析(翻譯),而安裝了 DNS 服務的計算機就是 DNS 服務器;安全

    實現域名解析的方法主要有:服務器

    1)hosts 文件,要求全部互相解析的機器必須都配置;網絡

    2)NIS 集中管理域名,只適合局域網;session

    3)DNS 實現域名的層次化,分佈式管理;tcp

 

1、安裝 DNS分佈式

    DNS 服務有 BIND 軟件提供:yum install bind bind-utils bind-chroot

 

2、配置 DNS 服務器

    DNS 服務的主要配置有:

        /etc/named.conf        主要配置文件,配置端口、安全、日誌等

        /etc/named.rfc1912.zones    定義正反解區域相關

        正向解析:經過域名查找 IP;

          反向解析:經過 IP 查找域名;

        /var/named/        正反解數據庫

    一、配置 /etc/named.conf

        cp /etc/named.conf /etc/named.conf.bk

        DNS 配置文件中註釋爲雙斜槓 //

        vim /etc/named.conf

####################################################################      

options {
        //listen-on port 53 { 127.0.0.1; };
        //listen-on-v6 port 53 { ::1; };
        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     { any; };      //容許全部的主機進行 DNS 查詢

        /*
         - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
         - If you are building a RECURSIVE (caching) DNS server, you need to enable
           recursion.
         - If your recursive DNS server has a public IP address, you MUST enable access
           control to limit queries to your legitimate users. Failing to do so will
           cause your server to become part of large scale DNS amplification
           attacks. Implementing BCP38 within your network would greatly
           reduce such attack surface
        */
        recursion yes;

        //dnssec-enable yes; 
        //dnssec-validation yes;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

 

添加接收到查詢請求時,會先轉發到forwarders指定的DNS,查不到再執行遞歸

        forward first;                     

        forwarders {                      //(接上面)固然,在轉發以前,還會先查本地緩存

               DNS IP1;

               DNS IP2;

       };

####################################################################  

    二、配置 /etc/named.rfc1912.zones

        cp /etc/named.rfc1912.zones /etc/named.rfc1912.zones.bk

        vim /etc/named.rfc1912.zones

        定義 baidu.com 正向解

####################################################################

        zone "baidu.com" IN {
        type master;
        file "baidu.com.zone";
};

####################################################################

        定義 zone 文件 baidu.com.zone

    三、配置 /var/named/ 數據庫文件

        建立正向解析數據庫文件 /var/named/baidu.com.zone

        vim /var/named/baidu.com.zone

####################################################################

$TTL 600
@       IN     SOA     dns.baidu.com.    admin.baidu.com. (
                        2015091901
                        1H
                        5M
                        3D
                        12H
)
        IN     NS      dns
dns     IN     A       xxx.xxx.xxx.xxx
www   IN     A       xxx.xxx.xxx.xxx

####################################################################        

    四、啓動服務

        systemctl start named     -------    啓動 DNS 服務

        systemctl status named       -------   查看 DNS 服務狀態

        systemctl stop named    -------    中止 DNS 服務

        systemctl enable named    ------    開機自啓 DNS

    五、測試

        nslookup www.baidu.com 

####################################################################  

Server:        10.143.22.118            
Address:    10.143.22.118#53        -------    DNS 服務器地址

Non-authoritative answer:
www.baidu.com    canonical name = www.a.shifen.com.
Name:    www.a.shifen.com
Address: 220.181.112.244
Name:    www.a.shifen.com
Address: 220.181.111.188                -------    DNS  服務器解析的地址

####################################################################

 

六、端口

        DNS 需開啓 53 tcp udp 端口  

        阿里雲 Centos 7 上默認使用 firewall 控制防火牆,須要打開 53 端口;

        firewall-cmd --add-port=53/tcp

        firewall-cmd --add-port=53/udp

        須要永久生效添加選項:--permanent

        Centos 7 默認沒有安裝 iptables,若是要使用 iptables:

        yum install iptables.services 

        systemctl enable firewalld 

        systemctl stop firewalld

        默認安裝完 iptables 以後,會有下面兩條規則:

        -A FORWARD -j REJECT --reject-with icmp-host-prohibited

        -A INPUT -j REJECT --reject-with icmp-host-prohibited

        會攔截掉轉發和接收的 icmp 包;未細研究,註釋掉便可;

 

七、解析文件

        vim /etc/resolv.conf

相關文章
相關標籤/搜索