IoT物联网时代,如何优化你的网络- DNS域名解析服务

简介: IoT物联网时代,通过HTTPDNS域名解析服务,快速解析设备接入域名,获取IP列表

产品推荐:阿里云物联网开发者工具(IoT Studio),立刻免费体验吧!  
  

IoT物联网时代,如何优化你的网络- DNS域名解析服务

1.域名解析服务

设备以访问指定域名和端口方式接入IoT物联网平台时,遇到的第一个问题就是接入服务器域名的DNS解析。
域名(Domain Name),是由一串用点分隔的名字组成的互联网上某台计算机或某组计算机的标识,它的目的是为了方便人们更简单便捷地访问互联网上的服务。在实际的系统实现中,域名通过DNS(Domain Name System)系统转化为服务器的IP地址,以方便机器通过IP进行寻址和通信。上述行为,我们称之为域名解析(Domain Name System)。

  • 递归查询

递归查询时如果客户端所询问的本地域名服务器不知道被查询的域名的IP地址,那么本地域名服务器就以DNS客户的身份,向其他顶级域名服务器继续发出查询,直到查询到结果后,再层层传递回来。
image.png

  • 迭代查询

迭代查询时如果客户端所询问的本地域名服务器不知道被查询的域名的IP地址,那么会告知下一级域名服务器的列表,供客户端询问。
image.png

  • 实际场景

实际上,在DNS查询过程中,本地DNS服务器会代理客户端做迭代查询。但本地DNS没有域名解析结果的决定权,仅仅代理了用户向权威DNS获取域名解析结果的过程。本地DNS上有缓存模块,当目标域名存在缓存解析结果并且TTL未过期时,本地DNS会返回缓存结果,否则,本地DNS会一级一级地迭代查询各个层级域名的权威DNS直至获取最终完整域名的解析结果。同时客户端也会根据TTL值做缓存的机制,这样可以减少查询的次数,加快域名解析过程。
image.png
我们以访问 pk.iot-as-mqtt.cn-shanghai.aliyuncs.com 为例,一次完整的域名解析流程包括:

1.设备终端向本地DNS发起域名解析请求;
2.本地DNS在获取到域名解析请求后首先从Root hints获取根域名(.)服务器的地址;
3.获取了根域名服务器地址后本地DNS向根域名服务器发起DNS解析请求;
4.根域名服务器返回顶级域名(.com)服务器地址;
5.随后本地DNS向顶级域名(.com)服务器发起解析请求,并得到二级域名(aliyuncs.com)服务器的地址;
6.本地DNS向二级域名(aliyuncs.com)服务器发起解析请求,并最终获得 pk.iot-as-mqtt.cn-shanghai.aliyuncs.com 的IP地址信息;
7.本地DNS将递归查询获得的IP地址信息根据TTL缓存并返回给设备终端;
8.设备终端向目的IP发起网络请求;

2.DNS域名解析实验

2.1 DNS域名解析

如果你要访问域名 pk.iot-as-mqtt.cn-shanghai.aliyuncs.com,首先要通过DNS查出它的IP地址是139.196.135.135。
我们可以使用dig命令来查看域名对应的IP列表,具体如下:
image.png
上图展示了当前mac电脑从本地DNS服务器获取到域名的IP列表,TTL值(Time to live)是18s。

2.2 DNS解析完整过程

DNS服务器根据域名的层级进行分级查询,就是从根域名开始,依次查询每一级域名的NS记录,直到查到最终的IP地址,过程大致如下:

1.从"根域名服务器"查到"顶级域名服务器"的NS记录和A记录(IP地址)
2.从"顶级域名服务器"查到"二级域名服务器"的NS记录和A记录(IP地址)
3.从"二级域名服务器"查出"主机名"的IP地址

其中,每一级域名都有自己的NS记录,NS记录指向该级域名的域名服务器。这些服务器知道下一级域名的各种记录。
我们通过dig +trace能了解完整解析过程,具体如下:
image.png
上图展示了DNS完整过程,

1.首先Mac电脑从本地DNS服务器获取到根域名(.root)服务器列表,
2.其次从其中一台根域名服务器(198.41.0.4)获取到顶级域名(.com)服务器列表
3.再次从其中一台顶级域名服务器(192.48.79.30)获取到二级域名(aliyuncs.com)服务器列表
4.最后从其中一台二级域名服务器获取到了目标域名的IP列表,共3个IP地址

3.物联网场景DNS解析

3.1 域名解析潜在问题

当我们了解DNS域名解析服务完整过程后,会发现传统域名解析存在以下问题:

  • 域名劫持

域名劫持一直是困扰许多开发者的问题之一,其表现即域名A应该返回的DNS解析结果IP1被恶意替换为了IP2,导致A的访问失败或访问了一个不安全的站点。

  • 调度不精准

除了域名劫持问题,基于传统Local DNS的域名解析还会带来域名调度精准性的问题。对于类似CDN域名访问这类需要按地域、运营商进行智能解析调度的场景,精准调度的诉求是十分强烈的。

  • 解析生效滞后

部分业务场景下开发者对域名解析结果变更的生效时间非常敏感(这部分变更操作是开发者在权威DNS上完成的),比如当业务服务器受到攻击时,我们需要最快速地将业务IP切换到另一组集群上,这样的诉求在传统域名解析体系下是无法完成的。

  • 延迟大

DNS首次查询或缓存过期后的查询,需要递归遍历多个DNS服务器以获取最终的解析结果,这增加了网络请求的前置延时时间。特别是在移动互联网场景下,移动网络质量参差不齐,弱网环境的RTT时间可能高达数百毫秒,对于一次普通的业务请求而言,上述延时是非常沉重的负担。另一方面,弱网环境下的解析超时、解析失败等现象屡见不鲜,如何合理优化DNS解析对于整体网络访问质量的提升至关重要。

3.2 阿里云HTTPDNS服务

阿里云HTTPDNS服务正在这样的背景下应运而生,为我们提供一个更安全、稳定、高效的递归DNS服务代理了域名解析的过程。

HTTPDNS使用HTTP协议进行域名解析,代替现有基于UDP的DNS协议,域名解析请求直接发送到HTTPDNS服务端,从而绕过运营商的本地DNS,将终端用户的IP信息直接交付给权威DNS,避免本地DNS的坐标干扰,用户在权威DNS变更的解析结果将快速同步给HTTPDNS,覆盖原有的缓存记录,帮助用户实现秒级的域名解析切换。

3.3 物联网场景DNS实战

但我们在IoT物联网平台控制台创建产品后,会生成对应设备接入指定域名,参考下图:
image.png

接下来我们要在HTTPDNS的控制台,添加IoT物联网设备的接入域名解析服务,参考下图:
image.png

然后,通过直接访问HTTPDNS的IP获取设备接入域名的IP列表,参考下图:
image.png
最后,IoT设备就可以直接访问IP列表中的一个IP,建立与IoT物联网平台的MQTT长连接通道。

[]()image.png

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
4天前
|
安全 虚拟化
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力
在数字化时代,网络项目的重要性日益凸显。本文从前期准备、方案内容和注意事项三个方面,详细解析了如何撰写一个优质高效的网络项目实施方案,帮助企业和用户实现更好的体验和竞争力。通过具体案例,展示了方案的制定和实施过程,强调了目标明确、技术先进、计划周密、风险可控和预算合理的重要性。
17 5
|
6天前
|
SQL 安全 网络安全
网络安全的护城河:漏洞防御与加密技术的深度解析
【10月更文挑战第37天】在数字时代的浪潮中,网络安全成为守护个人隐私与企业资产的坚固堡垒。本文将深入探讨网络安全的两大核心要素——安全漏洞和加密技术,以及如何通过提升安全意识来强化这道防线。文章旨在揭示网络攻防战的复杂性,并引导读者构建更为稳固的安全体系。
17 1
|
15天前
|
SQL 安全 测试技术
网络安全的盾牌与剑——漏洞防御与加密技术解析
【10月更文挑战第28天】 在数字时代的浪潮中,网络空间安全成为我们不可忽视的战场。本文将深入探讨网络安全的核心问题,包括常见的网络安全漏洞、先进的加密技术以及提升个人和组织的安全意识。通过实际案例分析和代码示例,我们将揭示黑客如何利用漏洞进行攻击,展示如何使用加密技术保护数据,并强调培养网络安全意识的重要性。让我们一同揭开网络安全的神秘面纱,为打造更加坚固的数字防线做好准备。
35 3
RS-485网络中的标准端接与交流电端接应用解析
RS-485,作为一种广泛应用的差分信号传输标准,因其传输距离远、抗干扰能力强、支持多点通讯等优点,在工业自动化、智能建筑、交通运输等领域得到了广泛应用。在构建RS-485网络时,端接技术扮演着至关重要的角色,它直接影响到网络的信号完整性、稳定性和通信质量。
|
4天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
27 3
|
4天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
15 2
|
12天前
|
SQL 安全 算法
网络安全的屏障与钥匙:漏洞防护与加密技术解析
【10月更文挑战第31天】在数字世界的海洋中,网络安全是航船的坚固屏障,而信息安全则是守护宝藏的金钥匙。本文将深入探讨网络安全的薄弱环节——漏洞,以及如何通过加密技术加固这道屏障。从常见网络漏洞的类型到最新的加密算法,我们不仅提供理论知识,还将分享实用的安全实践技巧,帮助读者构建起一道更加坚不可摧的防线。
22 1
|
17天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
8天前
|
机器学习/深度学习 人工智能 自动驾驶
深入解析深度学习中的卷积神经网络(CNN)
深入解析深度学习中的卷积神经网络(CNN)
23 0
|
10天前
|
安全 物联网 网络安全
智能设备的安全隐患:物联网(IoT)安全指南
智能设备的安全隐患:物联网(IoT)安全指南
34 12

相关产品

  • 物联网平台
  • 推荐镜像

    更多