DNS相关笔记

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
.cn 域名,1个 12个月
云解析 DNS,旗舰版 1个月
简介: DNS相关笔记

1.DNS基本概念

域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

2.域名的分层

采用层次树状结构的命名方法

任何一个连接再因特网上的主机或路由器,都有唯一的层次结构名字。即域名;域名可以划分各个子域,子域还可以继续分,就形成了顶级域,主域名,子域名等

主要可分为以下部分:

根域(.)

顶级域(.com,.edu等)

主域名(aliyun.com等)

子域名(www.aliyun.com,example.aliyun.com等)

3.DNS解析过程

假定域名为m.xyz.com的主机想知道另一个主机y.abc.com的IP地址。例如,主机m.xyz.com打算发送邮件给y.abc.com。这时就必须知道主机y.abc.com的IP地址。下面是几个查询步骤:

1、主机m.xyz.com先向本地服务器dns.xyz.com进行递归查询。

2、本地服务器采用迭代查询。它先向一个根域名服务器查询。

3、根域名服务器告诉本地服务器,下一次应查询的顶级域名服务器dns.com的IP地址。

4、本地域名服务器向顶级域名服务器dns.com进行查询。

5、顶级域名服务器dns.com告诉本地域名服务器,下一步应查询的权限服务器dns.abc.com的IP地址。

6、本地域名服务器向权限域名服务器dns.abc.com进行查询。

7、权限域名服务器dns.abc.com告诉本地域名服务器,所查询的主机的IP地址。

8、本地域名服务器最后把查询结果告诉m.xyz.com。

4.DNS术语

1.递归查询

如果主机所询问的本地域名服务器不知道被查询的域名的IP地址,那么本地域名服务器就以DNS客户的身份,

向其它根域名服务器继续发出查询请求报文(即替主机继续查询),而不是让主机自己进行下一步查询。

因此,递归查询返回的查询结果或者是所要查询的IP地址,或者是报错,表示无法查询到所需的IP地址。

通常情况下,主机向本地名称服务器的查询一般都是采用递归查询

2.迭代查询

当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地服务器:“你下一步应当向哪一个域名服务器进行查询”。

然后让本地服务器进行后续的查询。根域名服务器通常是把自己知道的顶级域名服务器的IP地址告诉本地域名服务器,让本地域名服务器再向顶级域名服务器查询。

顶级域名服务器在收到本地域名服务器的查询请求后,要么给出所要查询的IP地址,要么告诉本地服务器下一步应当向哪一个权限域名服务器进行查询。

最后,知道了所要解析的IP地址或报错,然后把这个结果返回给发起查询的主机

通常情况下,本地名称服务器向 DNS(一级、二级、三级...)名称服务器采用迭代查询

3.DNS缓存

将解析数据存储在靠近发起请求的客户端的位置,也可以说DNS数据是可以缓存在任意位置,最终目的是以此减少递归查询过程,可以更快的让用户获得请求结果。

4.TTL

TTL值全称是“生存时间(Time To Live)”,简单的说它表示DNS记录在DNS服务器上缓存最长时间。

5.IPV4,IPV6双栈技术

在一个系统中同时使用IPV4/IPV6这两个可以并行工作的协议栈。

6.TLD Server

指顶级域名服务器

7.DNS Resolver

指本地域名服务器,它是DNS查找中的第一站,负责处理发出初始请求的DNS服务器。运营商ISP分配的DNS,谷歌8.8.8.8等都属于DNS Resolver。

8.Root Server

指根域名服务器,当本地域名服务器在本地查询不到解析结果时,则第一步会向它进行查询,并获取顶级域名服务器的IP地址。

9.DNS Query Flood Attack

即DNS查询攻击全称UDP DNS Query Flood,攻击采用的方法是向被攻击的服务器发送大量的域名解析请求,通常请求解析的域名是随机生成或者是网络上根本不存在的域名,

被攻击的DNS 服务器在接收到域名解析请求的时候首先会在服务器上查找是否有对应的缓存,如果查找不到并且该域名无法直接由服务器解析的时候,DNS 服务器会向其上层DNS服务器递归查询域名信息。

域名解析的过程给服务器带来了很大的负载,每秒钟域名解析请求超过一定的数量就会造成DNS服务器解析域名超时。

10.URL转发

即地址转向,它是通过服务器的特殊设置,将一个域名指向另一个已存在的站点。

11.edns-client-subnet

DNS扩展协议,允许DNS resolver传递用户ip地址给authoritative DNS server。

12.DNSSEC

即域名系统安全扩展,它提供一种可以验证应答信息真实性和完整性的机制,利用密码技术,使得域名解析服务器可以验证它所收到的应答(包括域名不存在的应答)是否来自于真实的服务器,或者是否在传输过程中被篡改过。

5.DNS记录类型

A记录 :是指定域名对应的IP地址。

AAAA记录 : 是将域名解析到一个指定的IPV6的IP上。

CNAME记录:通常称别名解析。可以将注册的不同域名都转到一个域名记录上,由这个域名记录统一解析管理。

TXT记录:TXT记录,一般指某个主机名或域名的说明。

MX记录 :MX(Mail Exchanger)记录是邮件交换记录,它指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。

NS记录 :NS(Name Server)记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。

SRV 记录:用来标识某台服务器使用了某个服务,常见于微软系统的目录管理。

CAA(Certificate Authority Authorization)记录:即证书颁发机构授权。是一项新的可以添加到DNS记录中的额外字段,通过DNS机制创建CAA资源记录,可以限定域名颁发的证书和CA(证书颁发机构)之间的联系。未经授权的第三方尝试通过其他CA注册获取用于该域名的SSL/TLS证书将被拒绝。

6.DNS客户端检测工具

1)host

解析域名对应的IP地址和别名等信息

语法:host [选项] [主机名或ip] [server]

例:host -a www.baidu.com

2)nslookup

查询DNS信息的命令,使用/etc/resolv.conf这个文件作为DNS服务器来源选择

语法:nslookup [主机名或IP]

例:

nslookup www.baidu.com

nslookup server #查看本机DNS服务器

3)dig

域名查询工具,可以用来测试域名系统工作是否正常。

yum insatll -y bind-utils
• 1

语法:dig [选项] [主机名]

常用选项

@ : 默认使用/etc/resolv.conf这个文件作为DNS服务器来源选择,

-b : 当主机具有多个ip地址,指定使用本机的哪个ip地址向域名服务器发送域名查询请求。

例:dig www.baidu.com
   dig @8.8.8.8 www.baidu.com

7.DNS客户端配置

一:使用nmcli命令进行配置

0.启动NetworkManager

systemctl restart NetworkManager

1.查看网络连接

nmcli connection show

2.nmcli配置DNS

nmcli con mod eth0 ipv4.dns "114.114.114.114 8.8.8.8"

3.启动DNS配置

nmcli con up eth0

4.nmcli 命令的详细帮助

man nmcli
• 1

man NetworkManager.conf
• 1

二:使用传统方法进行配置

1.修改NetworkManager配置

vi /etc/NetworkManager/NetworkManager.conf
在main字段里添加"dns=none"

2.重启NetworkManager服务

systemctl restart NetworkManager.service
• 1

3.手工修改/etc/resolv.conf

vi /etc/resolv.conf
写入DNS地址
nameserver 114.114.114.114
nameserver 8.8.8.8

三:网卡配置文件指定dns

1.进入到网卡配置文件中,

vi /etc/sysconfig/network-scripts/ifcfg-eth0
• 1
添加
DNS1="114.114.114.114"
DNS2="8.8.8.8"

2.重启网络

service network restart
• 1

3.测试网络

ping www.baidu.com
• 1

4.查看ip

ip addr
• 1

8.实战(阿里云上进行域名申请)

0.备案

1.百度搜索:域名申请

2.点击阿里云的相关连接

3.按照官方文档进行申请

4.云解析(将域名域服务器进行绑定)

感谢大家,点赞,收藏,关注,评论!

目录
相关文章
|
6月前
|
JSON API 数据格式
实时获取小红书笔记详情的API使用与解析
小红书是一个以分享消费经验、生活方式为主的社交平台,拥有大量的用户和内容。为了更好地了解用户在小红书上的行为和内容,许多开发者选择使用小红书开放平台提供的API接口。本文将介绍如何通过小红书笔记详情API实现实时数据获取,并给出相应的代码示例。
|
6月前
|
Dart 数据安全/隐私保护
Dart笔记:Dart 语言中的存取器及其用法解析
Dart笔记:Dart 语言中的存取器及其用法解析
78 0
|
6月前
|
缓存 网络协议 算法
《跟闪电侠学Netty》阅读笔记 - Netty入门程序解析
《跟闪电侠学Netty》阅读笔记 - Netty入门程序解析
205 0
|
2月前
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
377 37
http数据包抓包解析课程笔记
http数据包抓包解析课程笔记
|
3月前
|
JSON 开发框架 JavaScript
【Azure Developer】使用.Net Core解析JSON的笔记
【Azure Developer】使用.Net Core解析JSON的笔记
|
3月前
|
数据采集 运维 监控
运维笔记:流编辑器sed命令用法解析
运维笔记:流编辑器sed命令用法解析
56 5
|
3月前
|
开发者 API 开发框架
Xamarin 在教育应用开发中的应用:从课程笔记到互动测验,全面解析使用Xamarin.Forms构建多功能教育平台的技术细节与实战示例
【8月更文挑战第31天】Xamarin 作为一款强大的跨平台移动开发框架,在教育应用开发中展现了巨大潜力。它允许开发者使用单一的 C# 代码库构建 iOS、Android 和 Windows 应用,确保不同设备上的一致体验。Xamarin 提供广泛的 API 支持,便于访问摄像头、GPS 等原生功能。本文通过一个简单的教育应用示例——课程笔记和测验功能,展示了 Xamarin 在实际开发中的应用过程。从定义用户界面到实现保存笔记和检查答案的逻辑,Xamarin 展现了其在教育应用开发中的高效性和灵活性。
42 0
|
5月前
|
存储 编解码
FFmpeg开发笔记(三十)解析H.264码流中的SPS帧和PPS帧
《FFmpeg开发实战》书中介绍了音视频编码历史,重点讲述H.264的成功在于其分为视频编码层和网络抽象层。H.264帧类型包括SPS(序列参数集,含视频规格参数),PPS(图像参数集,含编码参数)和IDR帧(立即解码刷新,关键帧)。SPS用于计算视频宽高和帧率,PPS存储编码设置,IDR帧则标志新的解码序列。书中还配以图片展示各帧结构详情,完整内容可参考相关书籍。
204 7
FFmpeg开发笔记(三十)解析H.264码流中的SPS帧和PPS帧
|
3月前
|
Go
【go笔记】使用标准库flag解析命令行参数
【go笔记】使用标准库flag解析命令行参数

推荐镜像

更多
下一篇
无影云桌面