新聞中心
作為一名Linux系統(tǒng)管理員或網(wǎng)絡(luò)工程師,了解和掌握DNS(Domn Name System)配置是非常重要的。DNS是互聯(lián)網(wǎng)基礎(chǔ)設(shè)施的一部分,它允許我們通過域名來查找和訪問互聯(lián)網(wǎng)上的網(wǎng)站和資源。在這篇文章中,我們將介紹如何在Linux系統(tǒng)上配置和管理DNS服務(wù)。

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供東昌網(wǎng)站建設(shè)、東昌做網(wǎng)站、東昌網(wǎng)站設(shè)計、東昌網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、東昌企業(yè)網(wǎng)站模板建站服務(wù),10余年東昌做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
1.了解DNS的基本原理
為了理解如何配置DNS,我們需要了解一些基本的DNS原理。DNS由一個名為“域”的名稱空間組成,它是一個層次結(jié)構(gòu)。例如,www.example.com這個完整的域名可以被分解成三個部分:www是主機名,example是二級域名,com是一級域名。DNS服務(wù)器將這些域名映射到IP地址,以便我們可以使用名稱來訪問主機。
DNS有兩種常見的記錄類型:A記錄和CNAME記錄。A記錄將域名映射到IP地址,而CNAME記錄將域名映射到另一個域名。例如,www.example.com可以有一個對應(yīng)的A記錄和一個對應(yīng)的CNAME記錄。A記錄將www.example.com映射到IP地址,CNAME記錄將www.example.com映射到example.com。
2.安裝和配置BIND
BIND(Berkeley Internet Name Domn)是一個廣泛使用的DNS服務(wù)器軟件。它是Linux系統(tǒng)上最常用的DNS服務(wù)器軟件之一。在大多數(shù)Linux系統(tǒng)中,BIND可以通過軟件包管理器安裝。在CentOS上,可以使用以下命令安裝BIND:
“`
sudo yum install bind bind-utils
“`
在Debian/Ubuntu上,可以使用以下命令安裝BIND:
“`
sudo apt-get install bind9 bind9utils
“`
安裝完BIND后,我們需要進行一些配置。BIND的配置文件通常在/etc/named.conf文件中。可以使用以下命令編輯該文件:
“`
sudo vi /etc/named.conf
“`
可以在該文件中配置BIND的選項,包括監(jiān)聽的IP地址、日志記錄等。在該文件中還可以指定DNS的域名和記錄類型。例如,以下配置將example.com的A記錄映射到IP地址192.168.0.1:
“`
zone “example.com” {
type master;
file “/var/named/example.com.zone”;
};
“`
此外,我們還需要在文件系統(tǒng)上創(chuàng)建DNS數(shù)據(jù)文件,用于存儲DNS記錄??梢允褂靡韵旅顒?chuàng)建一個空白的數(shù)據(jù)文件:
“`
sudo touch /var/named/example.com.zone
“`
為了添加記錄,可以將相應(yīng)的條目添加到數(shù)據(jù)文件中。例如,以下條目將www.example.com映射到IP地址192.168.0.1:
“`
www IN A 192.168.0.1
“`
3.測試DNS配置
一旦完成DNS配置,我們就可以測試它是否正常工作。可以使用nslookup命令來查詢DNS記錄。例如,以下命令將查詢www.example.com的IP地址:
“`
nslookup www.example.com
“`
如果DNS配置正確,則應(yīng)該返回查詢到的IP地址。如果配置存在問題,則可能會返回錯誤信息。
另一個有用的測試方法是使用dig命令。該命令提供了更詳細的DNS查詢信息。例如,以下命令將查詢www.example.com的A記錄:
“`
dig A www.example.com
“`
該命令將返回許多詳細的DNS信息,包括查詢的DNS服務(wù)器和響應(yīng)時間等。
4.配置DNS前綴
通常,在企業(yè)網(wǎng)絡(luò)中,DNS前綴(也稱為搜索域)是一種常見的配置方式。這使得主機可以通過短名稱訪問其他主機。例如,如果DNS前綴為example.com,則可以使用“www”來代替“www.example.com”。
我們可以通過修改/etc/resolv.conf文件來配置DNS前綴??梢栽谠撐募刑砑右粋€domn條目來指定DNS前綴。例如,以下配置將設(shè)置DNS前綴為example.com:
“`
search example.com
“`
此外,我們還需要指定DNS服務(wù)器的IP地址。該設(shè)置可以通過在該文件中添加nameserver條目來實現(xiàn)。例如,以下配置將添加一個DNS服務(wù)器的IP地址:
“`
nameserver 192.168.0.1
“`
5.
配置和管理DNS服務(wù)是Linux系統(tǒng)管理員和網(wǎng)絡(luò)工程師的必備技能之一。在本文中,我們了解了DNS的基本原理,介紹了如何安裝和配置BIND DNS服務(wù)器,以及如何測試和配置DNS前綴。通過這些知識,我們可以,并提高我們在網(wǎng)絡(luò)管理方面的技能水平。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導(dǎo)10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,響應(yīng)式網(wǎng)站制作,設(shè)計師量身打造品牌風(fēng)格,熱線:028-86922220如何在在Linux系統(tǒng)上配置DNS服務(wù)器
安裝 BIND 軟件包
1、安裝
# yum -y install bind caching-nameserver
2、配置
下面的例子是亮毀薯以公網(wǎng)IP(172.16.0.80/29),局域網(wǎng)IP(192.168.0.0/24),域名(linuxde.net)作說明。余純在配置你自己的服務(wù)器時,請使用你自己的IP和域名。
# vim /etc/named.conf
options {
directory “/var/named”;
# query range
allow-query { localhost; 192.168.0.0/24; };
# transfer range
allow-transfer { localhost; 192.168.0.0/24; };
# recursion range
allow-recursion { localhost; 192.168.0.0/24; };
};
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
# here is the section for internal informations
vimew “internal” {
match-clients {
localhost;
192.168.0.0/24;
};
zone “.” IN {
type hint;
file “named.ca”;
};
# set zones for internal
zone “l(fā)inuxde.net” IN {
type master;
file “l(fā)inuxde.net.lan”;
allow-update { none; };
};
# set zones for internal
zone “0.168.192.in-addr.arpa” IN {
type master;
file “0.168.192.db”;
allow-update { none; };
};
zone “l(fā)ocaldomain” IN {
type master;
file “l(fā)ocaldomain.zone”;
allow-update { none; };
};
zone “l(fā)ocalhost” IN {
type master;
file “l(fā)ocalhost.zone”;
allow-update { none; };
};
zone “敬者0.0.127.in-addr.arpa” IN {
type master;
file “named.local”;
allow-update { none; };
};
zone “255.in-addr.arpa” IN {
type master;
file “named.broadcast”;
allow-update { none; };
};
zone “0.in-addr.arpa” IN {
type master;
file “named.zero”;
allow-update { none; };
};
};
vimew “external” {
match-clients {
any;
};
zone “.” IN {
type hint;
file “named.ca”;
};
# set zones for external
zone “l(fā)inuxde.net” IN {
type master;
file “l(fā)inuxde.net.wan”;
allow-update { none; };
};
# set zones for external *note
zone “80.0.16.172.in-addr.arpa” IN {
type master;
file “80.0.16.172.db”;
allow-update { none; };
};
};
include “/etc/rndc.key”;
# *note : For How to write for reverse resolvimng, Write network address reversely like below.
the case for 192.168.0.0/24
network address? 192.168.0.0
range of network? 192.168.0..168.0.255
how to write? 0.168.192.in-addr.arpa
case of 172.16.0.80/29
network address? 172.16.0.80
range of network? 172.16.0..16.0.87
how to write? 80.0.16.172.in-addr.arp
設(shè)置Zones
創(chuàng)建zone文件以便服務(wù)器能解析域名IP。
1、內(nèi)部zone文件
這個例子使用的是內(nèi)網(wǎng)地址(192.168.0.0/24),域名(linuxde.net),請根據(jù)自己的具體情況配置。
# vim /var/named/linuxde.net.lan
$TTL
@IN SOA ns.linuxde.net. root.linuxde.net. (
;Serial
;Refresh
;Retry
;Expire
;Minimum TTL
)
# define name server
IN NS ns.linuxde.net.
# internal IP address of name server
IN A.168.0.17
# define mail exchanger
IN MX 10 ns.linuxde.net.
# define IP address and hostname
nsIN A.168.0.17
2、外部zone文件
這個例子使用的是外網(wǎng)地址(172.16.0.80/29),域名(linuxde.net),請?zhí)鎿Q成自己的。
# vim /var/named/linuxde.net.wan
$TTL
@IN SOA ns.linuxde.net. root.linuxde.net. (
;Serial
;Refresh
;Retry
;Expire
;Minimum TTL
)
# define name server
INNS ns.linuxde.net.
# external IP address of name server
INA.16.0.82
# define Mail exchanger
INMX 10 ns.linuxde.net.
# define IP address and hostname
ns INA.16.0.82
創(chuàng)建zone文件使服務(wù)器能夠反向解析IP到域名。
3、內(nèi)部zone文件
這個例子使用的是內(nèi)網(wǎng)地址(192.168.0.0/24),域名(linuxde.net),請使用自己的設(shè)置替換。
# vim /var/named/0.168.192.db
$TTL
@IN SOA ns.linuxde.net. root.linuxde.net. (
;Serial
;Refresh
;Retry
;Expire
;Minimum TTL
)
# define name server
INNS ns.linuxde.net.
# define range that this domain name in
INPTR linuxde.net.
# define IP address and hostname
INA.255.255.0
INPTR ns.linuxde.net.
4、外部zone文件
這例子使用外網(wǎng)地址(172.16.0.80/29),域名(linuxde.net),請?zhí)鎿Q成自己的。
# vim /var/named/80.0.16.172.db
$TTL
@IN SOA ns.linuxde.net. root.linuxde.net. (
;Serial
;Refresh
;Retry
;Expire
;Minimum TTL
)
# define name server
INNS ns.linuxde.net.
# define range that this domain name in
INPTR linuxde.net.
# define IP address and hostname
INA.255.255.248
INPTR ns.linuxde.net.
啟動BIND
1、完成BIND的配置后,在啟動named之前,還需要建立chroot環(huán)境。
# yum -y install bind-chroot
# /etc/rc.d/init.d/named start
# chkconfig named on
2、操作檢驗
確認服務(wù)器已經(jīng)正確解析域名或IP地址。
# dig ns.linuxde.net.
; > DiG 9.3.4 > ns.linuxde.net.
;; global options: printcmd
;; Got answer:
;; ->>HEADER> DiG 9.3.4 > -x 192.168.0.17
;; global options: printcmd
;; Got answer:
;; ->>HEADER
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;17.0.168.192.in-addr.arpa.IN PTR
;; ANSWER SECTION:
17.0.168.192.in-addr.arpa.IN PTR ns.linuxde.net.
;; AUTHORITY SECTION:
0.168.192.in-addr.arpa.IN NS ns.linuxde.net.
;; ADDITIONAL SECTION:
ns.linuxde.net.0 IN A.168.0.17
;; Query time: 0 msec
;; SERVER: 192.168.0.17#53(192.168.0.17)
;; WHEN: Thu Mar 8 19:37:
;; MSG SIZE rcvd: 107
配置從DNS服務(wù)器
配置從DNS服務(wù)器比較簡單。下面的例子主DNS是“ns.linuxde.net”,從DNS是“ns.example.info”。
1、在主DNS服務(wù)器的zone文件作如下配置
# vim /var/named/linuxde.net.wan
$TTL
@IN SOA ns.linuxde.net. root.linuxde.net. (
# update serial
;Serial
;Refresh
;Retry
;Expire
;Minimum TTL
)
INNS ns.linuxde.net.
# add name server
INNS ns.example.info.
INA.16.0.82
INMX 10 ns.linuxde.net.
nsINA.16.0.82
# rndc reload
server reload successful
2、配置從DNS服務(wù)器
# vim /etc/named.conf
# add these lines below
zone “l(fā)inuxde.net” IN {
type slave;
masters { 172.16.0.82; };
file “slaves/linuxde.net.wan”;
};
# rndc reload
server reload successful
# ls /var/named/slaves
linuxde.net.wan# zone file in master DNS has been just transfered
設(shè)置別名記錄,如果你想為你的主機設(shè)置另一個名稱,在zone文件定義CNAME記錄
# vim /var/named/server-Linux.info.wan
$TTL
@IN SOA ns.server-linux.info. root.server-linux.info. (
# update serial
;Serial
;Refresh
;Retry
;Expire
;Minimum TTL
)
INNS ns.server-linux.info.
INA.16.0.82
INMX 10 ns.server-linux.info.
nsINA.16.0.82
# aliase IN CNAME server’s name
ftpINCNAME ns.server-linux.info.
# rndc reload
server reload successful
以下是一個整理的主配文件參數(shù)解釋(僅供參考)/**/代表注釋:
options { /*OPTIONS選項用來定義一些影響整個DNS服務(wù)器的環(huán)境,如這里的DI RECTORY用來指定在本文件指定的文件的路徑,如這里的是將其指定到 /var/named 下,在這里你還可以指定端口等等。不指定則端口是53
*/
directory “/var/named”;
}; //
//
// a caching only nameserver config
//
controls {
inet 127.0.0.1 allow { localhost; } keys { rndckey; };
};
zone “.” IN { //在這個文件中是用zone關(guān)鍵字來定義域區(qū)的,一個zone關(guān)鍵字定義一個域區(qū)
type hint;
/*在這里type類型有三種,它們分別是master,slave和hint它們的含義分別是:
master:表示定義的是主域名服務(wù)器
slave :表示定義的是輔助域名服務(wù)器
hint:表示是互聯(lián)網(wǎng)中根域名服務(wù)器
*/
file “named.ca”; //用來指定具體存放DNS記錄的文件
};
zone “l(fā)ocalhost” IN { //定義一具域名為localhost的正向區(qū)域
type master;
file “l(fā)ocalhost.zone” ;
allow-update { none; };
};
zone “test.net” IN { //指定一個域名為test.net的正向區(qū)域
type master;
file “test.net”
allow-update { none;};
};
zone “0.0.127.in-addr.arpa” IN { //定義一個IP為127.0.0.*的反向域區(qū)
type master;
file “named.local”;
allow-update { none; };
};
zone “0.192.168.in-addr.arpa” IN { //定義一個IP為168.192.0.*反向域區(qū)
type master;
file “168.192.0”;
/var/named/test.net文件
@ IN SOA linux.test.net. Webmaster.test.net. ( SOA表示授權(quán)開始
/*上面的IN表示后面的數(shù)據(jù)使用的是INTERNET標準。而@則代表相應(yīng)的域名,如在這里代表test.net,即表示一個域名記錄定義的開始。而linux.test.net則是這個域的主域名服務(wù)器,而webmaster.test.net則是管理員的郵件地址。注意這是郵件地址中用.來代替常見的郵件地址中的@.而SOA表示授權(quán)的開始
*/
; serial (d. adams) /*本行前面的數(shù)字表示配置文件的修改版本,格式是年月日當日修改的修改的次數(shù),每次修改這個配置文件時都應(yīng)該修改這個數(shù)字,要不然你所作的修改不會更新到網(wǎng)上的其它DNS服務(wù)器的數(shù)據(jù)庫上,即你所做的更新很可能對于不以你的所配置的DNS服務(wù)器為DNS服務(wù)器的客戶端來說就不會反映出你的更新,也就對他們來說你更新是沒有意義的。
*/
28800 ; refresh
/*定義的是以為單位的刷新頻率 即規(guī)定從域名服務(wù)器多長時間查詢一個主服務(wù)器,以保證從服務(wù)器的數(shù)據(jù)是最新的
*/
7200 ;retry
/*上面的這個值是規(guī)定了以秒為單位的重試的時間間隔,即當從服務(wù)試圖在主服務(wù)器上查詢更時,而連接失敗了,則這個值規(guī)定了從服務(wù)多長時間后再試
*/
; expiry
/*上面這個用來規(guī)定從服務(wù)器在向主服務(wù)更新失敗后多長時間后清除對應(yīng)的記錄,上述的數(shù)值是以分鐘為單位的
*/
8400 )
/*上面這個數(shù)據(jù)用來規(guī)定緩沖服務(wù)器不能與主服務(wù)聯(lián)系上后多長時間清除相應(yīng)的記
錄
*/
IN NS linux
IN MX 10 linux
linux IN A 168.192.0.14
it-test1 IN A 168.192.0.133
www IN CNAME linux
/*上面的之一列表示是主機的名字,省去了后面的域。
NS:表示是這個主機是一個域名服務(wù)器,
A:定義了一條A記錄,即主機名到IP地址的對應(yīng)記錄
MX 定義了一郵件記錄
CNAME:定義了對應(yīng)主機的一個別名
/var/named/168.192.0
@ IN SOA linux.test.net. webmastert.linux.net. (
; Serial
28800 ; Refresh
14400 ; Retry
; Expire
86400 ) ; Minimum
IN NS linux.test.net.
/*以上的各關(guān)鍵字的含義跟test.net是相同的
14 IN PTR linux.test.net.
133 IN PTR it-test1.test.net.
/*
上面的之一列表示的是主機的IP地址。省略了網(wǎng)絡(luò)地址部分。如14完整應(yīng)該是:
168.192.0.14
PTR:表示反向記錄
最后一列表示的是主機的域名。
linux配置dns的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux配置dns,輕松學(xué)會Linux DNS配置,如何在在Linux系統(tǒng)上配置DNS服務(wù)器的信息別忘了在本站進行查找喔。
創(chuàng)新互聯(lián)是成都專業(yè)網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)頁設(shè)計、SEO優(yōu)化、手機網(wǎng)站、小程序開發(fā)、APP開發(fā)公司等,多年經(jīng)驗沉淀,立志成為成都網(wǎng)站建設(shè)第一品牌!
網(wǎng)頁題目:輕松學(xué)會LinuxDNS配置(linux配置dns)
URL地址:http://fisionsoft.com.cn/article/dpjeeij.html


咨詢
建站咨詢
