本文詳細介紹了如何在Linux中配置DNS服務(wù)器,包括DNS工作原理、本地緩存、DNS查詢過程,以及正向和反向查詢的配置。步驟包括服務(wù)器配置、編輯BIND配置文件、添加解析信息和客戶端測試,同時提到了注意事項和常見問題解決方法。
前言
在Linux中搭建DNS服務(wù)器涉及配置和運行一個軟件來提供DNS服務(wù)。DNS(Domain Name System)是互聯(lián)網(wǎng)上的一種系統(tǒng),它將域名轉(zhuǎn)換為對應(yīng)的IP地址,使得用戶可以通過易記的域名訪問網(wǎng)站,而不是記憶一長串數(shù)字。
DNS 從哪里獲取 IP 地址?
1.本地緩存:DNS服務(wù)器會將先前查詢過的域名和對應(yīng)的IP地址存儲在本地緩存中,以便在后續(xù)查詢中加快響應(yīng)速度。如果之前已經(jīng)查詢過某個域名,DNS服務(wù)器會直接從本地緩存中獲取對應(yīng)的IP地址。
2.遞歸查詢:如果本地緩存中沒有目標域名的IP地址,DNS服務(wù)器會發(fā)起遞歸查詢。它首先向根域名服務(wù)器發(fā)送查詢請求,根域名服務(wù)器會返回指向負責頂級域(如.com、.net、.org等)的權(quán)威域名服務(wù)器的IP地址。然后,DNS服務(wù)器會向權(quán)威域名服務(wù)器發(fā)送查詢請求,直到獲取到目標域名的IP地址或者查詢失敗。
3.轉(zhuǎn)發(fā)查詢:DNS服務(wù)器還可以配置為轉(zhuǎn)發(fā)查詢,即將未命中本地緩存的查詢請求轉(zhuǎn)發(fā)給其他DNS服務(wù)器處理。通常情況下,本地DNS服務(wù)器會將這些請求發(fā)送給ISP(Internet Service Provider,互聯(lián)網(wǎng)服務(wù)提供商)提供的DNS服務(wù)器或者其他可靠的DNS服務(wù)器進行處理。
DNS的作用
1.域名解析:DNS最主要的作用是將域名解析為對應(yīng)的IP地址。當用戶在瀏覽器中輸入一個域名時,DNS系統(tǒng)會將這個域名轉(zhuǎn)換為相應(yīng)的IP地址,然后瀏覽器才能通過IP地址找到并訪問目標網(wǎng)站。
2.負載均衡:通過DNS解析可以實現(xiàn)負載均衡,即將多個服務(wù)器的域名解析為不同的IP地址并在不同的時間將其返回給用戶。這樣可以分散流量到多臺服務(wù)器上,提高網(wǎng)站的訪問速度和穩(wěn)定性。
3.郵箱服務(wù)器定位:DNS也用于指定郵件服務(wù)器的IP地址。當發(fā)送電子郵件時,郵件服務(wù)器通過DNS解析找到收件人域名的郵件服務(wù)器IP地址,然后發(fā)送郵件。
4.防止DNS劫持:DNS還能夠通過各種方式來防止DNS劫持,即惡意修改DNS解析結(jié)果以實施網(wǎng)絡(luò)攻擊或監(jiān)視用戶活動的行為。例如,DNSSEC(DNS Security Extensions)可以通過數(shù)字簽名來保護DNS解析結(jié)果的完整性和真實性。
5.提供其他網(wǎng)絡(luò)服務(wù):DNS還可以用于提供其他網(wǎng)絡(luò)服務(wù),如反向DNS解析(將IP地址解析為域名)、動態(tài)域名解析(將動態(tài)IP地址映射到域名)、域名注冊等。
接下來講講我們在本地搭建DNS解析
以下實驗測試均在VMware中 centos操作系統(tǒng)
首先服務(wù)器的配置
1.服務(wù)器配置
配置ip,關(guān)閉防火墻和selinux
安裝BIND包他就是dns的安裝包需要下載它
`yum installbind-y`

2.編輯配置文件
/etc/named.conf 是DNS的配置文件
`vim /etc/named.conf`
options { listen-on port 53 { any; }; 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"; recursing-file "/var/named/data/named.recursing"; secroots-file "/var/named/data/named.secroots"; allow-query { any; };
以下是詳細配置解釋:
大家了解即可 主要還是圖中紅色框中的字母
1.options:這個部分包含了DNS服務(wù)器的一般選項設(shè)置。
2.listen-on port 53 { any; }:指定DNS服務(wù)器監(jiān)聽的端口。在這個示例中,DNS服務(wù)器監(jiān)聽在53端口,允許任何IP地址連接到該端口。這意味著DNS服務(wù)器會接受來自任何IP地址的DNS查詢請求。
3.listen-on-v6 port 53 { ::1; }:指定IPv6地址的監(jiān)聽端口。在這個示例中,DNS服務(wù)器監(jiān)聽IPv6地址的53端口,只允許本地IPv6地址(::1)連接到該端口。
4.directory "/var/named";:指定存儲DNS服務(wù)器相關(guān)數(shù)據(jù)文件的目錄路徑。在這個示例中,數(shù)據(jù)文件存儲在/var/named目錄下。
5.dump-file "/var/named/data/cache_dump.db";:指定DNS服務(wù)器在關(guān)閉時將緩存內(nèi)容寫入的文件路徑。這個文件通常用于調(diào)試和故障排除。
6.statistics-file "/var/named/data/named_stats.txt";:指定DNS服務(wù)器的統(tǒng)計信息輸出文件路徑,用于記錄DNS服務(wù)器的運行統(tǒng)計數(shù)據(jù)。
7.memstatistics-file "/var/named/data/named_mem_stats.txt";:指定DNS服務(wù)器的內(nèi)存使用統(tǒng)計輸出文件路徑,用于記錄DNS服務(wù)器的內(nèi)存使用情況。
8.recursing-file "/var/named/data/named.recursing";:指定DNS服務(wù)器遞歸查詢的記錄文件路徑。
9.secroots-file "/var/named/data/named.secroots";:指定DNS服務(wù)器的安全根文件路徑。
10.allow-query { any; };:指定允許查詢的IP地址范圍。在這個示例中,允許任何IP地址進行DNS查詢。
定義正向查詢
正向查詢是最常見的DNS查詢方式之一。
正向查詢用于將域名解析為IP地址,這樣用戶就可以使用易記的域名來訪問互聯(lián)網(wǎng)上的各種網(wǎng)絡(luò)資源,而不需要記憶IP地址。
在dns配置文件中加入如下信息:
zone"example.com"IN { typemaster; file"example.com.zone"; allow-update { none; }; };
紅色框框里邊的就是
以下是配置詳解:
需要強調(diào)的是file指定的是文件路徑
type master;: 表明這是主 DNS 服務(wù)器,負責提供 "example.com" 區(qū)域的數(shù)據(jù)。
file "example.com.zone";: 指定了包含 "example.com" 區(qū)域數(shù)據(jù)的文件的路徑。
allow-update { none; };: 指定了允許對區(qū)域進行動態(tài)更新的權(quán)限。在這種情況下,none表示不允許任何動態(tài)更新,因此區(qū)域數(shù)據(jù)只能通過手動編輯區(qū)域文件來更新。
定義反向查詢
反向查詢是一種從IP地址到域名的查詢方式。
反向查詢主要用于安全審計、網(wǎng)絡(luò)管理和驗證IP地址歸屬等方面。例如,當收到來自某個IP地址的網(wǎng)絡(luò)流量時,可以通過反向查詢確認該IP地址對應(yīng)的域名,從而了解到流量的來源。
zone"180.168.192.in-addr.arpa"IN { typemaster; file"example.com.arpa"; allow-update { none; }; };
如圖紅色框框
檢測是否語法錯誤
`named-checkconf /etc/named.conf`
編輯完成之后保存退出并且重啟
`systemctl restart named`
修改正反區(qū)域文件(重點)
進入到DNS服務(wù)器相關(guān)文件存儲目錄/var/named/
`cd/var/named/`
觀察這兩個文件 其實是一個實例文件接下來我們復(fù)制兩份用(找任意一個都可以)
如下
cp-p named.empty example.com.zone cp-p named.empty example.com.arpa
如下就是我復(fù)制的文件
example.com.zone 當做正向查詢解析來用
example.com.arpa 當做反向查詢來使用
加入解析信息(正向)
`vim example.com.zone`
觀看如下配置
格式就是這樣的 請大家按照這樣寫
紅色框框里邊可以修改
1.example.com.: 指定了主域名為example.com。
2.root.example.com.: 這個字段指定了負責管理該域名的DNS服務(wù)器的郵箱地址,形式為root@example.com。root是指定了這個域名的管理員(或者叫根管理員),而example.com是該管理員的郵箱地址的域名部分。
3.@ IN NS dns.example.com.:這行指定了域名example.com的DNS服務(wù)器是dns.example.com。NS記錄(Name Server)指定了管理特定區(qū)域的DNS服務(wù)器。
4.dns IN A 192.168.180.188:這行指定了主機名dns對應(yīng)的IP地址是192.168.180.188。A記錄(Address Record)用于將域名解析為IPv4地址。
5.www IN A 192.168.180.189:這行指定了主機名www對應(yīng)的IP地址是192.168.180.189。
6.exam IN A 192.168.180.190:這行指定了主機名exam對應(yīng)的IP地址是192.168.180.190。
7.ftp IN A 192.168.180.191:這行指定了主機名ftp對應(yīng)的IP地址是192.168.180.191。
8.sun IN A 192.168.180.44:這行指定了主機名sun對應(yīng)的IP地址是192.168.180.44。
加入解析信息(反向)
`vim example.com.arpa`
觀看如下配置
格式就是這樣的 請大家按照這樣寫
紅色框框里邊可以修改
PTR 記錄將 IP 地址映射到相應(yīng)的域名。
@ IN NS dns.example.com.:這行指定了該反向區(qū)域的DNS服務(wù)器是 dns.example.com。NS記錄(Name Server)指定了管理特定區(qū)域的DNS服務(wù)器。
188 IN PTR dns.example.com.:這行指定了IP地址以 188 結(jié)尾的主機對應(yīng)的域名是 dns.example.com。PTR記錄(Pointer Record)用于將IP地址解析為域名。
189 IN PTRwww.example.com.:這行指定了IP地址以189 結(jié)尾的主機對應(yīng)的域名是www.example.com。
190 IN PTR exam.example.com.:這行指定了IP地址以 190 結(jié)尾的主機對應(yīng)的域名是 exam.example.com。
191 IN PTR ftp.example.com.:這行指定了IP地址以 191 結(jié)尾的主機對應(yīng)的域名是 ftp.example.com。
44 IN PTR sun.example.com.:這行指定了IP地址以 44 結(jié)尾的主機對應(yīng)的域名是 sun.example.com。
此刻已經(jīng)寫完了所有的配置信息 重啟服務(wù)
3.客戶機測試
配置ip,關(guān)閉防火墻和selinux
`[root@localhost ~] vim /etc/resolv.conf`
/etc/resolv.conf是一個用于配置 DNS 解析的重要文件
將它指向dns服務(wù)器IP地址
正向解析測試
通過測試發(fā)現(xiàn)一切都如配置文件對應(yīng)關(guān)系那樣
反向解析測試
通過測試發(fā)現(xiàn)一切都如配置文件對應(yīng)關(guān)系那樣
注意事項
如果重啟發(fā)現(xiàn)
`Jobfornamed.service failed because the control process exited with error code. See"systemctl status named.service"and"journalctl -xe"fordetails.`
那就是配置文件在你編輯時候出現(xiàn)了錯誤
vim /etc/named.conf 編輯這個文件 仔細的去觀察你編輯的信息
如果解析發(fā)現(xiàn)解析失敗 那就是正反解析文件中的問題
還有就是.記得加上去
鏈接:https://blog.csdn.net/jxjdhdnd/article/details/136699043?spm=1001.2014.3001.5502
-
Linux
+關(guān)注
關(guān)注
87文章
11432瀏覽量
212455 -
服務(wù)器
+關(guān)注
關(guān)注
12文章
9618瀏覽量
87069 -
DNS
+關(guān)注
關(guān)注
0文章
222瀏覽量
20218
原文標題:Linux中搭建DNS 域名解析服務(wù)器(詳細版)
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
Linux中DNS服務(wù)器配置分析
如何在web服務(wù)器的基礎(chǔ)上加一個DNS服務(wù)器呢
DNS服務(wù)器及其配置
如何配置Win 2003的DNS服務(wù)器
Win 2000中DNS服務(wù)器的設(shè)置
在Linux中如何配置DNS
Linux DNS 服務(wù)器安裝、配置和維護的詳細解析
Linux服務(wù)器配置全程實錄電子教材免費下載
DNS服務(wù)器和DNS服務(wù)器地址是什么
如何在linux服務(wù)器中打開端口
如何在 Linux 上查看本地 DNS 緩存

評論