1. 程式人生 > >bind DNS服務配置

bind DNS服務配置

bind DNS服務配置

域名

當你訪問網站時,你可以輸入FQDN(Fully Qualified Domain Name,完全限定域名)或類似likegeeks.com或www.google.com的域名。在域名中從右到左的兩個點之間的每個文字依次是頂級域元件、二級域元件和三級域元件。

所以,com是頂級域名元件; google是二級域元件; 而www是三級域名元件。

實際上,當你訪問任何網站時,瀏覽器會預設在域的末尾新增一個不可見的點,因此該域將像www.google.com.一樣。 該點被稱為根域。

該點是由一大堆稱為根域名伺服器的特殊伺服器管理的。截止這篇文章發表前,世界上有13個根域名伺服器。 你可以把他們當成網際網路的大腦 – 如果他們失效了,世界上就沒有網際網路了。

DNS伺服器的型別

一共有三種DNS伺服器。

主DNS伺服器

這些伺服器上存放了特定域名的配置檔案,並且基於此權威地規定了特定域名的地址。主DNS伺服器知道全部在它管轄範圍的主機和子域名的地址。

輔助DNS伺服器

這些伺服器作為主DNS伺服器的備份,也承擔一定負載。主伺服器知道輔助DNS伺服器的存在,並且會向他們推送更新。

快取DNS伺服器

這些伺服器上不存放特定域名的配置檔案。當客戶端請求快取伺服器來解析域名時,該伺服器將首先檢查其本地快取。如果找不到匹配項便會詢問主伺服器。接著這條響應將被快取起來。您也可以輕鬆地將自己的系統用作快取伺服器。

hosts檔案

在沒有DNS伺服器的情況下,每個系統在本地網路上保留其主機名和相應IP地址列表的副本是合理的——特別是在沒有網際網路連線的小型站點上。

在Linux系統中,這個列表就是/etc/hosts檔案。 即使你沒有DNS伺服器或DNS伺服器不可用,該檔案也可以使用/etc/hosts檔案將IP地址轉換為名稱。

也許你已經有DNS伺服器了,但你也會因為其它原因而想保留這個檔案。例如,系統可能需要在向外部查詢之前在本地查詢DNS伺服器的IP地址;這意味著系統在查詢DNS伺服器之前先檢索該檔案,如果查詢到對應的域則無須查詢任何DNS伺服器直接將其轉換為IP地址。

目錄結構

主配置檔案 /etc/named.conf

DNS資料庫目錄/var/named/

DNS地址配置檔案/etc/resolv.conf

hosts檔案/etc/hosts|hosts配置檔案/etc/host.conf(開啟關閉hosts功能)

安裝

yum install bind    //DNS服務端

配置

這個服務使用 /etc/named.conf 作為配置檔案。
BIND 在那個檔案中使用像下面這樣的一些語句:

options: 用於全域性 BIND 配置。

logging: 配置哪些需要記錄,哪些需要忽略。我推薦你看看 Linux syslog server。

zone: 定義 DNS 區域。

include: 在 named.conf 中包含另一個檔案。

在 options 語句中可以看到 BIND 的工作目錄在 /var/named。

zone 語句可用於定義 DNS 區域,比如域名 google.com,它包含子域名 mail.google.com 和 analytics.google.com。

上述三個域名(主域名和子域名) 都有一個由 zone 語句定義的區域。

1、修改主配置檔案/etc/named.conf,開啟DNS服務的監聽

vi /etc/named.conf

listen-on port 53 {any;};       
//將監聽的地址改為any,監聽本機的所有地址。

listen-on-v6 port 53 {any;};
allow-query     { any; };       
//改為any,允許任意主機查詢

2、定義一個主域伺服器(建立正向解析區域)

​ 可以在named.conf 中新增,也可以新增在其他輔配置檔案中,然後在named.conf中包含進來

例如:include "/etc/named.rfc1912.zones";

vi /etc/named.conf  //編輯輔配置檔案
zone "xx.com" IN {              
        type master;
        file "xx.com.zone";
        allow-update { none; };
};
//新增正向解析區域 xx.com
//使用file 引數指出該區域的資料庫檔案(預設/var/named目錄下,根據主配置檔案的引數決定)

3、建立正向解析資料庫檔案,並修改許可權。

cd /var/named
cp named.localhost xx.com.zone  
chmod 644 xx.com.zone //使named使用者擁有讀取的許可權
vi xx.com.zone  //編輯資料庫檔案,設定解析條目
        NS      @
        A       192.168.128.133
        AAAA    ::1
www     A       192.168.128.133
//格式如圖所示。   A 對應 IPv4的解析條目   AAAA對應IPv6的解析條目。
//注意不可缺少      
        A       192.168.128.133
        AAAA    ::1
不能缺少沒有主機名的這兩項,否則會造成服務無法啟動。逆向解析資料庫也是如此。

4、修改本機DNS地址,重啟named服務,測試本機DNS服務是否有效。

vi /etc/resolvconf
//修改本機的DNS地址,改為127.0.0.1或本機IP
service named restart   //重啟DNS服務

nslookup www.xx.com

5、建立逆向解析條目和資料庫

vi /etc/named.rfc1912.zones  //編輯DNS輔配置檔案
//參考末尾的逆向解析條目,建立自己的逆向解析。
zone "128.168.192.in-addr.arpa" IN {
        type master;
        file "128.168.192.zone";
        allow-update { none; };
};
//注意格式問題,比如IP地址點分十進位制的格式,每個十進位制為一個整體,倒著書寫,且不寫主機位。
//“.in-addr.arpa” 為逆向解析的固定格式  不能寫錯。
//資料庫檔案可以新建,也可以使用正向的資料庫,在其中新增逆向的條目。
//注意許可權問題。
cd /var/named
cp named.localhost 128.168.192.zone
chmod 644 128.168.192.zone

6、編輯逆向解析條目

vi 128.168.192.zone

133     PTR www.xx.com.
//此為逆向解析的條目格式
不能缺少沒有主機名的這兩項,否則會造成服務無法啟動。逆向解析資料庫也是如此。

7、重啟服務,進行檢測

service named restart

[[email protected] named]# nslookup 192.168.128.133
Server:     192.168.128.133
Address:    192.168.128.133#53

133.128.168.192.in-addr.arpa    name = www.alibaba.com.

DNS記錄型別

資料庫檔案包含諸如SOA、NS、A、PTR、MX、CNAME和TXT在內的記錄型別。

A和AAAA: Address Records(地址記錄)

A記錄用於提供從主機名到IP地址的對映support IN A 192.168.1.5。

如果你在地址為192.168.1.5上的support.example.com上有一個主機,你可以像上面的例子那樣輸入。

請注意,我們所寫的主機並沒有句號。

PTR: Pointer Records(指標記錄)

PTR記錄用於執行反向名稱解析,允許某人指定IP地址然後找出對應的主機名。

這與A記錄的功能相反:192.168.1.5 IN PTR support.example.com.

在這裡,我們鍵入具有點號的完整主機名。

MX: Mail Exchange Records(郵件交換記錄)

MX記錄告訴其他站點關於你所在域的郵件伺服器地址:example.com. IN MX 10 mail.

當然這個域以句號結束。數字10是郵件伺服器的重要性標誌,如果你擁有多個郵件伺服器,其中較小的數字不太重要。

CNAME: Canonical Name Records(權威名稱記錄)

CNAME記錄允許你為主機名建立別名。當你想提供一個易於記住的名稱時,這很有用。

假設某個站點具有一個主機名為whatever-bignameis.example.com的Web伺服器,並且由於系統是Web伺服器,因此可以為主機建立一個名為www的CNAME記錄或者別名。

你可以建立名為www.example.com的域名建立CNAME記錄:

whatever-bignameis      IN           A                    192.168.1.5

www                     IN           CNAME                whatever-bignameis

第一行通知DNS伺服器關於別名的位置。第二行建立一個指向www的別名。

TXT記錄

您可以將任何資訊儲存到TXT記錄中,例如你的聯絡方式或者你希望人們在查詢DNS伺服器時可獲得的任意其他資訊。

你可以這樣儲存TXT記錄:example.com. IN TXT ” YOUR INFO GOES HERE”.

此外,RP記錄被建立為對host聯絡資訊的顯式容器:example.com. IN RP mail.example.com. example.com。

DNS TTL值

在/etc/named.conf檔案的頂部,這裡有一個$TTL條目。

該條目告訴BIND每個單獨記錄的TTL值(time to live,生存時間值)。

它是以秒為單位的數值,比如14,400秒(4個小時),因此DNS伺服器最多快取你的域檔案4個小時,之後就會向你的DNS伺服器重新查詢。

你可以降低這個值,但是預設值通常是合理的。除非你知道你正在做什麼。

Host命令

在你成功新增或修改記錄後,可以使用host命令檢視主機是否正確解析。

host命令允許你將主機名解析為IP地址:$ host example.com。

此外,你可以執行反向查詢:$ host 192.168.1.5。

你可以this在此篇文章中檢視更多關於host和dig命令的資訊。

Whois命令

whois命令用於確定域名的所有權及其擁有者的e-mail地址和聯絡電話:$ whois example.com.

Rndc命令

rndc工具可用於安全地管理名稱伺服器,因為與伺服器的所有通訊均通過數字簽名進行身份驗證。

此工具用於控制名稱伺服器和除錯問題。 你可以通過以下方式檢查Linux DNS伺服器的狀態:$ rndc status。

此外,如果你更改任何域(zone)檔案,您可以重新載入服務,而無須重啟命名服務:$ rndc reload example.com。

在這裡,我們重新載入example.com域檔案。 你可以重新載入所有域:$ rndc reload。

或者你可以新增新的域或更改服務的配置。 你可以重新載入配置,如下所示:

$ rndc reconfig。

Linux DNS解析器

我們已經知道Linux DNS伺服器的工作原理以及如何配置它。另一部分當然是與DNS伺服器互動的(正在與DNS伺服器通訊以將主機名解析為IP地址的)客戶端。

在Linux上,解析器位於DNS的客戶端。要配置解析器,可以檢查/etc/resolv.conf這個配置檔案。

在基於Debian的發行版上,可以檢視/etc/resolvconf/resolv.conf.d/目錄。

/etc/resolv.conf檔案中包含客戶端用於獲取其本地DNS伺服器地址所需的資訊。

第一個表示預設搜尋域,第二個表示主機名稱伺服器(nameserver)的IP地址。

名稱伺服器行告訴解析器哪個名稱伺服器可使用。 只要你的BIND服務正在執行,你就可以使用自己的DNS伺服器。

錯誤整理:

一、逆向解析條目中 指定的解析出來的名字需要帶上‘.’

比如 254 PTR xx.com. // PTR是指標 ‘.’

如果不攜帶‘.’ 則會出現

[[email protected] named]# nslookup 192.168.128.133
Server:     192.168.128.133
Address:    192.168.128.133#53

133.128.168.192.in-addr.arpa    name = www.xx.com.128.168.192.in-addr.arpa.

//解析出來的域名不能正確顯示(‘.’的作用)

二、逆向解析區域條目名錯誤

zone "128.168.192.in-addr.arpa" IN {
        type master;
        file "xx.com.zone";
        allow-update { none; };
};
//上面為正確的格式
//將第一行改為
zone "128.168.192.in-addr-arpa" IN {
//‘.’改為‘-’ 在查詢的時候就無法匹配到該條目
[[email protected] named]# nslookup 192.168.128.133
Server:     192.168.128.133
Address:    192.168.128.133#53

** server can't find 133.128.168.192.in-addr.arpa.: NXDOMAIN

三、修改了預設埠號

主配置檔案/etc/named.conf中可以修改監聽的埠號,將53修改為其他埠會導致無法解析。
nslookup 192.168.128.133
;; connection timed out; trying next origin
;; connection timed out; no servers could be reached
//連線超時

四、對資料庫檔案沒有讀取的許可權

1、資料庫檔案的許可權:
-rw-r--r--. 1 root  root   201 614 12:09 xx.com.zone
2、查詢驗證無誤
[root@conling named]# nslookup www.xx.com
Server:     192.168.128.133
Address:    192.168.128.133#53

Name:   www.xx.com
Address: 192.168.128.133

3、修改許可權,取消named的讀取
-rw-------. 1 root  root   201 614 12:09 xx.com.zone

4、查詢驗證
[root@conling named]# nslookup www.xx.com
Server:     192.168.128.133
Address:    192.168.128.133#53

** server can't find www.xx.com: NXDOMAIN

五、解析的條目不存在


//在資料庫中不存在匹配的條目時:
[[email protected] named]# nslookup 192.168.128.13
Server:     192.168.128.133
Address:    192.168.128.133#53

** server can't find 13.128.168.192.in-addr.arpa.: NXDOMAIN

相關推薦

bind DNS服務配置

bind DNS服務配置 域名 當你訪問網站時,你可以輸入FQDN(Fully Qualified Domain Name,完全限定域名)或類似likegeeks.com或www.google.com的域名。在域名中從右到左的兩個點之間的每個文字依次

配置 bind DNS 服務器器

class lag RM 12.1 cti centos6 一次 AR fig DNS服務器常見概念 DNS服務概述: DNS(Domain Name System--域名系統),在TCP/IP 網絡中有著非常重要的地位,能夠提供域名和IP地址的解析服務. DNS是一個分

在 CentOS7.0 上搭建 Chroot 的 Bind DNS 服務

n) 地址 授權 dns 部分 soa 自啟 named 就會 BIND(Berkeley internet Name Daemon)也叫做NAMED,是現今互聯網上使用最為廣泛的DNS 服務器程序。這篇文章將要講述如何在 chroot 監牢中運行 BIND,這樣它就無法訪

Linux7.0下簡單DNS服務配置實驗

1.配置yum 2.安裝DHCP服務 3.修改配置檔案 4.關閉防火牆SELinux(當然也可以設定) 5.重啟DHCP服務 6.檢驗 1.# vi  /etc/yum.repos.d/base.repo     [base]     name=base     base

DNS服務基礎及bind基礎配置和應用

遠程服務 abc time 通過 加載 rac 文件同步 linux. 全局配置 DNS服務基礎及bind基礎配置和應用 DNS服務基礎011.DNS:Domain Name Service, ( 應用層協議)2.tld:Top Level Domain 頂級域(

Linux運維實戰之DNSbind服務器的安裝與配置

tle 同時 文件句柄 服務器端 date bka rync adt 發展 【本次博文的主要內容】 bind服務器簡介(包括客戶端工具dig的介紹) 配置正向解析DNS服務器 配置反向解析DNS服務器 配置輔助DNS服務器並在主輔之間實現區域傳送 一、BIND服務器簡

Centos DNS服務(二)-bind主從配置與基於TSIG加密的動態更新

保持 none ase mas 分號 摘要 tp服務器 pro 命令 DNS的主從配置 DNS從服務器也叫輔服DNS服務器,如果網絡上某個節點只有一臺DNS服務器的話,首先服務器的抗壓能力是有限的,當壓力達到一定的程度,服務器就可能會宕機罷工,其次如果這臺服務器出現了硬件故

CentOS7.4下DNS服務器軟件BIND安裝及相關的配置(一)

dns服務器 bind-chroot nslookup (一)DNS簡介:DNS,全稱Domain Name System,即域名解析系統。域名是通過DNS來實現的,每個域名代表一個IP,DNS就是用來在ip地址與域名之間進行轉換的服務。DNS幫助用戶在互聯網上尋找路徑。在互聯網上的每一個計算機都

Linux-dns基礎知識和BIND的簡單配置-3(主從DNS服務器及轉發)

-m 區域解析庫 com window 完成 file 發的 new 配置 rndc的相關知識:1.什麽是rndc:Remote Name Domain Controller,遠程名稱域控制器rndc 通過一個 TCP 連接與名字服務器通信,發送經過數字簽名認證的命令。在當

Linux—配置DNS服務BIND

本章內容 名字解析 DNS服務 實現主從伺服器 實現子域 實現view 編譯安裝 壓力測試 DNS排錯 DNS服務 DNS:Domain Name Service 應用層協議 C/S, 伺服器埠:53/udp, 53/tcp BIND: Bekerley

DNS服務的原理與配置

dns 楊書凡 域名 域名解析 服務器 DNS服務的原理與配置 DNS是一組協議和服務,基本功能是在主機名與對應的IP地址之間建立映射管理。 *主機名便於記憶 *數字形式的IP地址可能會由於各種原因而改變,而主機名可以保持不變。DNS的組成 根域:就是“.”(點號)

Linux DNS 服務器安裝、配置和維護

web med this 包含 從右到左 主域 回復 特定 mini 每個 IP 地址都可以有一個主機名,主機名由一個或多個字符串組成,字符串之間用小數點隔開。有了主機名,就不要死記硬背每臺 IP 設備的 IP 地址,只要記住相對直觀有意義的主機名就行了。這就是 DNS 協

Kubernetes DNS 服務安裝配置

docker kubernets skydns kube2sky Kubernetes的DNS服務是基於SkyDNS實現的,同時又需要和API Server緊密溝通,它的基本工作方式是通過API Server監視服務創建,一旦有新的服務創建就通知SkyDNS創建一條域名解析記錄。溝通AP

本地配置DNS服務器(MAC版)

希望 設備 gin host bin 方式 regexp update 服務 作為一個前端開發者,會遇到使用cookie的情況,常見的如:登錄,權限控制,視頻播放,圖形驗證碼等,這時候本地開發者在PC上會使用修改hosts的方式添加指向本地的域名,來獲取cookie的同域名

DNSBIND服務搭建

查詢 1-1 left conf con 設置 install ima 修改 一、DNS 1.負責將域名解析為IP(正向解析);將IP解析為域名(反向解析) 2.DNS查詢過程 如客戶端訪問www.baidu.com 1)客戶端查看本地是否存有DNS緩存 2)客戶端查看本地

使用Bind搭建DNS服務

fresh one master 主程 維護 n-1 找到 table systemctl DNS域名解析服務(Domain Name System)是用於解析域名與IP地址對應關系的服務,功能上可以實現正向解析與反向解析:   正向解析:根據主機名(域名)查找對應的IP

SentOS 6.5上配置DNS服務

scan 配置 ann 告訴 相同 chang 6.0 def 調試 1. 軟件安裝: [root@dns ~]# yum install -y bind bind-chroot bind-utils 說明: bind為DNS服務主要軟件包; bind-chroo

DNS服務簡介和配置詳解

dns基本原理 dns簡介 dns服務配置過程 DNS服務簡介和配置詳解1、什麽是DNS? DNS( Domain Name System)是“域名系統”的英文縮寫,是一種組織成域層次結構的計算機和網絡服務命名系統,使用的是UDP協議的53號端口,它用於TCP/IP網絡,它所提供的服務是用來將主機

計算機配置似乎是正確的但該設備 DNS 服務

type tro ima 管理器 靜態 ado 問題: strong 處理方法 今天一個奇怪的問題:公司無線突然多個同事出現(配圖截圖於網絡)仍然沒有解決問題 查找核心交換機mac綁定AP管理器mac綁定 處理方法發:將核心交換機mac綁定IP static(靜態)刪除掉即

小型公司網絡組建及WEB服務配置DNS解析

blog 4.6 4.0 網關 3.1 info huawei 5.2.1 status 實驗名稱:小型公司網絡組建及WEB服務配置及DNS解析實驗拓撲:所需設備:1、5臺三層交換機(路由器也OK) 2、 1臺