Linux网络服务之DNS服务

这篇具有很好参考价值的文章主要介绍了Linux网络服务之DNS服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互
映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

一 、系统的作用及类型

1.1 DNS概念

DNS 是域名系统 (Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
说白了就是:在互联网中通过IP 地址来进行通信。但是IP 地址的表示形式是数字,很难进行记忆(比如116.213.120.232),所以为每个 IP取一个人类更易记忆的域名形式(比如www.google.com),而通过DNS 来把解析域名成为 IP(将方便人理解的命名格式解析成计算机能够理解的格式,也可以将IP 翻译成域名)

全世界只有13台根域名服务器,一个主根服务器,12个辅根服务器

1.2DNS使用的协议及端口号

DNS的默认端口为53, DNS服务使用TCP和UDP的53端口,TCP的53端口用于连接DNS服务器,UDP的53端口用于解析DNS。

TCP是用来做区域传送,多用于主从同步
在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息。

UDP是用来做DNS解析的域名
通常由一个完全合格域名(FQDN)标识。FQDN全称 Fully Qualified Domain Name,它能准确表示出其相对于DNS域树根的位置,也就是节点到DNS树根的完整表述方式,从节点到树根采用反向书写,并将每个节点用"."分隔,对于DNS域google来说,其完全正式域名(FQDN)为google.com。(主机名+域名)

1.3DNS域名长度限制

每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符

1.4DNS域名解析方式

正向解析 根据域名查找对应的IP地址
反向解析 根据IP地址查找对应的域名

二、DNS的域名结构

域名与IP地址之间是多对一的关系,一个IP地址不一定只对应一个域名,且一个域名只可以对应一个IP地址

2.1域名体系结构

Linux网络服务之DNS服务

根域 位于树状结构最顶层,用"."表示
顶级域 一般代表一种类型的组织机构或国家地区;如.net(网络供应商)、.com(工商企业)、.org(团体组织)、.edu(教育机构)、.gov(政府部门)、.cn(中国国家域名)
二级域 用来标明顶级域内的一个特定的组织,国家顶级域下面的二级域名由国家部门统一管理
子域 二级域下所创建的各级域统称为子域,各个组织或用户可以自由申请注册自己的域名
主机 主机位于域名空间最下层,就是一台具体的计算机
Linux网络服务之DNS服务
注意:最前面的一定是主机,最后一个点表示根域,通常是省略不写的,但实际上:www.baidu.com=www.baidu.com.

114.114.114.114是国内移动、电信和联通通用的DNS,手机和电脑端都可以使用。

8.8.8.8是谷歌公司提供的DNS,该地址全球通用,相对来说,更适合国外以及访问国外网站的用户。

218.2.135.1是南京的DNS服务器地址

2.2DNS服务器类型

1、主域名服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。构建主域名服务器时,需要自行建立所负责区域的地址数据文件。
2、从域名服务器:当主域名服务器出现故障、关闭或负载过重时,从域名服务器作为备份服务提供域名解析服务。从域名服务器提供的解析结果不是由自己决定的,而是来自于主域名服务器。构建从域名服务器时,需要指定主域名服务器的位置,以便服务器能自动同步区域的地址数据库。
3、缓存域名服务器:只提供域名解析结果的缓存功能 目的在于提高查询速度和效率,但没有域名数据库。
它从某个远程服务器取得每次域名服务器查询的结果,并将它放在高速缓存中,以后查询相同的信息时用它予以响应。缓存域名服务器不是权威性服务器,因为提供的所有信息都是间接信息。构建缓存域名服务器时,必须设置根域或指定其他DNS服务器作为解析来源。
4、转发域名服务器:负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。

2.3两种查询方式

递归查询
递归查询是一种 DNS 服务器的查询模式,在该模式下 DNS 服务器接收到客户机请求,必须使用一个准确的查询结果回复客户机,如果 DNS 服务器本地没有存储查询 DNS 信息,那么该服务器会询问其他服务器,并将返回的查询结果提交给客户机。
就是客户机发送请求后自己只用等待结果即可,中间具体过程交给服务器实现。

迭代查询
DNS 服务器另外一种查询方式为迭代查询,当客户机发送查询请求时,DNS 服务器并不直接回复查询结果,而是告诉客户机另一台 DNS 服务器地址,客户机再向这台 DNS 服务器提交请求,依次循环直到返回查询的结果为止。
客户机的请求需要自己挨个去查询才能得到结果,服务器没有结果时候只会给你提供其它服务器的地址,而不会帮你去请求查询,这与递归截然相反。

Linux网络服务之DNS服务

2.3.1访问www.baidu.com的DNS解析过程

1、客户端需要解析www.baidu.com,客户端向本地DNS服务器发送解析请求

2、本地DNS发现无法解析,转发给根域服务器

3、根域服务器根据请求域名对应的顶级的com,返回com的服务器地址

4、本地DNS服务器向com域dns服务器发出解析请求

5、com域服务器返回qq.com域服务器的地址

6、以此类推,本地DNS服务器向baidu.com域dns服务器发出解析请求,直到在baidu.com域dns服务器上面找到www.baidu.com所对应的IP地址

7、baidu.com把查找到的域名对应IP地址信息返回给本地DNS服务器

8、最终再由本地DNS服务器把结果返回给客户端计算机

三、正向解析资源记录及配置实例

3.1安装bind软件包

yum -y install bind

bind是linux系统下的一个DNS服务程序.bind-utils是bind软件提供的一组DNS工具包,里面有一些DNS相关的工具.主要有:dig,host,nslookup,nsupdate.使用这些工具可以进行域名解析和DNS调试工作.

3.2配置正向解析

rpm -qc bind #查询bind软件配置文件所在路径
/etc/named.conf #主配置文件
/etc/named/rfc1912.zones #区域配置文件
/var/named/named.localhost #区域数据配置文件

3.2.1修改主配置文件

vim /etc/named.conf
options {
listen-on-v6 poet 53 { 192.168.184.10; }; #监听53端口,IP地址使用提供服务的本地IP,也可用any代表所有
#listen-on-v6 port 53 { : :1; }; #ipv6行如不使用可以注释掉或者删除
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”; #内存统计文件的位置
allow-query
{ any; }; #允许使用本DNS解析服务的网段,也可用any代表所有
zone “.” IN { #正向解析“. "根区域
type hint; #类型为根区域
file “named.ca”; #区域数据文件为named.ca,记录了13台根域服务器的域名和IP地址等信息
};

修改完成:wq保存并退出

3.2.2修改区域配置文件,添加正向区域配置

编写域名,在配置文件/etc/named.rfc1912.zones下
vim /etc/named.rfc1912.zones #可在文件里有模版,可复制粘贴后修改
zone “caso. com” IN { #正向解析"caso.com"区域
type master; #类型为主区域
file “caso. com. zone”; #指定区域数据文件为caso. com.
allow-update { none; };
};

3.2.3备份指定区域数据配置文件,然后编辑指定区域数据配置文件

cd /var/named/
[root@localhost named]cp -p named.localhost caso.com.zone #保留源文件的权限和属主的属性复制
vim /var/named/caso.com.zone
$TTL 1D #设置缓存解析结果的有效时间
@ IN SOA caso.com. admin.lic.com. (
0; serial .
1D; refresh
1H; retry
1W; expire
3H ) ; minimum
NS caso.com. #记录当前区域的DNS服务器的名称
A 192.168.184.10 #记录主机IP地址
IN MX 10 mail.caso.com. #MX为邮件交换记录,数字越大优先级越低
www IN A 192.168.184.10 #记录正向解析www.benet.com对应的IP
mail IN A 192.168.184.11
ftp IN CNAME www #CNAME使用别名,ftp是www的别名
* IN A 192.168.184.100 #泛域名解析,“*"代表任意主机名

3.2.4启动服务,关闭防火墙

systemctl start named
systemctl stop firewalld
setenforce 0
tail -f /var/log/ messages #如果服务启动失败,可以查看日志文件来排查错误
rndc-confgen -r /dev/urandom -a #如果服务启动卡住,可以执行此命令解决

3.2.5在客户端的域名解析配置文件中添加DNS服务器地址

vi /etc/resolv.conf #修改完后立即生效
nameserver 192.168.184.10

vi /etc/ sysconfig/network- scripts/ ifcfg-ens33 #修改完后需要重启网卡
DNS1=192.168.80.10
systemctl restart network

3.2.6测试DNS解析

host www.caso.com
nslookup www.caso.com文章来源地址https://www.toymoban.com/news/detail-467087.html

到了这里,关于Linux网络服务之DNS服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络服务(3)配置DNS服务的正反向解析

    目录 实验1:正向解析 准备工作  DNS配置 第一步:服务端操作,编制DNS的主配置文件  第二步:服务端操作,编辑区域配置文件,可以在最后添加,也可以全部清空后修改,建议复制一个模板,修改局部  第三步:服务端操作,编辑数据配置文件,使用拷贝命令将正向解析文

    2024年02月02日
    浏览(29)
  • 常见DNS服务网络故障案例解析

    在上网冲浪时,我们经常会遇到网络连接正常,但无法浏览网页的问题。对于这类网络故障,很多时候都与系统的DNS服务有关。为了解决由DNS服务引起的网络故障,本文总结了一些这方面的故障解决案例,希望对大家有所帮助。 故障一、无法清空DNS 缓存 现象:近日,笔者上

    2024年02月06日
    浏览(34)
  • cisco仿真实验-----网络服务(web/dns/dhcp)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、常见的应用服务? 二、实验步骤 1.拓扑图的搭建 2.服务器与主机的配置 3.测试 总结 通过仿真实验进一步加强对应用服务的理解。 1.WEB 2.DNS 3.DHCP (1)选择设备:交换机,服务器,主

    2024年02月10日
    浏览(51)
  • 【网络】DNS | ICMP | NAT | 代理服务器

    🐱作者:一只大喵咪1201 🐱专栏:《网络》 🔥格言: 你只管努力,剩下的交给时间! 前面几篇文章虽然讲介绍了整个网络通信的协议栈,我们也知道了完整的网络通信过程,但是还有几个坑没填,以及一些重要的协议和技术没有讲解。 DNS是一整套从域名映射到IP地址的系

    2024年02月11日
    浏览(33)
  • 【网络篇】如何搭建自己的DNS服务器

    平时练习域名解析,一般直接修改的/etc/hosts文件。对于服务器数量小的情况完全可以,但是如果服务器数量较多,每个都修改比较麻烦。 DNS是作为域名解析。在实际的生产过程中,尤其是对于内网搭建的情况,DNS不可能使用互联网的DNS,这时需要我们自行搭建。 我这里准备

    2024年02月05日
    浏览(30)
  • Linux系统如何查看服务器带宽及网络使用情况

       操作系统: Linux    操作环境: Centos7   Linux系统中如何查看服务器带宽?本篇文章主要和大家分享一下Linux系统中查看服务器带宽的方法,有需要的朋友可以参考一下。 众多网络相关的命令可查看:【Linux】之【网络】相关的命令及解析[ethtool、nload、nethogs、iftop、

    2024年02月02日
    浏览(57)
  • Linux系统如何查看服务器带宽及网络使用情况?

    要查看Linux服务器的带宽和网络使用情况,可以使用以下命令和工具: ifconfig命令:ifconfig命令用于显示和配置网络接口信息,包括带宽和网络使用情况。 使用以下命令查看所有网络接口的信息: 该命令将显示每个网络接口的详细信息,包括接收和发送的数据包数量以及网络

    2024年02月16日
    浏览(41)
  • Linux——DNS域名解析服务

    个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。 座右铭:海不辞水,故能成其大;山不辞石,故能成其高。 个人主页:小李会科技的主页   目录  前言:  一.DNS系统的作用及类型 1.DNS 系统的作用(解析方式):***  2

    2024年02月15日
    浏览(42)
  • 【好书精读】网络是怎样连接的 向 DNS 服务器查询 Web 服务器的 IP 地址

    (该图由AI制作 学习AI绘图 联系我) 目录 IP 地址的基本知识 实际的 IP 地址 域名和 IP 地址并用的理由  Socket 库提供查询 IP 地址的功能 通过解析器向 DNS 服务器发出查询 解析器的内部原理 生成 HTTP 消息 根据域名查询 IP 地址 委托操作系统 消息发送给 Web 服务器 在委托操作

    2024年02月11日
    浏览(35)
  • Linux之DNS域名解析服务

    目录 Linux之DNS域名解析服务 概述 产生原因 作用 连接方式 因特网的域名结构 拓扑 分类 域名服务器类型 ​编辑  DNS域名解析过程 分类 解析图 搭建DNS域名解析服务器 概述 安装软件 bind服务中三个关键文件 主配置文件分析 一般需要修改三部分: 区域配置文件 正向解析资源

    2024年02月09日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包