架构师必须搞懂DNS,一篇文章就够了。

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: 概念DNS,全称Domain Name System,即域名系统,搞清楚,它不是DNF地下城与勇士。DNS是怎么来的,我们知道要访问一个服务器的资源可以通过IP的形式访问,但IP地址比较难记,也不方便读,所以有了DNS的存在,DNS通过解析域名并与实际的远程服务器主机建立连接。

概念

DNS,全称Domain Name System,即域名系统,搞清楚,它不是DNF地下城与勇士。

DNS是怎么来的,我们知道要访问一个服务器的资源可以通过IP的形式访问,但IP地址比较难记,也不方便读,所以有了DNS的存在,DNS通过解析域名并与实际的远程服务器主机建立连接。

即我们访问www.baidu.com的时候,通过DNS服务器解析出实际的IP地址去连接并返回给客户端。

解析过程

windows和linux可以通过命令nslookup查询域名解析结果,如下图所示。

linux中还可以通过dig命令查看更详细的解析过程,如图所示。

本地映射

我们可以在操作系统中修改host自定义配置域名与IP的关系,即我们可以让任何一个域名访问任何一个IP地址。

windows: c:\windows\System32\drivers\etc\hosts

linux: /etc/hosts

比如我们经常把localhost映射到127.0.0.1,可以把baidu.com映射到xx.xx.xx.xx。如果我们本地的映射关系被不得而知的修改了会导致严重的安全问题,如果把taobao.com映射到黑客或者攻击者的IP,那我们的信息及财产安全就得不到保障。早期的windows中的hosts文件可以随意修改,win7之后这个文件设置为只读的,避免恶意修改。当然我们电脑装有杀毒防护类软件的话,也可以防范这个文件被恶意修改。

域名解析方式

最后讲下几种域名的解析方式,一般不是域名管理者不会用到。

A记录

IP地址解析,就是域名与IP地址绑定,一个域名只能绑定一个IP地址,但一个IP地址可以被多个域名绑定。

AAAA记录

即IPV6地址解析。

CNAME记录

别名解析,比如我们可以将wx.qq.com解析到www.weixin.com,weixin.qq.com也可以解析到www.weixin.com,www.weixin.com就是A记录绑定的实际的IP地址。一般大型网站都使用这种解析方式,这样做的好处就是不管www.weixin.com的ip地址怎么更换解析,都不会影响wx.qq.com和weixin.qq.com的解析。

MX记录

Mail Exchange解析,邮件服务器地址,即xx@baidu.com的路由会发到MX记录的绑定记录服务器。

NS记录

指定解析DNS服务器地址,即这个域名由哪个IP地址的DNS服务器解析。

TXT记录

为域名设置说明,用命令解析的时候就能看到这个域名的说明。

在设置域名解析的时候还有一个TTL值,即DNS服务器缓存域名解析结果的时间,超过这个时间才会重新解析,否则返回已经解析的缓存的解析结果,这个一般设置为1小时,即3600秒。

我们来看看阿里云域名添加解析的截图

相关文章
|
19天前
|
监控 网络协议 Java
Tomcat源码解析】整体架构组成及核心组件
Tomcat,原名Catalina,是一款优雅轻盈的Web服务器,自4.x版本起扩展了JSP、EL等功能,超越了单纯的Servlet容器范畴。Servlet是Sun公司为Java编程Web应用制定的规范,Tomcat作为Servlet容器,负责构建Request与Response对象,并执行业务逻辑。
Tomcat源码解析】整体架构组成及核心组件
|
16天前
|
存储 JSON 数据库
Elasticsearch 分布式架构解析
【9月更文第2天】Elasticsearch 是一个分布式的搜索和分析引擎,以其高可扩展性和实时性著称。它基于 Lucene 开发,但提供了更高级别的抽象,使得开发者能够轻松地构建复杂的搜索应用。本文将深入探讨 Elasticsearch 的分布式存储和检索机制,解释其背后的原理及其优势。
62 5
|
23天前
|
存储 缓存 前端开发
Django 后端架构开发:存储层调优策略解析
Django 后端架构开发:存储层调优策略解析
36 2
|
18天前
|
存储 容灾 关系型数据库
OceanBase 高可用性架构解析
【8月更文第31天】在大数据和云计算蓬勃发展的今天,数据库作为数据存储的核心组件,其稳定性和可靠性直接影响到整个系统的性能。OceanBase 是由阿里巴巴集团自主研发的一款分布式关系型数据库系统,旨在为大规模在线交易处理(OLTP)场景提供高性能、高可用性的解决方案。本文将深入探讨 OceanBase 是如何通过其独特的架构设计来确保数据的高可用性和容灾能力。
77 0
|
20天前
|
Kubernetes API 调度
Kubernetes 架构解析:理解其核心组件
【8月更文第29天】Kubernetes(简称 K8s)是一个开源的容器编排系统,用于自动化部署、扩展和管理容器化应用。它提供了一个可移植、可扩展的环境来运行分布式系统。本文将深入探讨 Kubernetes 的架构设计,包括其核心组件如何协同工作以实现这些功能。
40 0
|
4天前
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
|
2天前
|
算法 Linux 调度
操作系统的心脏:现代操作系统架构的深度解析
本文深入探讨了现代操作系统的架构设计,重点分析了进程管理、内存管理和文件系统等核心组件。通过对Linux和Windows两大主流操作系统的比较,揭示了不同设计哲学在实际应用中的表现。旨在为操作系统开发者提供参考,同时帮助普通用户更好地理解其设备背后的软件机制。 ##
10 2
|
28天前
|
机器学习/深度学习 算法 数据库
阿里云服务器架构区别解析:从X86计算、Arm计算到高性能计算架构的区别参考
在我们选择阿里云服务器的架构时,选择合适的云服务器架构对于提升业务效率、保障业务稳定至关重要。阿里云提供了多样化的云服务器架构选择,包括X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等。本文将深入解析这些架构的特点、优势及适用场景,以供参考和选择。
阿里云服务器架构区别解析:从X86计算、Arm计算到高性能计算架构的区别参考
|
18天前
|
消息中间件 测试技术 API
深入解析微服务架构的设计与实践
在软件工程领域,"分而治之"的策略一直是解决复杂问题的有效方法。微服务架构作为这一策略的现代体现,它通过将大型应用程序分解为一组小的、独立的服务来简化开发与部署。本文将带你了解微服务的核心概念,探讨设计时的关键考虑因素,并分享实践中的一些经验教训,旨在帮助开发者更好地构建和维护可扩展的系统。
|
17天前
|
设计模式 存储 人工智能
深度解析Unity游戏开发:从零构建可扩展与可维护的游戏架构,让你的游戏项目在模块化设计、脚本对象运用及状态模式处理中焕发新生,实现高效迭代与团队协作的完美平衡之路
【9月更文挑战第1天】游戏开发中的架构设计是项目成功的关键。良好的架构能提升开发效率并确保项目的长期可维护性和可扩展性。在使用Unity引擎时,合理的架构尤为重要。本文探讨了如何在Unity中实现可扩展且易维护的游戏架构,包括模块化设计、使用脚本对象管理数据、应用设计模式(如状态模式)及采用MVC/MVVM架构模式。通过这些方法,可以显著提高开发效率和游戏质量。例如,模块化设计将游戏拆分为独立模块。
41 3

相关产品

  • 云解析DNS
  • 推荐镜像

    更多