当前位置: 首页 > news >正文

域名解析协议

一、DNS简述

‌DNS协议是一种应用层协议,用于将域名转换为对应的IP地址‌,使得客户端可以通过域名来访问Internet上的各种资源‌
DNS的基础设施是由分层的DNS服务器实现的分布式数据库,它运行在UDP之上‌,通常使用端口号53‌

DNS报文:
查询报文和响应报文,无论是查询报文还是响应报文,都有12个字节的头和查询问题‌
报文头部包含标识、标志、问题计数、回答资源记录数、权威名称服务器计数以及附加资源记录数等字段‌

二、请求流程

1、浏览器中输入一个域名(如www.example.com),浏览器作为客户端,需要将这个域名解析为IP地址才能访问对应的服务器
2、浏览器会向本地DNS服务器发送一个域名解析请求,这个请求通常使用UDP协议,因为UDP协议速度快,只需要一个请求和一个应答‌
3、本地DNS服务器收到请求后,首先会检查自己的缓存中是否已经有这个域名的解析结果
缓存中有结果,本地DNS服务器会直接将IP地址返回给客户端(浏览器)
缓存中没有结果,本地DNS服务器会进行递归或迭代查询,向其他DNS服务器发送查询请求
4、查询到ip后,返回给客户端(浏览器),客户端使用这个IP地址与www.example.com的服务器建立网络连接

相关配置文件
/etc/resolv.conf这是Linux系统中与DNS设置相关的配置文件
在该文件中添加nameserver来指定DNS服务器地址
如:nameserver 1.1.1.1

三、一些命令

# 查询DNS服务器以获取域名相关的信息。
# 查询http://www.example.com的A记录和NS记录。
dig www.example.com A
dig www.example.com NS# 用于查询域名的IP地址或反向解析IP地址为域名
nslookup www.example.com# 用于查询域名的IP地址或反向解析IP地址为域名
host www.example.com

四、域名记录类型

1、A记录‌:A记录是最基本的DNS记录类型,用于将域名指向一个IPv4地址‌。
‌example.com. IN A 192.168.0.165
表示将example.com解析到192.168.0.1这个IPv4地址上‌

‌2. AAAA记录:AAAA记录与A记录类似,但用于将域名指向一个IPv6地址‌。
example.com. IN AAAA 8fe0::8f61:ac8:30cd:a16e
表示将example.com解析到对应的IPv6地址上‌

‌3. CNAME记录:CNAME记录用于将一个域名指向另一个域名,即别名记录‌。适用于需要将多个域名指向同一个域名的情况,如做CDN、企业邮箱、全局流量管理等。
‌example.com. IN CNAME my.example.com.
表示将example.com解析到my.example.com这个别名上‌

‌4. MX记录:MX记录用于指定邮件服务器的地址,用于电子邮件的路由‌
‌example.com. IN MX 10 mail.example.com.,表示将example.com的邮件服务指向mail.example.com这个邮件服务器,优先级为10‌

‌5. NS记录:NS记录用于指定域名所使用的权威域名服务器‌,如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录‌
‌example.com. IN NS ns1.domain.com.
表示example.com的域名解析由ns1.domain.com这个DNS服务器负责‌

http://www.lryc.cn/news/510009.html

相关文章:

  • 微信小程序给外面的view设置display:flex;后为什么无法给里面的view设置宽度
  • Maven怎么会出现一个dependency-reduced-pom.xml的文件
  • 突发!!!GitLab停止为中国大陆、港澳地区提供服务,60天内需迁移账号否则将被删除
  • 自学记录HarmonyOS Next DRM API 13:构建安全的数字内容保护系统
  • Vue 3 + Element Plus 实现文件上传组件:详细解析与实现指南
  • qt5.12.11+msvc编译器编译qoci驱动
  • Ubuntu 20.04 安装 LNMP
  • Llama 3 简介(一)
  • 在 CentOS 上安装 FFmpeg
  • Python------Pandas的数据结构
  • 矩阵碰一碰发视频源码技术解析,支持OEM
  • 【汇编语言】外中断(一)—— 外中断的魔法:PC机键盘如何触发计算机响应
  • pymssql-2.1.4.dev5-cp37-cp37m-win_amd64.whl 安装
  • 在HTML中使用Vue如何使用嵌套循环把集合中的对象集合中的对象元素取出来(我的意思是集合中还有一个集合那种)
  • Apriori关联规则算法 HNUST【数据分析技术】(2025)
  • Windows中Microsoft Edge兼容性问题|修复方案
  • Android 蓝牙开发-传输数据
  • webrtc获取IceCandidate流程
  • 每天40分玩转Django:Django静态文件
  • Linux 线程池
  • windows使用zip包安装MySQL
  • 深度学习实战之超分辨率算法(tensorflow)——ESPCN
  • Android unitTest 单元测试用例编写(初始)
  • C++简明教程(10)(初识类)
  • 光谱相机的工作原理
  • 【Linux进程】基于管道实现进程池
  • 软件测试之单元测试
  • vscode+编程AI配置、使用说明
  • 007-spring-bean的相关配置(重要)
  • 【唐叔学算法】第19天:交换排序-冒泡排序与快速排序的深度解析及Java实现