Linux中配置DNS全過程
一、什么是DNS
DNS (Domain Name System) 是域名服務(wù) ,它是由解析器和域名服務(wù)器組成的。
域名服務(wù)器是指保存有該網(wǎng)絡(luò)中所有主機(jī)的域名和對(duì)應(yīng)IP地址,并具有將域名轉(zhuǎn)換為IP地址功能的服務(wù)器。(將網(wǎng)址解析成IP,或者將IP解析成網(wǎng)址)
將域名映射為IP地址的過程就稱為"域名解析"。
在Internet上域名與IP地址之間是一對(duì)一(或者多對(duì)一)的,也可采用DNS輪循實(shí)現(xiàn)一對(duì)多,域名雖然便于人們記憶,
但機(jī)器之間只認(rèn)IP地址,它們之間的轉(zhuǎn)換工作稱為域名解析,域名解析需要由專門的域名解析服務(wù)器來完成,DNS就是進(jìn)行域名解析的服務(wù)器。
網(wǎng)址有一個(gè)專有名詞:完全合格域名
完全合格域名 = 主機(jī)名稱 + 域名(根域 + 頂級(jí)域 + 二級(jí)域)
根域:.
頂級(jí)域:分為組織域和國(guó)家或地區(qū)域。
- 組織域采用3個(gè)字符代號(hào),如.com .edu .gov
- 國(guó)家或地區(qū)域,采用兩個(gè)字符代號(hào),如.cn .jp
二級(jí)域:二級(jí)域注冊(cè)到個(gè)人、組織或者公司名稱,如baidu、taobao等
主機(jī)名稱:主機(jī)名稱處于域名空間的最底層,主機(jī)名與上述各級(jí)域名結(jié)合構(gòu)成FQND(完全合格域名)
每個(gè)域用一個(gè)點(diǎn)號(hào)“.”分開
以www.baidu.com為例:
- www:主機(jī)名稱
- baidu.com:域名
- 根域:日常生活中一般省略(www.baidu.com.)最后的.表示根域,配置DNS時(shí)需要帶上
- 頂級(jí)域:.com
- 二級(jí)域:baidu
一個(gè)完全合格域名只能對(duì)應(yīng)一個(gè)IP,一個(gè)IP可以對(duì)應(yīng)多個(gè)完全合格域名。
二、DNS查詢方式(兩種)
- 遞歸查詢:DNS客戶端與DNS服務(wù)器之間
- 迭代查詢:DNS服務(wù)器與DNS服務(wù)器之間
- 訪問一個(gè)網(wǎng)站是既有遞歸又有迭代
三、DNS解析方式
- 正向解析:FQDN(完全合格域名)----------> IP
- 反向解析:IP -----------> FQDN(完全合格域名)
四、DNS服務(wù)搭建
搭建DNS服務(wù)有兩種方式:
- 1.bind
- 2.unbound
DNS服務(wù)器類型:
- 主DNS服務(wù)器(條目或者稱為映射信息是手寫進(jìn)主DNS當(dāng)中)
- 輔助DNS服務(wù)器(用來做備份)
- unbound 不能提供輔助DNS服務(wù)器
- 所以一般用bind進(jìn)行部署
1、在沒有DNS之前,怎樣解決
/etc/hosts 本地解析配置文件
- 主機(jī)1:192.168.100.10
- 主機(jī)2:192.168.100.20
正常情況下:兩臺(tái)主機(jī)相互ping IP地址是可以ping通的,但是ping不通主機(jī)名
主機(jī)1:
[root@stw ~]# ping 192.168.100.20 PING 192.168.100.20 (192.168.100.20) 56(84) bytes of data. 64 bytes from 192.168.100.20: icmp_seq=1 ttl=64 time=0.801 ms 64 bytes from 192.168.100.20: icmp_seq=2 ttl=64 time=1.06 ms ^C --- 192.168.100.20 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.801/0.933/1.065/0.132 ms [root@stw ~]# ping stw2.example.com ping: stw2.example.com: Name or service not known
在本地解析文件中加上對(duì)方的IP地址以及對(duì)應(yīng)映射的主機(jī)名
[root@stw ~]# vim /etc/hosts [root@stw ~]# ping stw2.example.com PING stw2.example.com (192.168.100.20) 56(84) bytes of data. 64 bytes from stw2.example.com (192.168.100.20): icmp_seq=1 ttl=64 time=0.561 ms 64 bytes from stw2.example.com (192.168.100.20): icmp_seq=2 ttl=64 time=8.10 ms ^C --- stw2.example.com ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.561/4.332/8.103/3.771 ms

注意:只在主機(jī)1中添加,則只有主機(jī)1能ping通主機(jī)2,主機(jī)2仍然ping不通主機(jī)1,想要主機(jī)2也ping通主機(jī)1,需要在主機(jī)2的配置文件中中也寫入主機(jī)1的IP地址與主機(jī)名的映射關(guān)系。
2、配置主DNS
(1)配置yum倉庫,安裝軟件包
[root@stw ~]# cd /etc/yum.repos.d/ [root@stw yum.repos.d]# ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo [root@stw yum.repos.d]# rm -rf * [root@stw yum.repos.d]# ls [root@stw yum.repos.d]# vim server.repo [root@stw yum.repos.d]# cat server.repo [aa] name=aa1 baseurl=file:///mnt enabled=1 gpgcheck=0 [root@stw yum.repos.d]# mount /dev/cdrom /mnt mount: /dev/sr0 is write-protected, mounting read-only [root@stw yum.repos.d]# yum -y install bind bind-chroot
- /etc/named.conf 映射的DNS主配置文件
- /var/named 解析文件的目錄
- DNS默認(rèn)偵聽端口:53(指自己的地址,一般作為DNS服務(wù)器的話:any)
- /var/named/chroot/etc/named.rfc1912.zones 記錄DNS正向和反向的全局解析配置文件
作用:
- 1、確定DNS類型 :主DNS(master) 輔助DNS(slave)
- 2、定義 域與網(wǎng)段的映射關(guān)系
- 3、告知具體的解析條目的文件名在哪里:正向解析數(shù)據(jù)庫 反向解析數(shù)據(jù)庫
(2)編輯主配置文件/etc/named.conf
[root@stw ~]# vim /etc/named.conf

(3)編輯全局配置文件(三個(gè)地方需要更改)
更改對(duì)應(yīng)的域名和映射的網(wǎng)段,服務(wù)類型:master(主DNS),正向解析與反向解析的文件名
[root@stw ~]# vim /etc/named.rfc1912.zones


把文件復(fù)制到對(duì)應(yīng)目錄下
[root@stw ~]# cd /var/named/ [root@stw named]# cp -p named.localhost stw.com [root@stw named]# cp -p named.empty com.stw [root@stw named]# ls chroot com.stw data dynamic named.ca named.empty named.localhost named.loopback slaves stw.com
TTL 1D 緩存周期
SOA起始授權(quán)機(jī)構(gòu)(后面的@改成服務(wù)器的主機(jī)名)
- NS:后面接DNS的服務(wù)器
- 主機(jī)記錄:A
(4)編輯正向解析文件
[root@stw ~]# cd /var/named [root@stw named]# ls chroot com.stw data dynamic named.ca named.empty named.localhost named.loopback slaves stw.com [root@stw named]# vim stw.com

(5)編輯反向解析的文件
[root@stw named]# vim com.stw

(6)重啟服務(wù),關(guān)掉防火墻,更改selinux
[root@stw named]# systemctl restart named [root@stw named]# systemctl enable named Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service. [root@stw named]# systemctl stop firewalld.service [root@stw named]# systemctl disable firewalld.service Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@stw named]# getenforce Enforcing [root@stw named]# setenforce 0 [root@stw named]# getenforce Permissive
(7)客戶端更改網(wǎng)卡的DNS(指向服務(wù)器端),重啟服務(wù),查看是否解析
[root@stw2 ~]# cd /etc/sysconfig/network-scripts/ [root@stw2 network-scripts]# vim ifcfg-ens33 [root@stw2 network-scripts]# systemctl restart network [root@stw2 network-scripts]# nslookup > stw.example.com //正向解析 Server: 192.168.100.10 Address: 192.168.100.10#53 Name: stw.example.com Address: 192.168.100.10 > 192.168.100.10 //反向解析 Server: 192.168.100.10 Address: 192.168.100.10#53 10.100.168.192.in-addr.arpa name = stw.example.com. >

3、配置輔助DNS
(1)配置yum倉庫,安裝軟件包(略)
(2)編輯主配置文件/etc/named.conf
[root@stw2 ~]# vim /etc/named.conf

(3)編輯全局配置文件(四個(gè)地方需要更改)
更改對(duì)應(yīng)的域名和映射的網(wǎng)段,服務(wù)類型:slave(輔助DNS),正向解析與反向解析的文件名,定義主DNS地址(告訴輔助DNS主DNS的地址)
[root@stw2 ~]# vim /etc/named.rfc1912.zones

輔助DNS中,正向解析文件和反向解析文件不需要編輯
(4)重啟服務(wù),關(guān)掉防火墻,更改selinux
[root@stw2 ~]# systemctl stop firewalld.service [root@stw2 ~]# systemctl disable firewalld.service Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@stw2 ~]# setenforce 0 [root@stw2 ~]# getenforce Permissive [root@stw2 ~]# vim /etc/selinux/config [root@stw2 ~]# systemctl restart named [root@stw2 ~]# systemctl enable named Created symlink from /etc/systemd/system/multi-user.target.wants/named.service to /usr/lib/systemd/system/named.service. [root@stw2 ~]# cd /var/named/ [root@stw2 named]# ls data dynamic named.ca named.empty named.localhost named.loopback slaves [root@stw2 named]# cd slaves [root@stw2 slaves]# ls com.stw stw.com

(5)更改網(wǎng)卡配置文件
[root@stw2 ~]# cd /etc/sysconfig/network-scripts/ [root@stw2 network-scripts]# vim ifcfg-ens33 [root@stw2 network-scripts]# cd [root@stw2 ~]# systemctl restart network

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
apache負(fù)載均衡的安裝和實(shí)現(xiàn)方法
在負(fù)載均衡技術(shù)中,硬件設(shè)備是比較昂貴的,對(duì)于負(fù)載均衡的學(xué)習(xí)者如果不是在企業(yè)中應(yīng)用或者是學(xué)員中學(xué)習(xí),很少有機(jī)會(huì)能碰到實(shí)際操作的訓(xùn)練。所以,很多朋友都會(huì)選擇軟件方面的設(shè)置進(jìn)行研究?,F(xiàn)在我們就來介紹一下再Apache下的Tomcat負(fù)載均衡的一些使用問題2012-10-10
如何禁止網(wǎng)站內(nèi)容被搜索引擎收錄的幾種方法講解
今天小編就為大家分享一篇關(guān)于如何禁止網(wǎng)站內(nèi)容被搜索引擎收錄的幾種方法講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03
linux中的系統(tǒng)掛載(卸載)U盤(文件系統(tǒng))
這篇文章主要介紹了linux中的系統(tǒng)掛載(卸載)U盤(文件系統(tǒng)),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
在Linux系統(tǒng)上安裝Spring boot應(yīng)用的教程詳解
這篇文章主要介紹了在Linux系統(tǒng)上安裝Spring boot應(yīng)用,本文通過實(shí)例文字相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-05-05
Linux查看系統(tǒng)的上次重啟時(shí)間的幾種方法小結(jié)
這篇文章主要介紹了Linux查看系統(tǒng)的上次重啟時(shí)間的幾種方法,通過這些方法,你可以輕松查看 Linux 系統(tǒng)的重啟時(shí)間,這里列出了系統(tǒng)的每次重啟時(shí)間,最新的重啟記錄在最上面,這條命令會(huì)顯示本次啟動(dòng)的內(nèi)核日志,包括系統(tǒng)啟動(dòng)的時(shí)間,需要的朋友可以參考下2025-10-10
Git 刪除遠(yuǎn)程服務(wù)器文件同時(shí)保留本地文件實(shí)例詳解
這篇文章主要介紹了Git 刪除遠(yuǎn)程服務(wù)器文件同時(shí)保留本地文件實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-05-05

