计算机网络【应用层】邮件和DNS

文章目录

  • 电子邮件
  • DNS
    • DNS提供的服务:
    • 域名分级
    • 域名解析流程
    • DNS资源记录
    • DNS服务器类型

电子邮件

在这里插入图片描述

  • 使用SMTP协议发送邮件之前,需要将二进制多媒体数据编码为ASCII码
  • SMTP一般不使用中间邮件服务器发送邮件,如果收件服务器没开机,那么会保留在发送方的服务器上进行尝试,不会在中间进行保留
  • SMTP使用的25端口
  • SMTP是推的动作,HTTP的拉的动作

SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议的缩写,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议族,它帮助每台计算机在发送或中转信件时找到下一个目的地。通过 SMTP 协议所指定的服务器,就可以把 E-mail 寄到收信人的服务器上了,整个过程只要几分钟。SMTP 服务器则是遵循 SMTP 协议的发送邮件服务器,用来发送或中转你发出的电子邮件。

以下是关于 SMTP 的重要学习内容:

  1. 基本工作原理

    • SMTP 是一个基于文本的协议,用于在邮件服务器之间传输电子邮件。
    • 邮件从发件人的邮件客户端发送到发件人的 SMTP 服务器(也称为出站服务器)。
    • 然后,SMTP 服务器通过 Internet 将邮件发送到收件人的 SMTP 服务器(也称为入站服务器)。
    • 最后,收件人的邮件客户端从收件人的 SMTP 服务器上接收邮件。
  2. 邮件格式

    • SMTP 协议定义了邮件的头部和正文格式,通常使用 MIME(多用途互联网邮件扩展)来定义邮件内容类型和编码。
  3. SMTP 命令和响应

    • SMTP 协议使用命令和响应来建立连接、发送邮件和关闭连接。例如,HELO、MAIL FROM、RCPT TO、DATA、QUIT 等命令。
    • 响应代码以三位数字开头,后跟一个空格和文本描述。例如,250 表示成功,550 表示请求的用户不存在。
  4. 安全性

    • SMTP 是一个不加密的协议,因此传输的邮件内容可以被任何在传输路径上的设备读取。
    • 为了提高安全性,可以使用 SMTPS(SMTP over SSL)或提交邮件时使用 STARTTLS 命令将连接升级到加密的 TLS/SSL 连接。
  5. 认证

    • 许多 SMTP 服务器要求用户在发送邮件之前进行身份验证。这通常通过用户名和密码或其他认证机制来完成。
  6. 邮件中继和路由

    • SMTP 协议定义了邮件如何从一个服务器转发到另一个服务器,直到到达目标服务器。
    • 邮件服务器使用 DNS 中的 MX 记录来确定目标服务器的地址。
  7. 反垃圾邮件和过滤

    • 许多 SMTP 服务器实现了反垃圾邮件措施,如 IP 信誉检查、域名信誉检查、内容过滤等。
  8. SMTP 客户端和服务器软件

    • 邮件客户端软件(如 Outlook、Gmail 网页版等)使用 SMTP 协议将邮件发送到 SMTP 服务器。
    • 邮件服务器软件(如 Postfix、Sendmail、Exchange Server 等)实现了 SMTP 协议,用于接收、存储和转发邮件。

了解和掌握 SMTP 协议对于开发邮件客户端软件、配置邮件服务器以及进行网络故障排除都是非常重要的。

邮件报文格式:
在这里插入图片描述
在这里插入图片描述
POP3和IMAP,用来接收邮件的协议。取报文是一个拉的动作。

DNS

识别主机的两种方式,主机名和IP地址
从主机名到IP地址的目录服务,这就是DNS;

DNS(Domain Name System)是域名系统的缩写,它是互联网中用于将人类可读的域名(如 www.example.com)转换为计算机可读的IP地址(如 192.0.2.1)的系统。以下是关于DNS的一些详细解释:

  1. 工作原理

    • 当你在浏览器中输入一个网址(如 www.example.com)时,你的计算机首先会查询DNS服务器来找到与该域名对应的IP地址。
    • DNS服务器是一个分布式的数据库系统,它存储着域名和IP地址之间的映射关系。
    • 查询过程可能涉及多个DNS服务器,从根域名服务器开始,逐级向下查询,直到找到目标域名的IP地址。
  2. DNS记录类型

    • A记录(Address Record):将域名映射到IPv4地址。
    • AAAA记录(IPv6 Address Record):将域名映射到IPv6地址。
    • CNAME记录(Canonical Name Record):将一个域名映射到另一个域名,通常用于将子域名映射到主域名。
    • MX记录(Mail Exchange Record):指定哪个邮件服务器负责处理该域名的电子邮件。
    • NS记录(Name Server Record):指定哪些DNS服务器负责该域名的DNS解析。
    • TXT记录(Text Record):用于存储文本信息,常用于SPF(Sender Policy Framework)等安全验证。
  3. DNS解析过程

    • 递归查询:客户端向DNS服务器发送查询请求,DNS服务器负责查询整个DNS系统,直到找到目标IP地址,并将结果返回给客户端。
    • 迭代查询:客户端向DNS服务器发送查询请求,DNS服务器只返回下一级DNS服务器的地址,客户端再向该服务器发送查询请求,如此迭代,直到找到目标IP地址。
  4. DNS缓存

    • 为了提高查询效率,DNS查询结果通常会被缓存起来。缓存可以在客户端、本地DNS服务器或上级DNS服务器中进行。
    • 当缓存中的记录过期或需要更新时,会重新进行DNS查询。
  5. DNS安全

    • DNSSEC(DNS Security Extensions):一套扩展DNS安全性的协议,它提供了数据的来源验证、数据完整性检查和否认存在性证明。
    • DNS污染/劫持:攻击者通过修改DNS解析结果,将用户引导到错误的IP地址,从而实现欺诈、窃取信息等目的。使用HTTPS、VPN等加密通信方式可以降低这种风险。
  6. DNS提供商

    • 大多数域名注册商都提供DNS服务,但也有一些专门的DNS提供商,如Cloudflare、Google Domains等,它们提供了更丰富的功能和更好的性能。

总之,DNS是互联网中至关重要的一个系统,它确保了人们可以使用易于记忆的域名来访问网站和其他互联网服务。了解DNS的工作原理和常见安全威胁有助于更好地使用和保护你的网站和服务。

DNS提供的服务:

DNS(域名系统,Domain Name System)是互联网上用于将域名和IP地址相互映射的一个分布式数据库系统。它提供的服务主要包括:

  1. 域名解析:将用户输入的域名(如 www.example.com)转换为机器可以理解的IP地址(如 192.0.2.1)。

  2. 负载均衡:通过将一个域名解析到多个IP地址,DNS可以用于实现负载均衡,将请求分发到不同的服务器。

  3. 故障转移:当一个服务器出现故障时,DNS可以配置为将流量重定向到备用服务器。

  4. 缓存:DNS服务器会缓存查询结果,减少对权威DNS服务器的请求次数,加快解析速度。

  5. 安全性增强:通过DNSSEC(域名系统安全扩展),可以提供数据完整性校验和来源验证,增强DNS的安全性。

  6. 邮件服务器发现:DNS提供MX记录(Mail Exchange records),用于确定负责处理某个域名电子邮件的邮件服务器。

  7. 别名管理:使用CNAME(Canonical Name records)记录,可以将多个域名映射到同一个IP地址,实现别名管理。

  8. 地理定位:通过基于用户地理位置的DNS解析,可以将用户重定向到最近的服务器,改善服务体验。

  9. 反向DNS查找:DNS还支持将IP地址解析为域名,这称为反向DNS查找。

  10. 服务发现:在某些环境中,DNS可以用于服务发现,允许客户端通过域名自动发现服务的位置。

  11. 区域管理:DNS允许网络管理员定义网络的逻辑结构,通过区域(zones)来管理不同部分的DNS信息。

  12. 动态DNS:DDNS(动态DNS)服务允许用户动态地将变化的IP地址与域名关联起来,特别适用于拨号上网和移动设备。

  13. IPv6支持:随着IPv6的推广,DNS支持AAAA记录,用于IPv6地址的解析。

DNS是互联网基础设施的关键部分,它的服务对于网络的稳定运行和用户体验至关重要。

域名分级

  1. TLD:Top Level Domain 顶级域名
    组织域:.com, .net, .org, .gov, .edu, .mil
    国家域:.iq, .tw, .hk, .jp, .cn, …

  2. 域名分级
    根域名: .
    顶级域名:.com .edu .gov .int .net .cn .us .jp …
    二级域名:baidu.com microsoft.com jd.com qq.com aliyun.com edu.cn
    三级域名:map.baidu.com nankai.edu.cn
    四级域名:www.nankai.edu.cn cs.nankai.edu.cn

在这里插入图片描述

域名解析流程

在这里插入图片描述作者:wuxinliulei
在这里插入图片描述
1、首先客户端位置是一台电脑或手机,在打开浏览器以后,比如输入http://www.zdns.cn的域名,它首先是由浏览器发起一个DNS解析请求,如果本地缓存服务器中找不到结果,则首先会向根服务器查询,根服务器里面记录的都是各个顶级域所在的服务器的位置,当向根请求http://www.zdns.cn的时候,根服务器就会返回.cn服务器的位置信息。

2、递归服务器拿到.cn的权威服务器地址以后,就会寻问cn的权威服务器,知不知道http://www.zdns.cn的位置。这个时候cn权威服务器查找并返回http://zdns.cn服务器的地址。

3、继续向http://zdns.cn的权威服务器去查询这个地址,由http://zdns.cn的服务器给出了地址:202.173.11.10

4、最终才能进行http的链接,顺利访问网站。

5、这里补充说明,一旦递归服务器拿到解析记录以后,就会在本地进行缓存,如果下次客户端再请求本地的递归域名服务器相同域名的时候,就不会再这样一层一层查了,因为本地服务器里面已经有缓存了,这个时候就直接把http://www.zdns.cn的A记录返回给客户端就可以了。

DNS资源记录

在这里插入图片描述

记录一条域名信息映射关系,称之为资源记录(RR)。

当我们查询域名http://www.zdns.cn的时候,查询结果得到的资源记录结构体中有如下数据:

1、TTL,就是生存周期,是递归服务器会在缓存中保存该资源记录的时长。

2、网络/协议类型,它的代表的标识是IN,IN就是internet,目前DNS系统主要支持的协议是IN。

3、type,就是资源记录类型,一般的网站都是都是A记录(IPv4的主机地址)。

4、rdata是资源记录数据,就是域名关联的信息数据。

DNS服务器类型

DNS服务器一般分三种,根DNS服务器,顶级DNS服务器,权威DNS服务器
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

解决jar包中没有主清单目录的问题

文章目录 解决jar包中没有主清单目录的问题问题描述环境描述方法一 | 阿里巴巴构造器的通用解决方案方式二 | 指定MANIFEST.MF路径 解决jar包中没有主清单目录的问题 问题描述 很简单可能很多人都遇到过,maven项目打成jar包后执行报错:jar包中没有主清单…

在模方中已经选好水岸线了,但是点处理瓦块的时候还是提示水岸线没选

答:能部分位置不闭合,双击右键闭合一下,可以强行闭合缺口。 模方是一款针对实景三维模型的冗余碎片、水面残缺、道路不平、标牌破损、纹理拉伸模糊等共性问题研发的实景三维模型修复编辑软件。模方4.1新增自动单体化建模功能,支持…

高情商回复(不是)

背景介绍 在抖音上有这样的视频,视频就是一张图,图上问了一个问题:饭局上,你去帮领导盛饭,领导接过后说:‘盛这么多,喂猪呢?’咋回? 底下有一个搞笑评论:猪可…

迅雷永久破解

链接:https://pan.baidu.com/s/1ZGb1ljTPPG3NFsI8ghhWbA?pwdok7s 下载后解压 以管理员身份运行绿化.bat,会自动生成快捷方式,如果没有可以在program中运行Thunder.exe

UDP如何端口映射?

UDP端口映射是一种网络技术,通过它可以实现在异地组网的情况下,不暴露在公网上,通过私有通道传输数据,并对数据进行安全加密,以保障数据的安全性。这项技术在如今日益复杂和危险的网络环境中显得尤为重要。 UDP&#x…

Rust 适合哪些场景?

目录 二、Rust 适合哪些场景? 三、Rust 社区的发展趋势如何? 四、Rust 快速搭建一个WebServer服务器 一、Rust是什么? Rust是一门赋予每个人构建可靠且高效软件能力的语言。 Rust 程序设计语言 一门帮助每个人构建可靠且高效软件的语言。…

tomcat-以服务的方式重启tomcat

背景 双击tomcat的bin目录下面的startup.bat,会留下一个cmd的窗口,很不优雅 使用service服务的方式启动,并且设置为自动启动 找到tomcat的bin目录输入cmd,按Enter,进入命令行界面。执行“service.bat install” 。&…

详解嵌入式MCU运行时分配的stack和heap

目录 概述 1 认识stack和heap 1.1 栈区(stack) 1.2 堆区(heap) 2 stack和heap的区别 2.1 管理方式的不同 2.2 空间大小不同 2.3 产生碎片不同 2.4 增长方式不同 2.5 分配方式不同 2.6 分配效率不同 3 确定stack和heap…

架构师:搭建Spring Security、OAuth2和JWT 的安全认证框架

1、简述 Spring Security 是 Spring 生态系统中的一个强大的安全框架,用于实现身份验证和授权。结合 OAuth2 和 JWT 技术,可以构建一个安全可靠的认证体系,本文将介绍如何在 Spring Boot 中配置并使用这三种技术实现安全认证,并分析它们的优点。 2、Spring Security Spri…

Linux基础04-Linux中目录和文件都能操作的命令

前面两节我们分别学习了目录操作命令和文件操作命令,那么有没有一些既可以操作目录,又可以操作文件的命令呢? 这样我们就不需要记住两套命令了。 其实还真有,今天这一章就带大家学习Linux中目录和文件都能操作的命令 最近无意间获…

深度学习之DCGAN

目录 须知 转置卷积 DCGAN 什么是DCGAN 生成器代码 判别器代码 补充知识 LeakyReLU(x) torch.nn.Dropout torch.nn.Dropout2d DCGAN完整代码 运行结果 图形显示 须知 在讲解DCGAN之前我们首先要了解转置卷积和GAN 关于GAN在这片博客中已经很…

GraphGPT——图结构数据的新语言模型

在人工智能的浪潮中,图神经网络(GNNs)已经成为理解和分析图结构数据的强大工具。然而,GNNs在面对未标记数据时,其泛化能力往往受限。为了突破这一局限,研究者们提出了GraphGPT,这是一种为大语言…

ASP.NET MVC(二) HtmlHelper

强类型 》》》 Form Html.Action() 执行一个Action,并返回html字符串。 Html.ActionLink() 生成一个超链接。 》》》 htmlhelper 扩展方法 /// 扩展方法 三要素 静态类静态方法this 》》》》上面需要引入命名空间, 》》》 不需要引入命名空间 pu…

每日OJ题_DFS解决FloodFill⑥_力扣529. 扫雷游戏

目录 力扣529. 扫雷游戏 解析代码 力扣529. 扫雷游戏 529. 扫雷游戏 难度 中等 让我们一起来玩扫雷游戏! 给你一个大小为 m x n 二维字符矩阵 board ,表示扫雷游戏的盘面,其中: M 代表一个 未挖出的 地雷,E 代表…

计算机系列之数据库技术

13、数据库技术(重点、考点) 1、三级模式-两级映像(考点) 内模式:管理如何存储物理的数据,对应具体物理存储文件。 **模式:**又称为概念模式,就是我们通常使用的基本表&#xff0c…

AquiSense实现UV-C发光二极管里程碑

国际空间站饮水机上使用的UV-C LED技术 紫外线LED水消毒系统制造商AquiSense Technologies宣布,该公司的UV-C LED技术已成功集成到美国国家航空航天局(NASA)国际空间站(ISS)上的饮用水分配器中,并自2023年8…

【Git】回滚旧提交版本且不影响最新提交版本

【Git】回滚旧提交版本且不影响最新提交版本 一、场景假设 远程仓库origin中有一个分支main,有4次提交记录:v1、v2、v3、v4。 二、需求 需要回滚旧提交版本,但不影响已有的所有提交版本(即不影响最新提交版本)&…

树和二叉树:二叉树的基本运算算法的实现

一.前言 当前版本仅供笔者复盘 二.二叉树 2.1题目 编写一个程序,实现二叉树的基本运算,具体要求如下:(指定示范实例1:图1。指定示范实例2:图2 ) 1,先序遍历输出该树&#xff08…

PWM 开发舵机SG90-硬件舵机实战

1.PWM,英文名Pulse Width Modulation,是脉冲宽度调制缩写,它是通过对一系列脉冲的宽度进行调制,等效出所需要的波形(包含形状以及幅值),对模拟信号电平进行数字编码,也就是说通过调节…

hadoop学习---基于Hive的数仓搭建增量信息拉链表的实现

拉链表就是SCD2,它的优点是即满足了反应数据的历史状态,又能在最大程度上节省存储。 拉链表的实现需要在原始字段基础上增加两个新字段: start_time(表示该条记录的生命周期开始时间——周期快照时的状态)end_time(该条记录的生命周期结束时…