DNS协议基础笔记

news/2024/11/9 15:21:25/

1.定义

  • DNS(Domain Name System,域名系统)是互联网的一项核心服务,它作为将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。

2.域名解析过程

  • 当用户在浏览器中输入一个域名,浏览器首先会检查自己的缓存中是否有该域名对应的 IP 地址。
  • 本地 DNS 服务器收到查询请求后,首先会检查自己的缓存中是否有该域名对应的 IP 地址。
  • 根域名服务器收到查询请求后,会返回顶级域名服务器的地址给本地 DNS 服务器。
  • 本地 DNS 服务器根据根域名服务器返回的地址,向顶级域名服务器发送查询请求。
  • 顶级域名服务器收到查询请求后,会返回权威域名服务器的地址给本地 DNS 服务器。
  • 本地 DNS 服务器根据顶级域名服务器返回的地址,向权威域名服务器发送查询请求。
  • 权威域名服务器收到查询请求后,会返回该域名对应的 IP 地址给本地 DNS 服务器。
  • 本地 DNS 服务器将查询到的 IP 地址返回给客户端,客户端使用该 IP 地址访问目标服务器。

3.缓存机制

  • 为了提高域名解析的效率,DNS 系统采用了缓存机制。客户端、本地 DNS 服务器、各级域名服务器都会缓存已经查询过的域名和 IP 地址的映射关系。当再次查询相同的域名时,可以直接从缓存中获取 IP 地址,而无需再次进行完整的域名解析过程。

4.DNS 记录类型

  • A 记录:将域名映射到 IPv4 地址。
  • AAAA 记录:将域名映射到 IPv6 地址。
  • CNAME 记录:将一个域名别名映射到另一个域名。
  • MX 记录:指定接收电子邮件的邮件服务器。
  • NS 记录:指定该域名由哪个 DNS 服务器进行解析。

5.DNS 安全问题

  • DNS 劫持
            DNS 劫持是指攻击者通过篡改 DNS 服务器的解析结果,将用户的请求重定向到恶意网站。这种攻击方式可能会导致用户的个人信息泄露、财产损失等问题。
            为了防止 DNS 劫持,可以使用加密的 DNS 服务(如 DoH、DoT),或者使用可靠的公共 DNS 服务器(如 Google Public DNS、OpenDNS 等)。

  • DNS 欺骗
            DNS 欺骗是指攻击者通过伪造 DNS 响应包,将虚假的 IP 地址返回给客户端。这种攻击方式可能会导致用户访问到恶意网站,或者被引导到钓鱼网站。
            为了防止 DNS 欺骗,可以使用数字签名技术对 DNS 响应包进行验证,或者使用加密的 DNS 服务。

 

6.应用场景

  • 网站访问
            用户通过输入域名访问网站时,DNS 协议将域名解析为 IP 地址,使得浏览器能够与目标服务器建立连接。

  • 电子邮件发送和接收
            电子邮件系统使用 DNS 协议来查找接收邮件的邮件服务器的地址。当用户发送电子邮件时,邮件客户端会查询目标域名的 MX 记录,以确定将邮件发送到哪个邮件服务器。

  • 网络管理
            DNS 协议可以用于网络管理,例如通过配置 DNS 记录来实现负载均衡、故障转移等功能。

 


http://www.ppmy.cn/news/1523207.html

相关文章

File not found:git.exe

今天打开idea想使用Git进行项目代码的版本控制,在创建Git本地仓库时出现如下提示信息: File not found:git.exe Git没有安装:首先,你要确保你已经在电脑上安装了Git,Git是一个版本控制系统,你…

东南亚电商新蓝海:深度解析东南亚服务器租用的战略价值

在全球化日益加深的今天,东南亚以其独特的市场潜力和对数字化技术的积极拥抱,成为了跨境电商及互联网企业竞相角逐的热土。随着东南亚地区经济的快速增长和人口红利的持续释放,电商市场的繁荣景象尤为引人注目。然而,要在这一竞争…

爆改YOLOv8|利用yolov10的SCDown改进yolov8-下采样

1, 本文介绍 YOLOv10 的 SCDown 方法来优化 YOLOv8 的下采样过程。SCDown 通过点卷积调整通道维度,再通过深度卷积进行空间下采样,从而减少了计算成本和参数数量。这种方法不仅降低了延迟,还在保持下采样过程信息的同时提供了竞争性的性能。…

解决 EasyExcel BigDecimal 加%的问题

1.看很多资料还是有问题 于是想到可以用转换器来实现 这是原来的方式 NumberFormat(value "#.##%")private BigDecimal proportion;请看大屏幕 import com.alibaba.excel.converters.Converter; import com.alibaba.excel.enums.CellDataTypeEnum; import com.alib…

Linux下使用crontab配置定时任务

文章目录 Linux使用crontab安装crontab启动crontab查看定时任务创建定时任务配置案例配置语法位置含义符号含义 注意 取消定时任务 Linux使用crontab crontab为Linux下的计划任务程序,对应的服务为crond。crond是一个守护进程,每分钟会定期检查是否有要…

MybatisPlus 快速入门

目录 简介 安装 Spring Boot2 Spring Boot3 Spring 配置 Spring Boot 工程 Spring 工程 常见注解 条件构造器 流式查询 使用示例 批量操作 使用示例 自定义SQL Service接口 CRUD 扩展功能 代码生成 安装插件 通用枚举 配置枚举处理器 插件功能 配置示例…

【Hot100】LeetCode—763. 划分字母区间

目录 1- 思路哈希表 双指针 2- 实现⭐763. 划分字母区间——题解思路 3- ACM 实现 原题链接:763. 划分字母区间 1- 思路 哈希表 双指针 ① 找到元素最远的出现位置:哈希表② 根据最远出现位置,判断区间的分界线:双指针 实现 …

Open CASCADE学习|按圆离散旋转体

旋转体是一个非常重要的概念,它涉及到三维空间中由二维曲线绕某一轴线旋转形成的立体形状。这种旋转体的形成过程,实际上是一个连续变化的动态过程,但在数学和几何学中,我们往往通过静态的方式来描述和研究它。 旋转体的基本特性…