网络学习(二)DNS域名解析原理、DNS记录

news2024/12/26 0:34:37

目录

    • 一、为什么要使用DNS?
    • 二、因特网的域名结构
    • 三、DNS域名解析原理【含详细图解】
    • 四、DNS记录(A记录、AAAA记录、CNAME记录等)

在这里插入图片描述

一、为什么要使用DNS?

我们知道,TCP/IP 协议中是使用 IP 地址和端口号来确定网络上的某一台主机的,由于大多数 IP 毫无规律、难以记忆,就出现了 域名(Domain Name)。简单来说,IP地址是面向主机的,而域名则是面向用户的

最初,域名和IP地址的映射关系都保存在 hosts 文件中,但是每次有新的域名要接入网络的时候,其它计算机就需要定时更新后才能正常访问,比较繁琐,因此就出现了 可以远程进行域名映射DNS(Domain Name System) 域名系统。

在这里插入图片描述

可能会有聪明的小伙伴会想到,为什么不直接使用域名来进行传输,非要使用IP地址呢?

  • 这是因为域名的长度不固定,而IP地址的长度是固定的,机器处理起来比较方便。

二、因特网的域名结构

因特网的域名结构是一个 层次化分层 的梳妆结构,通常被称为 域命名空间(Domain Name Space)。在这个结构中,域名由多个标号组成,这些标号之间用 . 来分隔,如下所示:

在这里插入图片描述

这段域名由三个标号组成:mail(三级域名)、cctv(二级域名)、com(顶级域名)。

DNS规定域名必须满足以下条件:

  1. 域名中的标号都 由英文和数字组成每个标号不超过63个字符(为了方便记忆,一般不会超过12个字符),不区分字母大小写
  2. 级别最低的域名写在最左边,级别最高的域名写在最右边

除此之外,DNS 既 不限制一个域名所包含的下级域名数量,也不限制域名具体代表的意思。各级域名由其上一级的域名管理机构管理,**最高的顶级域名由 ICANN(互联网名字域编号分配机构)进行统一管理。

顶级域名分为以下3类:

序号类型说明
(1)国家顶级域名 nTLD采用 ISO3166 的规定。如:
* cn:代表中国;
* us:代表美国;
* uk:代表英国;等等。
国家域名又常记为ccTLD(cc表示国家代码 country-code)。
(2)通用顶级域名 gTLD最常见的通用顶级域名有以下几个:
* com:公司企业;
* net:网络服务机构;
* org:非盈利组织;
* edu:表示教育机构;
* gov:美国的政府部门;
* mil:美国的军事部门。
(3)基础结构域名(Infrastructure Domain)这种顶级域名只有一个,即 arpa,用于反向域名解析,因此称为 反向域名

下面展示了一个四级域名的结构:(注意:四级域名并不是最低级别的域名)


三、DNS域名解析原理【含详细图解】

实际上,域名到IP地址的解析是 由分布在因特网上的许多域名服务器程序共同完成的。域名服务器程序在专设的节点上运行,而人们也常把运行域名服务器程序的机器称为 域名服务器,即 DNS(Domain Name System)

域名到IP地址的解析过程主要包含以下3个要点:

  1. 当某一个应用需要把域名解析为IP地址时,该应用进程就会 调用DNS服务器,把待解析的域名放在 DNS 请求报文中,UDP 请求方式将数据报文发送给本地DNS
  2. 本地DNS在查找域名后,会 把对应的IP地址放在响应报文中返回。应用程序获得目的主机的IP地址后即可进行通信。
  3. 若本地DNS不能解析该域名,则 本地DNS服务器会调用其它远程DNS服务器,发送查询请求

四、DNS记录(A记录、AAAA记录、CNAME记录等)

在 DNS 中,DNS记录 是由 DNS 服务器创建并存储在其区域文件中的指令,这些记录 提供了关于域名和主机名的重要信息。这些记录包括但不限于 A记录、CNAME记录、MX记录等,每种记录类型都有其特定的用户和格式。

常见的 DNS记录如下:

A记录将域名指向一个IPv4地址(例如:10.10.10.10),需要增加A记录。

AAAA记录将主机名(或域名)指向一个IPv6地址(例如:ff03:0:0:0:0:0:0:c1),需要添加AAAA记录。

CNAME记录:如果 将域名指向另一个域名,实现与被指向域名相同的访问效果,需要增加 CNAME 记录。指向的这个域名一般是主机服务商提供的一个域名。

MX记录:建立电子邮箱服务,将 指向邮件服务器地址,需要设置MX记录。建立邮箱时,一般会根据邮箱服务商提供的 MX记录 填写此记录。

NS记录:域名解析服务器记录,如果要 将子域名指向某个域名服务器来解析,需要设置NS记录。

SOA记录:起始授权机构记录,NS记录用于标识多台域名解析服务器,SOA记录 用于在众多NS记录中标识哪一台是主服务器

TXT记录:可任意填写,可为空。一般做一些验证记录时会使用此项,如:做SPF(反垃圾邮箱)记录。

SRV记录:添加服务器服务记录时会添加此项,SRV 记录了哪台计算机提供了哪个服务。格式为:服务的名字.协议的类型(例如:_example-server._tcp)。

PTR记录:PTR记录是A记录的逆向记录,又称作 IP反查记录指针记录负责将IP反向解析为域名

显性URL转发记录将域名指向一个http(s)协议地址,访问域名时,自动跳转至目标地址。例如:将 www.aaa.cn 显性转发到 www.bbb.cn 后,访问 www.aaa.cn 时,页面会跳转到 www.bbb.cn,并且地址栏显示的地址也为 www.bbb.cn。(即请求转发)

隐形URL转发记录:将域名指向一个http(s)协议地址,访问域名时,自动跳转至目标地址,隐形转发会隐藏真实的目标地址。例如:将 www.aaa.cn 显性转发到 www.bbb.cn 后,访问 www.aaa.cn 时,虽然页面会跳转到 www.bbb.cn,但是地址栏显示的地址仍然是 www.aaa.cn。(即请求重定向)

整理完毕,完结撒花~🌻





参考地址:

1.DNS原理及解析过程详解,https://blog.csdn.net/mocas_wang/article/details/109167660

2.DNS解析中的A记录、AAAA记录、CNAME记录、MX记录、NS记录、TXT记录、SRV记录、URL转发等,https://blog.csdn.net/weixin_44388689/article/details/132466543

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1809614.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Unity 设置默认字体(支持老版及新版TMP)

普通UI-Text设置 (同一unity版本设置一次即可) 1.首先工程的Resources目录下创建Fonts文件夹用于存放字体 如下图所示 2.找到Unity的安装目录下的Editor\Data\Resources\PackageManager\BuiltInPackages\com.unity.ugui\Runtime\UI\Core\Text.cs文件 …

msfconsole利用Windows server2008cve-2019-0708漏洞入侵

一、环境搭建 Windows系列cve-2019-0708漏洞存在于Windows系统的Remote Desktop Services(远程桌面服务)(端口3389)中,未经身份验证的攻击者可以通过发送特殊构造的数据包触发漏洞,可能导致远程无需用户验…

C语言之main函数的返回值(在linux中执行shell脚本并且获取返回值)

一:函数为什么要返回值 (1)函数 在设计的时候是设计了参数和返回值,参数是函数的输入,返回值是函数的输出 (2)因为函数需要对外输出数据(实际上是函数运行的一些结果值)…

「51媒体」江苏媒体宣传报道,邀请媒体报道资源汇总

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 江苏作为中国东部的重要省份,拥有丰富的媒体资源,包括电视台、广播电台、报纸以及网络媒体。 电视台 江苏卫视:作为江苏省唯一的省级卫视台&#xff…

支持YUV和RGB格式两路视频同时播放

1.头文件&#xff1a; sdlqtrgb.h #pragma once #include <QtWidgets/QWidget> #include "ui_sdlqtrgb.h" #include <thread> class SdlQtRGB : public QWidget {Q_OBJECTpublic:SdlQtRGB(QWidget* parent Q_NULLPTR);~SdlQtRGB(){is_exit_ true;//等…

ruoyi vue 集成积木报表真实记录

按官方文档集成即可 积木报表官方集成文档 集成问题 1.注意 idea 配置的 maven 需要设置成 本地配置&#xff0c;不可以使用 idea 自带的 maven,自带 maven 会导致私有源调用不到 后端代码 新建 base 模块 maven配置 <project xmlns"http://maven.apache.org/POM/…

33-unittest数据驱动(ddt)

所谓数据驱动&#xff0c;是指利用不同的测试数据来测试相同的场景。为了提高代码的重用性&#xff0c;增加代码效率而采用一种代码编写的方法&#xff0c;叫数据驱动&#xff0c;也就是参数化。达到测试数据和测试业务相分离的效果。 比如登录这个功能&#xff0c;操…

Linux shell编程学习笔记58:cat /proc/mem 获取系统内存信息

0 前言 在开展系统安全检查的过程中&#xff0c;除了收集cpu信息&#xff0c;我们还需要收集内存信息。在Linux中&#xff0c;获取内存信息的命令很多&#xff0c;这里我们着重研究 cat /proc/mem命令。 1 cat /proc/mem命令 /proc/meminfo 文件提供了有关系统内存的使用情况…

**《Linux/Unix系统编程手册》读书笔记24章**

D 24章 进程的创建 425 24.1 fork()、exit()、wait()以及execve()的简介 425 . 系统调用fork()允许父进程创建子进程 . 库函数exit(status)终止进程&#xff0c;将进程占用的所有资源归还内核&#xff0c;交其进行再次分配。库函数exit()位于系统调用_exit()之上。在调用fo…

开发小Tips:切换淘宝,腾讯,官方,yarn,cnpm镜像源,nrm包管理工具的具体使用方式(方便切换镜像源)

由于开发中经常要下载一些软件或者依赖&#xff0c;且大多数的官方源的服务器都在国外&#xff0c;网速比较慢&#xff0c;国内为了方便&#xff0c;国内一些大厂就建立一些镜像&#xff0c;加快下载速度。 1.各大镜像源的切换&#xff1a; 切换淘宝镜像源&#xff1a; npm …

基于51单片机的MQ-2烟雾报警设计

随着现代家庭用火、用电量的增加,家庭烟雾发生的频率越来越高。烟雾报警器也随之被广泛应用于各种场合。本课题所研究的无线多功能烟雾报警器采用STC89C51为核心控制器,利用气体传感器MQ-2、ADC0832模数转换器、DS18B20温度传感器等实现基本功能。通过这些传感器和芯片,当环…

圆 高级题目

上边的文章发了圆的初级题目&#xff0c;这篇来发高级 参考答案&#xff1a;ACCBBBBCDC

嵌入式作业6

1、利用SysTick定时器编写倒计时程序&#xff0c;如初始设置为2分30秒&#xff0c;每秒在屏幕上输出一次时间&#xff0c;倒计时为0后&#xff0c;红灯亮&#xff0c;停止屏幕输出&#xff0c;并关闭SysTick定时器的中断。 2、利用RTC显示日期&#xff08;年月日、时分秒&…

[C++数据结构之看懂就这一篇]图(上)

&#x1f4da;博客主页&#xff1a;Zhui_Yi_&#x1f50d;&#xff1a;上期回顾&#xff1a;JAVA面向对象&#xff08;上&#xff09;❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️&#x1f387;追当今朝…

币安用户达2亿,代币BNB创新高,赵长鹏成“美国最富囚犯” 苹果迈向AI新纪元:芯片、应用与大模型三线作战

赵长鹏坐牢第一个月&#xff0c;越坐越富。 在币安联合创始人赵长鹏入狱服刑的第一个月&#xff0c;币安代币BNB创下了历史新高&#xff0c;使得赵长鹏成为美国联邦监狱中史上“最富囚犯”。与此同时&#xff0c;币安用户数量也到达2亿“里程碑”。 根据CoinGecko的数据&…

从河流到空气,BL340工控机助力全面环保监测网络构建

在环保监测领域&#xff0c;智能化、高效率的监测手段正逐步成为守护绿水青山的新常态。其中&#xff0c;ARMxy工业计算机BL340凭借其强大的处理能力、高度的灵活性以及广泛的兼容性&#xff0c;在水质监测站、空气质量检测、噪音污染监控等多个环保应用场景中脱颖而出&#xf…

解决阿里云的端口添加安全组仍然无法扫描到

发现用线上的网站扫不到这个端口&#xff0c;这个端口关了&#xff0c;但是没有更详细信息了 我用nmap扫了一下我的这个端口&#xff0c;发现主机是活跃的&#xff0c;但是有防火墙&#xff0c;我们列出云服务器上面的这个防火墙list&#xff0c;发现确实没有5566端口 参考&a…

Java(十七)---ArrayList的使用

文章目录 前言1.ArrayList的简介2. ArrayList使用2.1.ArrayList的构造2.2.ArrayList的扩容机制(JDK17) 3.ArrayList的常见操作4. ArrayList的具体使用4.1.[杨辉三角](https://leetcode.cn/problems/pascals-triangle/description/)4.2.简单的洗牌游戏 5.ArrayList的问题及思考 …

RocketMq详解:二、SpringBoot集成RocketMq

在上一章中我们对Rocket的基础知识、特性以及四大核心组件进行了详细的介绍&#xff0c;本章带着大家一起去在项目中具体的进行应用&#xff0c;并设计将其作为一个工具包只提供消息的分发服务和业务模块进行解耦 在进行本章的学习之前&#xff0c;需要确保你的可以正常启动和…

每天写java到期末考试(6.10)--java小项目01

实现项目任务 java类 package java1;import java.util.ArrayList; import java.util.Scanner;public class Test {public static void main(String[] args) {//8.创建一个集合&#xff0c;用于存放相同个体&#xff0c;一个个添加&#xff0c;注意作用范围&#xff0c;将数组放…