DNS相关笔记

本文涉及的产品
.cn 域名,1个 12个月
云解析DNS,个人版 1个月
全局流量管理 GTM,标准版 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.云解析(将域名域服务器进行绑定)

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

目录
相关文章
|
1月前
|
Dart 数据安全/隐私保护
Dart笔记:Dart 语言中的存取器及其用法解析
Dart笔记:Dart 语言中的存取器及其用法解析
60 0
|
1月前
|
JSON API 数据格式
实时获取小红书笔记详情的API使用与解析
小红书是一个以分享消费经验、生活方式为主的社交平台,拥有大量的用户和内容。为了更好地了解用户在小红书上的行为和内容,许多开发者选择使用小红书开放平台提供的API接口。本文将介绍如何通过小红书笔记详情API实现实时数据获取,并给出相应的代码示例。
|
1月前
|
缓存 网络协议 算法
《跟闪电侠学Netty》阅读笔记 - Netty入门程序解析
《跟闪电侠学Netty》阅读笔记 - Netty入门程序解析
163 0
|
8天前
|
存储 编解码
FFmpeg开发笔记(三十)解析H.264码流中的SPS帧和PPS帧
《FFmpeg开发实战》书中介绍了音视频编码历史,重点讲述H.264的成功在于其分为视频编码层和网络抽象层。H.264帧类型包括SPS(序列参数集,含视频规格参数),PPS(图像参数集,含编码参数)和IDR帧(立即解码刷新,关键帧)。SPS用于计算视频宽高和帧率,PPS存储编码设置,IDR帧则标志新的解码序列。书中还配以图片展示各帧结构详情,完整内容可参考相关书籍。
36 7
FFmpeg开发笔记(三十)解析H.264码流中的SPS帧和PPS帧
|
3天前
|
Java 测试技术 API
技术笔记:UML的9种图例解析(转)
技术笔记:UML的9种图例解析(转)
|
3天前
|
网络协议 前端开发 数据安全/隐私保护
技术笔记:SOCKS5协议解析
技术笔记:SOCKS5协议解析
|
1月前
|
Java 编译器 Go
【字节跳动青训营】后端笔记整理-1 | Go语言入门指南:基础语法和常用特性解析(一)
本文主要梳理自第六届字节跳动青训营(后端组)-Go语言原理与实践第一节(王克纯老师主讲)。
48 1
|
1月前
|
Linux 网络安全 Windows
网络安全笔记-day8,DHCP部署_dhcp搭建部署,源码解析
网络安全笔记-day8,DHCP部署_dhcp搭建部署,源码解析
|
1月前
|
机器学习/深度学习 编解码
【论文笔记】图像修复MPRNet:Multi-Stage Progressive Image Restoration 含代码解析2
【论文笔记】图像修复MPRNet:Multi-Stage Progressive Image Restoration 含代码解析
42 2
|
1月前
|
机器学习/深度学习 计算机视觉
【论文笔记】图像修复MPRNet:Multi-Stage Progressive Image Restoration 含代码解析1
【论文笔记】图像修复MPRNet:Multi-Stage Progressive Image Restoration 含代码解析
38 1

推荐镜像

更多