Linux配置DNS服務器
1、軟件安裝,命令如下:
yum install -y bind bind-utils
其中/etc/named.conf為DNS主配置文件
/usr/lib/systemd/system/named.service為DNS服務控制單元
2、編輯配置文件/etc/named.conf
要配置DNS服務器,需修改配置文件/etc/named.conf。如果不存在則創建該文件
本示例實現的功能是搶建一個域名服務器ns.oa.com,位於192.168.19.101,其他的主機
可以通過域名服務器解析到已經註冊的以“oa.com”結尾的域名。配置如下:
Name.conf配置文件中的配置項非常多,部分如下:
options: 是全局服務器的配置的選項,即在options中指定的參數,對配置中的任何域都有效,
如在服務器上要配置多個域如test1.com t test2.com, 在option中指定的選項對這些都生效。
listen-on port: DNS服務實際是一監聽在本機53端口的TCP服務程序。該選項用於指定域名服務的
網絡接口,如監聽在本機IP上或127.0.0.1.此處"any" 表示接收所有主機的連接。
directory:指定 named 從/var/named 目錄下讀取DNS數據文件,這個目錄用戶可自行指定並創建,
指定後所有的DNS數據文件都存放在此目錄下,註意目錄下的文件所屬的組應為named,
否則,域名服務無法讀取數據。
dump-file:當執行導出命令時將DNS服務器的緩存數據存儲到指定的文件 中。
statistics-file:指定 named 服務的統計文件,當執行統計命令時,會將內存中的統計信息追加到該文件中。
allow-query:允許那些客戶端可以訪問DNS服務,此處 " any " 表示任意主機。
zone:每一個 zone就是定義一個域的相關信息及指定了named服務從哪些文件中獲得DNS各個域名的
數據的文件
3、編輯DNS數據文件/var/named/oa.com.zone
該文件為DNS數據文件,可以配置每個域名指向的實際IP, 此文件可通過復制目錄/var/named中的
named.localhost獲得模板,配置內容如下:
其中:
TTL:表示域名緩存周期字段,指定該資源文件中的信息存放在DNS緩存服務器的時間,此處設置為3600秒,
表示超過3600秒則DNS緩存服務器重新獲取該域名的信息,
@:表示本域,SOA描述了一個授權區域,如有oa.com的域名請求將到 ns.oa.com域查找,root表示接收信息
的郵箱,此處為本地的root用戶。
serial:表示該區域文件的版本號,當區域文件中的數據改變時,這個數值將要改變,從服務器在一定時間以後
請求主服務器的SOA記錄,並將該序列號值與緩存中的SOA記錄的序列號相比較,如果數據變了,從服務器
將重新拉取主服務器的數據信息.
refresh:指定了從域名服務器將要檢查主域名服務器的SOA記錄的時間間隔,單位為秒。
retry:指定了從域名服務器的一個請求或一個區域刷新刷新後,從服務器重新與主服務器聯系的時間間隔(s),
expire:指在指定的時間內,如果從服務器還不能聯系到主服務器,從服務器將丟失所有的區域數據
Minimum:如果沒有明確指定TTL的值,則minimum表示域名默認的緩存周期。
A:表示主機記錄,用於將一個主機名與一個或一組IP地址相對應。
NS:一條NS記錄指向一個給定區域的主域名服務器,以及包含該服務器主機名的資源記錄。
CNAME:用來將一個域名和該域名的別名相關聯,訪問域名的別名和訪問域名的原始名字將解析到同樣的主機地址。
備註:默認權限可能會阻止bind 訪問oa.com.zone文件,因由root用戶使用命令chgrp named oa.com.zone修改文件所屬的用戶組;
DNS服務測試
DNS服務端部署過多後,客戶端需要做一定的設置才能訪問域名服務器,步驟如下:
1、配置/etc/resolv.conf
如需正確地解析域名,客戶端需要設置DNS服務器地址,DNS服務器地址修改如下:
2、域名測試
域名測試可以使用ping、nslookup或dig命令,測試如下
如有上述顯示則說明bbs.oa.com成功解析到192.168.19.102。
Linux配置DNS服務器