Linux中配置DNS

Linux中配置DNS服務

一、什么是DNS

DNS (Domain Name System) 是域名服務 ,它是由解析器和域名服務器組成的。
域名服務器是指保存有該網絡中所有主機的域名和對應IP地址,
并具有將域名轉換為IP地址功能的服務器。(將網址解析成IP,或者將IP解析成網址)

將域名映射為IP地址的過程就稱為"域名解析"。
在Internet上域名與IP地址之間是一對一(或者多對一)的,
也可采用DNS輪循實現一對多,域名雖然便于人們記憶,
但機器之間只認IP地址,它們之間的轉換工作稱為域名解析,
域名解析需要由專門的域名解析服務器來完成,DNS就是進行域名解析的服務器。

網址有一個專有名詞:完全合格域名

完全合格域名 = 主機名稱 + 域名(根域 + 頂級域 + 二級域)

根域:.

頂級域:分為組織域和國家或地區域。

組織域采用3個字符代號,如.com .edu .gov
國家或地區域,采用兩個字符代號,如.cn .jp

二級域:二級域注冊到個人、組織或者公司名稱,如baidu、taobao等

主機名稱:主機名稱處于域名空間的最底層,主機名與上述各級域名結合構成FQND(完全合格域名)

每個域用一個點號“.”分開

以www.baidu.com為例:

www:主機名稱

baidu.com:域名

根域:日常生活中一般省略(www.baidu.com.)最后的.表示根域,配置DNS時需要帶上

頂級域:.com

二級域:baidu

一個完全合格域名只能對應一個IP,一個IP可以對應多個完全合格域名。

二、DNS查詢方式(兩種)

遞歸查詢:DNS客戶端與DNS服務器之間

迭代查詢:DNS服務器與DNS服務器之間

訪問一個網站是既有遞歸又有迭代

三、DNS解析方式

正向解析:FQDN(完全合格域名)----------> IP

反向解析:IP -----------> FQDN(完全合格域名)

四、DNS服務搭建

搭建DNS服務有兩種方式:

1.bind 2.unbound

DNS服務器類型:

主DNS服務器(條目或者稱為映射信息是手寫進主DNS當中)

輔助DNS服務器(用來做備份)

unbound 不能提供輔助DNS服務器

所以一般用bind進行部署

1、在沒有DNS之前,怎樣解決

/etc/hosts 本地解析配置文件

主機1:192.168.100.10

主機2:192.168.100.20

正常情況下:兩臺主機相互ping IP地址是可以ping通的,但是ping不通主機名

主機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

在本地解析文件中加上對方的IP地址以及對應映射的主機名

[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

在這里插入圖片描述

注意:只在主機1中添加,則只有主機1能ping通主機2,主機2仍然ping不通主機1,想要主機2也ping通主機1,需要在主機2的配置文件中中也寫入主機1的IP地址與主機名的映射關系。

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默認偵聽端口:53(指自己的地址,一般作為DNS服務器的話:any)

/var/named/chroot/etc/named.rfc1912.zones 記錄DNS正向和反向的全局解析配置文件

作用:

1、確定DNS類型 :主DNS(master) 輔助DNS(slave)

2、定義 域與網段的映射關系

3、告知具體的解析條目的文件名在哪里:正向解析數據庫 反向解析數據庫

(2)編輯主配置文件/etc/named.conf
[root@stw ~]# vim /etc/named.conf 

在這里插入圖片描述

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

在這里插入圖片描述

在這里插入圖片描述

把文件復制到對應目錄下

[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起始授權機構(后面的@改成服務器的主機名)

NS:后面接DNS的服務器

主機記錄: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)重啟服務,關掉防火墻,更改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)客戶端更改網卡的DNS(指向服務器端),重啟服務,查看是否解析
[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#53Name:	stw.example.com
Address: 192.168.100.10
> 192.168.100.10    //反向解析
Server:		192.168.100.10
Address:	192.168.100.10#5310.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)編輯全局配置文件(四個地方需要更改)
更改對應的域名和映射的網段,服務類型:slave(輔助DNS),正向解析與反向解析的文件名,定義主DNS地址(告訴輔助DNS主DNS的地址)
[root@stw2 ~]# vim /etc/named.rfc1912.zones 

在這里插入圖片描述

輔助DNS中,正向解析文件和反向解析文件不需要編輯

(4)重啟服務,關掉防火墻,更改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)更改網卡配置文件
[root@stw2 ~]# cd /etc/sysconfig/network-scripts/
[root@stw2 network-scripts]# vim ifcfg-ens33
[root@stw2 network-scripts]# cd
[root@stw2 ~]# systemctl restart network

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/92936.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/92936.shtml
英文地址,請注明出處:http://en.pswp.cn/web/92936.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Redis應?-緩存與分布式鎖

🌈 個人主頁:Zfox_ 🔥 系列專欄:Redis 🔥 什么是緩存 緩存(cache)是計算機中的?個經典的概念.在很多場景中都會涉及到 核?思路就是把?些常?的數據放到觸?可及 (訪問速度更快) 的地?,?便隨時讀取 對于計算機…

TCP、HTTP/HTTPS、FTP 解析 + 面試回答參考

TCP、HTTP/HTTPS、FTP 解析 面試回答參考 在后端開發、網絡編程以及運維面試中,TCP 協議、HTTP/HTTPS、FTP 是高頻考點。本文將從原理、流程、面試常問問題出發,幫你一次性搞懂這些核心知識點。一、TCP 三次握手 1. 作用 建立可靠連接,確保雙…

ATF(TF-A)安全通告 TFV-13(CVE-2024-7881)

安全之安全(security)博客目錄導讀 ATF(TF-A)安全通告匯總 目錄 一、漏洞描述 二、緩解措施與建議 三、補丁修改 關于該漏洞的具體細節,可參考【CVE-2024-7881】ARM CPU漏洞安全通告】 Title 非特權上下文可以觸發數據相關的預取引擎,從而獲取特權位置的內容,并將這些…

Pytorch深度學習框架實戰教程-番外篇02-Pytorch池化層概念定義、工作原理和作用

相關文章 視頻教程 《Pytorch深度學習框架實戰教程01》《視頻教程》 《Pytorch深度學習框架實戰教程02:開發環境部署》《視頻教程》 《Pytorch深度學習框架實戰教程03:Tensor 的創建、屬性、操作與轉換詳解》《視頻教程》 《Pytorch深度學習框架實戰…

常見通信協議詳解:TCP、UDP、HTTP/HTTPS、WebSocket 與 GRPC

常見通信協議詳解:TCP、UDP、HTTP/HTTPS、WebSocket 與 RPC 在現代網絡通信中,各種協議扮演著至關重要的角色,它們決定了數據如何在網絡中傳輸、控制其可靠性、實時性與適用場景。對于開發者而言,理解這些常見的通信協議&#xff…

部署一個自己的音樂播放器教程

以下以部署 YesPlayMusic 為例,介紹兩種常見的部署方法,一種是通過 Node.js 和 Git 在 Windows 系統上部署,另一種是通過 Docker 在 Linux 系統上部署。具體步驟如下:Windows 系統部署(基于 Node.js 和 Git&#xff09…

FFMPEG將H264轉HEVC時,碼率縮小多少好,以及如何通過SSIM(Structural Similarity Index結構相似性指數)衡量轉碼損失

最近整理一些視頻,我發現太多了,就想把一些本來就需要轉碼的視頻縮小一下。因為轉碼的時候為了彌補損失,我將碼率增大了 10-20%,但是如果將 H264 轉 HEVC(當然也可以是其他格式),那么或許不用增…

前端,route路由

路由定義與導航動態路由匹配&#xff1a;參數傳遞&#xff08;/user/:id&#xff09;嵌套路由配置與 <router-view> 層級渲染編程式導航&#xff1a;router.push、router.replace 和 router.go路由守衛與權限控制全局守衛&#xff1a;beforeEach、beforeResolve、afterEa…

Kubernetes網絡原理深度解析

Kubernetes網絡原理深度解析 1 Kubernetes網絡模型 Kubernetes 網絡模型是其實現容器化應用高效通信的基礎框架。它致力于解決容器編排環境中復雜的網絡連通性、服務發現與負載均衡等問題&#xff0c;追求讓容器、Pod 等網絡端點像傳統主機網絡一樣簡潔、可預測地通信 。其核心…

Python3.10 + Firecrawl 下載 Markdown 文檔:構建高效通用文章爬蟲

在信息爆炸的時代&#xff0c;從各種網站收集和整理文章內容已成為許多開發者和研究人員的常見需求。無論是為了內容聚合、數據分析還是知識管理&#xff0c;一個高效、穩定的通用文章爬蟲都是不可或缺的工具。 本文將詳細介紹如何使用 Python 3.10 結合 Firecrawl API 構建一個…

國產3D大型裝配設計新突破②:裝配約束智能推斷 | 中望3D 2026

本文為CAD芯智庫整理&#xff0c;未經允許請勿復制、轉載&#xff01;→ www.xwzsoft.com/h-nd-605.html中望3D2026亮點速遞之【裝配篇】已經介紹了設計效率的提升&#xff0c;今天將分享的是中望3D2026【裝配約束智能推斷】&#xff0c;也預告一下第三篇是講解【組件復用效率提…

深入淺出設計模式——行為型模式之觀察者模式 Observer

文章目錄1.觀察者模式簡介2.觀察者模式結構3.觀察者模式代碼實例3.0.公共頭文件3.1.觀察者3.1.1.抽象觀察者Observer3.1.2.具體觀察者Player3.2.目標類3.2.1.抽象目標AllyCenter3.2.2.具體目標AllyCenterController循環包含錯誤示例“前向聲明什么時候不夠、必須 #include 對方…

CA證書、SSL加速器、HTTPS、HTTP和域名之間的關系

理解CA證書、SSL加速器、HTTPS、HTTP和域名之間的關系對于構建安全、高效的網站至關重要。它們共同構成了現代安全網絡通信的基礎。下面是它們各自的概念以及它們之間的關系&#xff1a;域名 概念&#xff1a; 人類可讀的網站地址&#xff08;如 www.example.com&#xff09;。…

3D感知多模態(圖像、雷達感知)

一.BEVFusion1.簡要介紹BEV是一個俯視空間&#xff0c;Fusion做的就是融合&#xff0c;這里指的就是圖像和點云的融合。那如何把圖像和點云融合在一起&#xff1f;認為融合方法有三種&#xff1a;a.point level fusion:點集的融合&#xff0c;從點云中采樣一些點,再根據相機的內…

STM32 HAL庫驅動W25QXX Flash

STM32 HAL庫驅動W25QXX Flash 1. 概述 W25QXX系列是一種SPI接口的Flash存儲器&#xff0c;廣泛應用于嵌入式系統中作為數據存儲設備。本文檔詳細介紹了基于STM32 HAL庫的W25QXX Flash驅動實現&#xff0c;包括硬件連接、驅動函數實現以及使用示例。 項目源碼倉庫&#xff1a…

Vivado自定義IP核學習筆記

文章目錄【1】創建一個新的IP核【2】實現功能【3】編輯IP核【4】IP封裝【5】創建Vivado工程【1】創建一個新的IP核 1.1 打開Vivado->點擊【Tasks->Manage IP->New IP Location】->彈出窗口1.2 【Next】->設置IP屬性->【Finish】->【OK】 【IP Location】…

【面試】高級開發面試場景題

1、如何保證MySql到ES的數據一致性? 答:ES是一個開元分布式搜索和分析引擎、它提供了全文搜索、結構化搜索分析以及這些組合的能力。 全文搜索能力:ES支持復雜的搜索能力,包括模糊匹配、短語查詢、布爾查詢等,并且可以快速的返回結果 實時數據分析:實時數據分析,支持對…

《 慢 SQL 分析與 SQL 優化實戰指南》

&#x1f50d; 慢 SQL 分析與 SQL 優化實戰指南、 &#x1f9e0;前言 在數據庫性能調優中&#xff0c;慢 SQL 是性能瓶頸的常見元兇。 一次慢查詢可能會拖垮整個業務線程池&#xff0c;甚至引發鎖等待、雪崩效應。 對后端開發與 DBA 而言&#xff0c;快速定位并優化慢 SQL&am…

C#中如何運用JWT用戶認證

一、JWT概述JSON Web Token&#xff08;JWT&#xff09;是一種輕量級的身份認證機制&#xff0c;廣泛應用于分布式系統中的用戶認證。它通過緊湊的JSON格式存儲用戶身份信息&#xff0c;并使用數字簽名確保信息的完整性和真實性。與傳統的基于Session的認證相比&#xff0c;JWT…

Hibernate 使用詳解

在現代的Java開發中&#xff0c;數據持久化是一個至關重要的環節。而在眾多持久化框架中&#xff0c;Hibernate以其強大的功能和靈活性&#xff0c;成為了開發者們的首選工具。本文將詳細介紹Hibernate的原理、實現過程以及其使用方法&#xff0c;希望能為廣大開發者提供一些有…