一文入门DNS

概述

DNS是一个缩写,可以代表Domain Name System,域名系统,是互联网的一项基础服务。也可以代表Domain Name Server,域名服务器,是进行域名和与之相对应的IP地址相互转换的服务器。DNS协议则是用来将域名转换为IP地址(也可将IP地址转换为相应的域名地址)。

当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。开始时,域名的字符仅限于ASCII字符的一个子集。

DNS解析,将域名翻译为可由计算机直接读取的IP地址。根据查询对象不同,DNS解析可分为递归解析和迭代解析两种方式。

使用TCP和UDP端口53,在进行区域传输时使用TCP协议,其它时候则使用UDP协议。

DNS的规范规定2种类型的DNS服务器,即主DNS服务器和辅助DNS服务器。在一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息。

Zone Transfer:区传送,当一个辅助DNS服务器启动时,它需要与主DNS服务器通信,并加载数据信息。

报文

DNS定义两种报文 :查询报文和响应报文,两者都有12个字节的头和查询问题。

公共DNS服务器

常用的公共DNS服务器

  • 谷歌:主DNS:8.8.8.8,辅DNS:8.8.4.4
  • Cloudflare:DNS:1.1.1.1
  • Norton ConnectSafe:主DNS:199.85.126.10,辅DNS:199.85.127.10
  • 114DNS:部署在国内,主DNS114.114.114.114,辅114.114.115.115
  • CNNIC:中国互联网络信息中心推出SDNS,主DNS1.2.4.8,辅DNS210.2.4.8

域名服务器

有以下几种类型

  • 主域名服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改
  • 辅助域名服务器:当主域名服务器出现故障、关闭或负载过重时,辅助域名服务器作为主域名服务器的备份提供域名解析服务。辅助域名服务器中的区域文件中的数据是从另外的一台主域名服务器中复制过来的,是不可以修改的
  • 缓存域名服务器:从某个远程服务器取得每次域名服务器的查询回答,一旦取得一个答案就将它放在高速缓存中,以后查询相同的信息就用高速缓存中的数据回答,缓存域名服务器不是权威的域名服务器,因为它提供的信息都是间接信息
  • 转发域名服务器:负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。

DNS记录

DNS Record,即由DNS构建起的域名与IP地址之间的对应关系。通过设置不同的解析记录,可以实现对主机名不同的解析效果,从而满足不同场景下的域名解析需求。域名解析记录主要有以下几种类型。

A记录

A(Address)记录是用来指定主机名(或域名)对应的IP地址记录。用户可以将该域名下的网站服务器指向到自己的web server上,同时也可以设置域名的子域名。A记录就是指定域名对应的IP地址。如添加一条A记录将www.google.com的主机指向IP192.168.1.1,那么当你访问www.google.com主机时就会解析到192.168.1.1这个IP上。

CNAME记录

canonical name,通常称别名解析,是主机名到主机名的映射。当需要将域名指向另一个域名,再由另一个域名提供IP地址,就需要添加CNAME记录,最常用到CNAME的场景包括做CDN、企业邮箱、全局流量管理等。与A记录不同的是,CNAME别名记录设置的值不是一个固定的IP,而是主机的别名地址。

别名解析可以提供更大的灵活性,便于统一管理。比如,当主机因某种因素的影响需要更换IP时,如果域名做CNAME记录,就可以同时更新别名的解析指向,不需要进行新的解析操作。

NS记录

Name Server记录。如果需要把子域名交给其他DNS服务商解析,就需要添加NS记录。NS记录是域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析。NS记录中的IP即为该DNS服务器的IP地址。大多数域名注册商默认用自己的NS服务器来解析用户的DNS记录。DNS服务器NS记录地址一般以以下的形式出现:ns1.domain.comns2.domain.com等。

SOA记录

Start Of Authority,SOA,是起始授权机构记录,说明在众多NS记录里哪一台才是主要的服务器。在任何DNS记录文件中,都是以SOA记录开始。SOA资源记录表明此DNS名称服务器是该DNS域中数据信息的最佳来源。

SOA记录与NS记录的区别:NS记录表示域名服务器记录,用来指定该域名由哪个DNS服务器来进行解析;SOA记录设置一些数据版本和更新以及过期时间等信息。

AAAA记录

AAAA记录是用来将域名解析到IPv6地址的DNS记录。用户可以将一个域名解析到IPv6地址上,也可以将子域名解析到IPv6地址上。国内大多数IDC不支持AAAA记录的解析,因此如果想进行AAAA记录解析,则需对域名NS记录设置一些专业的域名解析服务商,由他们提供AAAA记录的设置。

TXT记录

TXT记录,一般指某个主机名或域名的标识和说明。如:admin IN TXT “管理员, 电话:XXXXXXXXXXX”,mail IN TXT “邮件主机,存放在xxx , 管理人:AAA”,Jim IN TXT “contact: abc@mailserver.com”,也就是说,通过设置TXT记录内容可以使别人更方便地联系到你。TXT 记录常用的方式还有做 SPF 记录(反垃圾邮件)和SSL证书的DNS验证等。

MX记录

MX(Mail Exchanger)记录是邮件交换记录,主要用于邮箱解析,在邮件系统发送邮件时根据收信人的地址后缀进行邮件服务器的定位。MX记录允许设置一个优先级,当多个邮件服务器可用时,会根据该值决定投递邮件的服务器。

MX记录的权重对Mail服务非常重要,当发送邮件时,Mail服务器先对域名进行解析,查找MX记录。先找权重数最小的服务器,如果能连通,那么就将服务器发送过去;如果无法连通此服务器,才将邮件发送到权重更高的mail服务器上。

PTR记录

PTR是pointer的简写,即反向DNS,domain name pointer,是一个指针记录,用于将一个IP地址映射到对应的主机名,也可以看成是A记录的反向,即通过IP访问域名。

SRV记录

即服务定位(SRV)资源记录,用于定义提供特定服务的服务器的位置,如主机(hostname),端口(port number)等。

URL转发

URL转发,是指通过服务器的特殊设置,将当前访问的域名指向另一个指定的网络地址。根据目标地址的隐藏与否,URL转发可以分为显性URL和隐性URL两种。

显性URL:将域名指向一个http(s)协议地址,访问域名时,自动跳转至目标地址,地址栏显示为目标网站地址。

隐性URL:与显性URL类似,但隐性转发会隐藏真实的目标地址,地址栏中显示为仍为此前输入的地址。

共存冲突

记录类型也会有共存冲突,在RR(Resource Record)值相同的情况下,同一条线路下,在几种不同类型的解析中不能共存(X为不允许):

  • X:在相同的RR值情况下,同一条线路下,不同类型的解析记录不允许共存。如:已经设置了www.example.com的A记录,则不允许再设置www.example.com的CNAME记录;
  • 无限制:在相同的RR值情况下,同一条线路下,不同类型的解析记录可以共存。如:已经设置了www.example.com的A记录,则还可以再设置www.example.com的MX记录;
  • 可重复:指在同一类型下,同一条线路下,可设置相同的多条RR值。如:已经设置www.example.com的A记录,还可以再设置www.example.com的A记录。

解析步骤

可提供域名服务的包括本地缓存、本地域名服务器、权限域名服务器、顶级域名服务器以及根域名服务器。DNS主机名解析的查找顺序是,先查找客户端本地缓存,如果没有成功,则向DNS服务器发出解析请求。本地缓存是内存中的一块区域,保存着最近被解析的主机名及其IP地址映像。由于解析程序缓存常驻内存中,所以比其他解析方法速度快。当一个主机发出DNS查询报文时,这个查询报文就首先被送往该主机的本地域名服务器。本地域名服务器离用户较近,当所要查询的主机也属于同一个本地ISP时,该本地域名服务器立即就能将所查询的主机名转换为它的IP地址,而不需要再去询问其他的域名服务器。每一个区都设置有域名服务器,即权限服务器,它负责将其管辖区内的主机域名转换为该主机的IP地址。在其上保存有所管辖区内的所有主机域名到IP地址的映射。顶级域名服务器负责管理在本顶级域名服务器上注册的所有二级域名。当收到DNS查询请求时,能够将其管辖的二级域名转换为该二级域名的IP地址。或是下一步应该找寻的域名服务器的IP地址。根域名服务器是最高层次的域名服务器。每一个根域名服务器都要存有所有顶级域名服务器的IP地址和域名。当一个本地域名服务器对一个域名无法解析时,就会直接找到根域名服务器,然后根域名服务器会告知它应该去找哪一个顶级域名服务器进行查询。

递归查询

最常见也是默认的一种解析方式。如果客户端配置的本地域名服务器(Local DNS服务器)不能解析的话,则后面的查询过程全部由本地域名服务器代替DNS客户端进行查询,直到本地域名服务器从权威域名服务器得到正确的解析结果,然后由本地域名服务器告诉DNS客户端查询的结果。

递归解析的查询过程大致如下:
在这里插入图片描述

  1. 客户端向本机配置的本地域名服务器发起DNS域名查询请求
  2. 本地域名服务器收到请求后,会先查询本地缓存,如果有记录值会直接返回给客户端;如果没有记录,则本地域名服务器会向根域名服务器发起请求
  3. 根域名服务器收到请求后,会根据所要查询域名中的后缀将所对应的顶级域名服务器(如.com.cn等)返回给本地域名服务器
  4. 本地域名服务器根据返回结果向所对应的顶级域名服务器发起查询请求
  5. 对应的顶级域名服务器在收到DNS查询请求后,也是先查询自己的缓存,如果有所请求域名的解析记录,则会直接将记录返回给本地域名服务器,然后本地域名服务器再将记录返回给客户端,完成整个DNS解析过程
  6. 如果顶级域名服务器没有记录值,就会将二级域名对应的服务器地址返回给本地域名服务器,本地域名服务器再次对二级域名服务器发起请求,如此类推,直到最终对应区域的权威域名服务器返回结果给本地域名服务器。然后本地域名服务器将记录值返回给DNS客户端,同时缓存本地查询记录,以便在TTL值内用户再次查询时直接将记录返回给客户端

在整个递归查询过程中,除一开始客户端向本地域名服务器发起查询请求外,其余各个环节均是以本地域名服务器为中心进行迭代查询,DNS客户端一直处于等待状态,直到本地域名服务器发回最终查询结果。相当于,在整个查询环节中本地域名服务器承担中介代理的角色。

迭代查询

迭代查询则是指所有查询工作全部由客户端自己进行,除此之外,整个查询路径和步骤与递归查询没有太大区别。
在这里插入图片描述
首先客户端向本地域名服务器发起请求,如果本地域名服务器没有缓存记录,客户端便会依次对根域名服务器、顶级域名服务器和二级域名服务器等发起迭代查询,直到获得最终的查询结果。

在以下条件之一满足时,就会采用迭代解析方式:

  1. 在查询本地域名服务器时,如果客户端的请求报文中没有申请使用递归查询,即在DNS请求报文中的RD字段没有设置为1
  2. 客户端在DNS请求报文中申请使用递归查询,但所配置的本地域名服务器禁止使用递归查询,即在应答DNS报文头部的RA字段设置为0

对比

递归查询的查询方式为:当用户发出查询请求时,本地服务器要进行递归杳询。这种查询方式要求服务器彻底地进行名字解析,并返回最后的结果——IP地址或错误信息。如果查询请求在本地服务器中不能完成,那么服务器就根据它的配置向域名树中的上级服务器进行查询,在最坏的情况下可能要查询到根服务器。每次查询返回的结果如果是其他名字服务器的IP地址,则本地服务器要把查询请求发送给这些服务器,故进一步的查询。
迭代查询的查询方式为:服务器与服务器之间的查询采用迭代的方式进行,发出查询请求的服务器得到的响应可能不是目标的IP地址,而是其他服务器的引用(名字和地址),那么本地服务器就要访问被引用的服务器,做进一步的查询。如此反复多次,每次都更接近目标的授权服务器,直至得到最后的结果——目标的IP地址或错误信息。

根域名服务器为众多请求提供域名解析,若采用递归方式会大大影响性能。

常见问题

  • DNS解析修改后没有立即生效

DNS解析完成后不会立即生效,全球刷新生效需要等待一定的时间。如果只是修改解析记录,刷线时间根据设置的TTL值而定。修改DNS解析服务器,则需要等待24-48小时才能实现全球服务器的同步生效。

  • 添加解析记录失败,显示记录已存在

域名解析记录重复添加,删除相同的条目后,重新添加即可。为了避免出现此问题,最好是删除全部的默认记录之后,再重新添加。

  • 解析后访问域名,显示的不是自己的网站

可能有多方面原因:1.设置URL转发,检查下解析记录中是否有该类型记录;2.可能遭到DNS劫持,先检查解析记录是否被篡改,认真核对解析记录,编辑更正有问题的项目,或删除记录重新添加;3.修改解析记录还没有生效,这种情况在确认解析记录无误之后,等待解析生效或刷新本地DNS缓存再试。

  • 解析后访问域名,显示无法访问此网站。

查看域名指向的IP是否为网站所在主机的IP地址(即解析记录里设置的IP)。如正确,则问题可能出在网站方面;如不正确,可能有两方面原因:一是解析问题,检查核对解析设置;二是解析未生效,刷新本地DNS缓存,查看IP是否变为正确的了,不行的话等一会儿,等待解析生效后再试。

安全

DNS在设计之初只考虑实用性,没有相应的验证机制,安全性较低,经常成为网络攻击的重点对象。

针对DNS的攻击主要有两种:

  • DNS DDoS攻击:Denial-of-service attack,拒绝服务攻击,对DNS服务器发动攻击,造成DNS服务器的线路拥堵或宕机。DNS服务器发生故障,将无法及时回应递归服务器发起的解析请求,从而会导致其所管辖的所有域名都无法正常解析,这样造成的危害比单独针对web服务器发起攻击要大得多
  • DNS劫持:通过错误的域名解析记录代替正确的记录返回给客户端,将客户端引导至错误的IP地址,达到流量劫持,获取非法收益的目的。DNS劫持可通过DNS缓存投毒、修改NS记录等方式达成。

提升DNS安全的策略:

  • 构建DNS外部安全防护体系:将边界路由器、防火墙策略、端口管理、负载均衡等软硬件防护策略结合起来,构建起坚实的外部安全防护体系
  • 设置DNS内部安全策略:使用最新版的bind,可以消除软件设计上的明显漏洞,大大提升DNS安全性;通过DNSSEC安全协议为解析数据进行加密,从而确保DNS解析数据不被篡改
  • 使用高防DNS:高防DNS,通过弹性宽带功能,可以有效抵御超大流量解析访问和恶意的DNS DDoS攻击,此外高防DNS具备流量清洗、健康监测和DDoS防火墙改功能,可以对DDoS攻击形成有效的清洗和防御

DNS劫持

DNS劫持的危害是双向多面的。对于用户而言,它通过将用户引导至与原网站十分相似的网站,并诱导用户输入账号、密码、身份证等敏感信息,从而造成个人信息泄露、财产损失等风险。对于企业机构而言,它会让企业机构失去对域名的控制权,导致站点不能访问,正常流量流失,业务无法正常运行,进而对企业形象和经济利益造成影响。

当客户端发起域名请求时,本地递归服务器(大多数情况下为运营商DNS)或公共DNS会通过向根域名服务器、顶级域名服务器到权威域名服务器一级一级查询,并将最终查询结果返回给客户端。

除了这种典型解析流程外,由于DNS缓存的存在,当客户端发起请求时,浏览器缓存、hosts文件、本地递归服务器DNS缓存会先将本地储存的解析记录直接告知客户端,从而省去全球递归查询的步骤。

从上面DNS解析流程中可以看出,一次完整的DNS查询具备以下两个特点:

  • 链路长,查询过程包含多次、多级网络通信;
  • 参与角色多,查询过程涉及客户端(浏览器缓存、hosts文件)、递归解析服务器、权威解析服务器等角色。

在一次完整DNS查询链路的各个环节,都可以通过技术手段将域名解析记录进行篡改,将域名指向劫持到错误的IP地址上。

类型

  • 本地DNS劫持
  • DNS解析路径劫持

本地DNS劫持是指发生在客户端侧的各类DNS劫持:

  • 通过木马或恶意程序入侵客户端,篡改DNS缓存、hosts文件、DNS服务器地址等DNS相关配置
  • 利用路由器漏洞入侵路由器,并针对路由器中的DNS缓存进行篡改

DNS解析路径劫持
指发生在客户端和DNS服务器网络通信间的DNS劫持方式。通过对DNS劫持报文在查询阶段的路径进行划分,又可将DNS劫持分为四类:

  • DNS请求转发:通过中间盒子、软件等技术手段将用户发出的DNS请求重定向到由攻击者控制的流氓DNS服务器,从而将其重定向到恶意站点
  • DNS请求复制:将DNS查询复制到网络设备,并在用户发起请求时先于正常应答返回DNS劫持的结果,这种方式表现为一个DNS查询抓包返回两个不同的应答
  • DNS请求代答:通过利用网络设备或软件代替DNS服务器对DNS查询进行应答
  • DNS缓存感染:指攻击者在递归解析服务器投入错误的缓存信息,当访问者发起解析请求时,递归服务器就会从DNS缓存中将错误的解析记录返回,从而将用户引导至错误的网站。

DNS污染

DNS污染又称域名服务缓存投毒,是指通过制作域名服务数据包,将域名指向不正确的IP地址。在正常的DNS解析过程中,下一级域名服务器会将从上游域名服务器获得的解析记录保存一段时间,当在TTL值失效之前,有相同域名的解析请求时,就会直接将解析记录告知客户端,而无需进行全球范围的递归查询,这样既加快查询时间,也降低服务器工作压力。

但在这个过程中,如果局域域名服务器的缓存受到污染,就会告知客户端错误的解析记录,从而将用户指向错误的网站。这种攻击方式,被称为DNS污染。

使用场景

  1. 某些网络运营商为了达成某些目的,对DNS进行某些操作,就会导致使用ISP正常上网设置无法通过域名访问正确的IP地址
  2. 如果掌握部分国际DNS根目录服务器或镜像,也可通过DNS污染方式,屏蔽对特定网站的访问,如Google、YouTube等

解决DNS污染

  • 需要能够替换DNS解析服务器。通常,域名注册企业提供免费的DNS解析服务。域名提供商可以提供许多免费的DNS解析服务,并且其解析速度非常快,多组DNS服务器,可以更好地避免被DNS污染。
  • 使用第三方DNS解析服务及CDN服务,CDN服务商会提供他们的DNS服务器解析服务和CDN的网络IP地址。

考题

主机PC对某个域名进行查询,最终由该域名的授权域名服务器解析并返回结果,查询过程如下。不合理之处为(A)。
在这里插入图片描述
A. 根域名服务器采用递归查询,影响性能
B. 根域名服务器采用迭代查询,影响性能
C. 中介域名服务器采用迭代查询,加重根域名服务器负担
D. 中介域名服务器采用递归查询,加重根域名服务器负担

参考

  • 一文读懂DNS解析原理和流程
  • 如何提升DNS解析安全?

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

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

相关文章

1W、2W 3KVAC隔离 宽电压输入 交直两用AC/DC 电源模块 ——TP01(02)AZ 系列

TP01(02)AZ为客户提供一款超小体积模块式开关电源,该系列模块电源输出功率为1W、2W,具有极低的空载损耗,低漏电流仅0.1mA,小体积,隔离耐压高达3KV等特点。产品安全可靠,EMC 性能好,EMC 及安全规…

树莓派配置双网卡分别为AD HOC和AP模式

树莓派配置双网卡分别为AD HOC和AP模式 需求说明:为了实现分级网络管理,将多个无人机分簇,簇间使用AD HOC进行无中心自组织的网络,簇内使用AP-AC模式进行中心化网络。因此,需要配置一台设备,同时完成AD HOC…

三、配置带HybridCLR的ARCore开发环境

预告 本专栏将介绍如何使用这个支持热更的AR开发插件,快速地开发AR应用。 专栏: Unity开发AR系列 插件简介 通过热更技术实现动态地加载AR场景,简化了AR开发流程,让用户可更多地关注Unity场景内容的制作。 “EnvInstaller…”支…

【eclipse】如何在IDE里创建一个Java Web项目?

如何在eclipse中创建一个动态Web项目并成功运行? 一、 最终效果 懒得写那么多了…我也不知道该怎么写了,有点乱,有问题可以在评论里留言,我看到会解决的,在这个过程中也踩到了一些坑,但好在有CSDN帮助解决…

【C++杂货铺】红黑树

目录 🌈前言🌈 📁 红黑树的概念 📁 红黑树的性质 📁 红黑树节点的定义 📁 红黑树的插入操作 📁 红黑树和AVL树的比较 📁 全代码展示 📁 总结 🌈前言…

四川汇昌联信:拼多多网点怎么开?大概需要多少钱?

想要开一家拼多多网点,你肯定很关心需要准备多少资金。下面,我们就来详细解答这个问题,并从多个角度分析开设网点的要点。 一、 开设拼多多网点,首要任务是确定启动资金。根据不同的经营模式和地区差异,成本会有所不同…

WIFI模块的AT指令联网数据交互--第十天

1.1.蓝牙,ESP-01s,Zigbee, NB-Iot等通信模块都是基于AT指令的设计 初始配置和验证 ESP-01s出厂波特率正常是115200, 注意:AT指令,控制类都要加回车,数据传输时不加回车 1.2.上电后,通过串口输出一串系统…

【面试经典题】环形链表

个人主页:一代… 个人专栏:数据结构 在面试中我们经常会遇到有关链表的相关题目,面试官通常会对题目给出拓展 下面我就两个leetcode上的一个双指针的题目为例,并对其进行拓展 题目链接:环形链表 题目描述&#xf…

145.二叉树的后序遍历

刷算法题: 第一遍:1.看5分钟,没思路看题解 2.通过题解改进自己的解法,并且要写每行的注释以及自己的思路。 3.思考自己做到了题解的哪一步,下次怎么才能做对(总结方法) 4.整理到自己的自媒体平台。 5.再刷重复的类…

LLVM中期报告

1.主要开展的工作 研究对LLVM IR层面进行代码混淆,分析IR的指令 ,并且实现混淆 从LLVM代码混淆的角度出发,函数之间的正常调用构成了待混淆程序的原始控制流,不同的基础代码块构成了一个个的函数,每个基础…

自定义类型——结构体、枚举和联合

自定义类型——结构体、枚举和联合 结构体结构体的声明匿名结构体结构体的自引用结构体的初始化结构体的内存对齐修改默认对齐数结构体传参 位段枚举联合 结构体 结构是一些值的集合,这些值被称为成员变量,结构的每个成员可以是不同类型的变量。 数组是…

【随笔】Git 高级篇 -- 远程跟踪分支 git checkout -b | branch -u(三十五)

💌 所属专栏:【Git】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…

向银行家应用程序添加日期

● 首先我们将下面图片上的时间更换成现在的时间 const now new Date(); const day now.getDate(); const month now.getMonth() 1; const year now.getFullYear(); const hour now.getHours(); const min now.getMinutes();labelDate.textContent ${day}/${month}/$…

parallelsdesktop19密钥激活 PD19虚拟机完整图文安装教程

Parallels Desktop 19 (简称 PD 19)是最新发布的 macOS 平台的 windows 虚拟机,本文是使用 Parallels Desktop 19 虚拟机安装 Windows 的详细图文破解安装教程。 一下载安装 Parallels Desktop 软件下载完成后打开,双击打开 安装.dmg Para…

3. 深度学习笔记--优化函数

深度学习——优化器算法Optimizer详解(BGD、SGD、MBGD、Momentum、Adagrad、Adadelta、RMSprop、Adam、Nadam、AdaMax、AdamW ) 0. GD (梯度下降) Gradient Descent(梯度下降)是一种迭代优化算法&#xf…

汇昌联信电商:拼多多新手怎么做店铺的免费流量会慢慢起来?

在拼多多上开店,新手们往往面临着如何吸引免费流量的挑战。毕竟,流量是店铺生存和发展的血脉,没有流量,就没有销量,店铺也就失去了生命力。那么,作为拼多多新手,如何做才能让店铺的免费流量慢慢…

初识C语言——第十九天

for循环 1.简单概述 2.执行流程 3.建议事项:

RuoYi-Vue-Plus (SpringCache、CacheManager、@Cacheable、缓存雪崩、击穿、穿透)

一、概述 1、SpringCache是Spring提供的一个缓存框架,在Spring3.1版本开始支持将缓存添加到现有的spring应用程序中,在4.1开始,缓存已支持JSR-107注释和更多自定义的选项。 2、SpringCache利用了AOP,实现了基于注解的缓存功能&…

基于Java的qq截图工具参考论文(论文 + 源码)

【免费】基于Java的qq截图工具.zip资源-CSDN文库https://download.csdn.net/download/JW_559/89304179 基于Java的qq截图工具 摘要 当今时代是飞速发展的信息时代,人们在对信息的处理中对图像的处理量与日俱增,这一点在文档人员上显得非常突出。 本软…

Linux下Telemac-Mascaret源码编译安装及使用

目录 软件介绍 基本依赖 其它可选依赖 一、源码下载 二、解压缩 三、编译安装 3.1 修改环境变量设置文件 3.2 修改配置文件 3.3 编译安装 四、算例运行 软件介绍 TELEMAC-MASCARET是法国电力集团(EDF)的法国国立水利与环境实验室开发的一款研究水动力学和水文学领域的…