关键词

  1. 无限邮箱
  2. 域名邮箱
  3. 临时邮箱
  4. cloudflare
  5. 企业邮箱
  6. Mail Exchange 记录( DNS,MX , SPF 记录)
  7. SMTP 协议邮件服务器
  8. resend
  9. 云服务器

前言

电子邮箱是我们日常生活中不可或缺的工具,平时用来注册各种服务、接收通知,或者跟朋友同事沟通。如果你是企业或者自己运营网站的用户,通过域名邮箱还能帮你发送专业邮件,展示品牌形象。

对于普通人来说,邮箱里往往存着不少个人信息,比如 Gmail 或 QQ 邮箱,可能会关联到你的真实身份。所以,在注册一些不常用的服务时,用临时邮箱/域名邮箱是个很不错的选择,能同时保护你的隐私,降低个人信息泄露的风险。

这篇教程会从理论到实操让你全方面认识域名邮箱,笔者会借助 Cloudflare 和 Resend 等免费工具,让你轻松实现无限邮箱和临时邮箱的功能。无论是想保护隐私,还是想增加点专业感,这套方法都即简单又省钱!

P1:理论扩展

在实操之前,了解域名邮箱、无限邮箱和临时邮箱的理论基础能帮助我们更好地理解其应用场景、原理和潜在价值。以下从多个维度展开,涵盖技术、隐私保护、商业应用以及可能的限制,帮助建立邮箱的认知。

域名邮箱 VS 常规邮箱

域名邮箱

优势
  1. 品牌化与专业性:域名邮箱后缀基于你的专属域名(如 service@yourdomain.com),相比常规邮箱(如 @gmail.com),更能体现专业性和品牌形象。例如,support@tencent.comnoreply@accounts.google.com 都是通过域名邮箱实现的自动化通知或客服邮件。
  2. 高度自定义与扩展性:通过设置子域名,你可以创建几乎无限的邮箱地址。例如,购买域名 mh33.top 后,可设置子域名如 smtp.mh33.top、support.mh33.top、shop.mh33.top,并为每个子域名配置独立的邮箱地址。这种灵活性非常适合不同业务场景(如客服、营销、通知等)。
  3. 隐私保护:域名邮箱可以与常规邮箱绑定,通过转发机制接收邮件,避免暴露真实邮箱地址。结合临时邮箱功能,还能进一步降低隐私泄露风险。
劣势
  1. 技术门槛:设置域名邮箱需要一定的 DNS 管理知识(如 MX 记录、SPF、DKIM 等),虽然现在有很多平台支持简易配置,但对非科班人员来说,还是具备一定门槛。
  2. 成本问题::虽然可以以非常低廉的价格购买到一个域名,但好的域名通常需要花更高的价格,并且续费价格也并非一成不变。

常规邮箱

优势
  1. 简单易用:Gmail、QQ 邮箱、Outlook 等常规邮箱无需额外配置,注册即用,日常冲浪必备。
  2. 功能丰富:常规邮箱通常提供日历、云存储、过滤器等集成功能,生态系统完善。
  3. 高可靠性:由大公司(如谷歌、腾讯、微软)提供,服务器稳定,安全性较高。
  4. 低成本:比较热门的邮箱都是免费注册的。
劣势
  1. 隐私问题:常规邮箱往往与真实身份绑定(如手机号码),在注册不信任的服务时可能增加隐私泄露风险。
  2. 缺乏专业感:免费邮箱后缀(如 @gmail.com)在商业场景中可能显得不够正式,同时无法注册组织形的机构。
  3. 扩展性有限:无法像域名邮箱一样通过子域名实现灵活的邮箱地址扩展。

\_

图对比

DNS 解析:MX 记录

MX 记录(Mail Exchange 记录) 是域名系统(DNS)中用于指定邮件服务器的关键记录,决定了邮件如何路由到你的域名邮箱。

MX 转发流程

以@gmail.com来举例子,当你使用任何邮箱向 [target]@gmail.com 发邮件时,由于 SMTP、IMAP 等邮件协议底层依然是 TCP/IP,所以首先会进行一次 DNS 查询,以 window nslookup 命令为例子(此命令通常用来查 DNS 信息)。

ps:此命令跟浏览器的chrome://net-internals/#dns使用范围不一致
λ nslookup -type=mx gmail.com
服务器:  UnKnown
Address:  192.168.124.1

非权威应答:
gmail.com       MX preference = 30, mail exchanger = alt3.gmail-smtp-in.l.google.com
gmail.com       MX preference = 20, mail exchanger = alt2.gmail-smtp-in.l.google.com
gmail.com       MX preference = 10, mail exchanger = alt1.gmail-smtp-in.l.google.com
gmail.com       MX preference = 5, mail exchanger = gmail-smtp-in.l.google.com
gmail.com       MX preference = 40, mail exchanger = alt4.gmail-smtp-in.l.google.com

gmail.com       nameserver = ns4.google.com
gmail.com       nameserver = ns3.google.com
gmail.com       nameserver = ns2.google.com
gmail.com       nameserver = ns1.google.com
alt2.gmail-smtp-in.l.google.com internet address = 142.251.190.26
alt1.gmail-smtp-in.l.google.com internet address = 142.250.141.27
gmail-smtp-in.l.google.com      internet address = 74.125.199.26
ns2.google.com  internet address = 216.239.34.10
ns1.google.com  internet address = 216.239.32.10
ns3.google.com  internet address = 216.239.36.10
ns4.google.com  internet address = 216.239.38.10
gmail-smtp-in.l.google.com      AAAA IPv6 address = 2404:6800:4008:c13::1b
ns2.google.com  AAAA IPv6 address = 2001:4860:4802:34::a
ns1.google.com  AAAA IPv6 address = 2001:4860:4802:32::a
ns3.google.com  AAAA IPv6 address = 2001:4860:4802:36::a
ns4.google.com  AAAA IPv6 address = 2001:4860:4802:38::a

可以看到 Gmail 的 DNS 记录信息,其中的mail exchanger 信息就是告诉发件方要发送到哪的记录。在这个例子中,常规情况下会优先发送到 gmail-smtp-in.l.google.com(IP 为 74.125.199.26 的邮件服务器),优先级为 5,是所有 MX 记录中最低的(优先级数字越小,优先级越高)。发送端口通常为 25(SMTP 标准端口),用于无加密传输,或 587(TLS 加密) 和 465(SSL 加密),用于安全传输。

SMTP 请求体结构

发邮件都是用的 SMTP,而 SMTP 的请求体本质上是邮件的MIME 结构 Multipurpose Internet Mail Extensions,遵循 RFC 2045,包含以下核心部分:

信头(Headers):
From: 发件人地址,如 user@yourdomain.com(必填,标识发件人)。
To: 收件人地址,如 target@gmail.com(必填,标识主要收件人)。
Cc: 抄送地址,如 cc@example.com(可选,公开抄送)。
Bcc: 密送地址,如 bcc@example.com(可选,隐藏抄送)。
Subject: 邮件主题,如 测试邮件(建议填写,增强可读性)。
Date: 发送时间,如 Sat, 24 May 2025 13:15:00 +0900(通常自动生成)。
Message-ID: 邮件唯一标识,如 <123456789@yourdomain.com>(由客户端或服务器生成)。
MIME-Version: MIME 版本,通常为 1.0(声明 MIME 格式)。
Content-Type: 内容类型,如 text/plain(纯文本)、text/html(HTML 格式)、multipart/mixed(含附件)。
Content-Transfer-Encoding: 编码方式,如 7bit(ASCII 文本)、quoted-printable(特殊字符)、base64(附件或非 ASCII 内容)。

正文(Body):
- 纯文本格式:如 "您好,这是一封测试邮件!"。
- HTML 格式:如 "<h1>您好</h1><p>这是一封测试邮件!</p>"。
- 含附件:使用 MIME 分隔符(如 --boundary123)分隔正文和附件,附件以 base64 编码。

真实 SMTP 请求例子

以 mh33.top 发送,和 gmail 接收举例子

From: user@mh33.top
To: target@gmail.com
Subject: 测试域名邮箱
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="boundary123"
Date: Sat, 24 May 2025 13:15:00 +0900
Message-ID: <20250524131500.123@mh33.top>

--boundary123
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

您好,这是一封来自 mh33.top 的测试邮件,附件中包含一张图片。

--boundary123
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit

<h1>欢迎体验域名邮箱</h1>
<p>这是一封来自 <b>mh33.top</b> 的测试邮件,附件中包含一张图片。</p>

--boundary123
Content-Type: image/png; name="test.png"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.png"

[base64 编码的图片数据]
--boundary123--
.

\_
图例

接收方接受到 SMTP 请求数据后,后面无论是渲染到对应页面,还是转发给别的邮箱,都取决于实现细节了。

如果对实现发送接收邮件服务器有兴趣,可以看下相关开源项目的实现.

Maddy:✅ 单二进制(Go 语言编写),无需复杂依赖,同时支持 Docker

Mailu:✅ 基于 Docker,一键部署 SMTP+IMAP

临时邮箱

通过以上分析,解释了域名邮箱的原理,其实临时邮箱的实现逻辑也随之清晰。因为可以无限扩展子域名,同时域名可以生成无限前缀,所以临时邮箱本质上是域名邮箱的一种应用方式

P2:实操

步骤一:购买域名

ps:如果已经有域名,直接跳转到步骤二

本次案例我们以腾讯云的域名为案例,如果还没注册,可以走笔者链接https://curl.qcloud.com/YpwnVJlS

登录后,直接进入
购买链接(https://cloud.tencent.com/act/pro/domain-sales?from=19178)。

域名选购页面,选择这个决定了你后续邮件的后缀

由于是测试,我们随便买个一块钱一年的域名做例子,购买后进入
管理页面(https://console.cloud.tencent.com/domain/all-domain/all)

域名管理页面

这是域名购买后默认的状态,其他国内厂家也大差不差。

进入这个页面后,开始步骤二

步骤二:将域名挂载到 cloudflare

进入 cloudflare 账户主页,点击添加域

输入腾讯云那边买的域名,其他配置默认即可

选择免费计划

然后点击继续前往激活

到达这个页面后,复制你页面中第三点对应的服务地址,后面会用到,然后切换回步骤一腾讯云的管理页面(https://console.cloud.tencent.com/domain/all-domain/all)

图片中的第一点在本次案例中就是腾讯云,第二点DNS SEC大部分国内厂家默认是不开的,所以不用管

我们直接点击操作栏的更多-> 修改 DNS 服务器

这里的 DNS 服务器在 CloudFlare 那边的中文站点叫做名称服务器,我们需要将原本云服务的 dns 解析替换成上面 cloudflare 给的 dns 服务进行解析

域名管理页面操作菜单

点击自定义 DNS,随后将上面 cloudflare 提供的 dns 服务复制进去,点击提交即可。

自定义dns解析服务地址

随后回到 cloudflare 页面点击继续,可以看到左上角状态显示名称服务器无效,等待即可。

等待大约几十分钟到一小时后会收到一封这样描述的邮件,也就是绑定成功了。

我们刷新 cloudflare 的页面可以看到域名左上角状态已经变成了活动。

到此我们已经成功将域名解析服务从腾讯云转移到 cloudflare。

步骤三:启动 cloudflare 电子邮件服务

进入 cloudflare 电子路由面板,点击开始使用

cloudflare电子邮件默认面板

目标位置,即是实际接收的邮箱账号,此地址不可自举,推荐使用@qq.com、@gmail.com、@outlook.com 等等常规地址测试

cloudflare电子邮件填写过程

ps: cloudflare 常规情况下一个邮箱只被一个域名绑定

接收到cloudflare验证邮件

验证完后,我们刷新 cloudflare 页面,点击启用电子邮件路由

配置 Catch-ALl 规则后,所有发送到这个@mhss.email 的域名都会被你接收到

Catch-All规则

到此,已经可以实现 test@mhss.email 的接收邮件

步骤四:使用域名邮箱发送邮件

支持发送邮件的网站有很多,甚至我们可以自己搭建邮件转发服务,但搭建流程篇幅过长,我们挑一个免费的,使用resend 网站来做测试(https://resend.com/domains),进入网站后,点击Add Domain

resend官网

输入你的域名,然后点击确认按钮

绑定域名过程

等待检测状态变绿,点击sign in to cloudflare

绑定域名过程2

出现授权弹窗后,点击授权按钮

授权过程

随后会跳转到检测状态页面,等待几分钟状态变绿即可

resend绑定完成,等待dns缓存更新

到这一步已经完全配置好邮箱的收发功能了!

dns记录绑定完成,发邮件功能完成

我们可以用 resend 官方的发送功能测试一下,首先点击左侧Audience菜单,也就是绑定联系人(官网用得绑定联系人,API 版本不用)

添加收件联系人

在弹窗内输入你想要发送的邮箱地址

填写收件联系人

随后点击左侧菜单Broadcasts,填写对应信息

发邮件编辑

进入接收邮箱,可以看到刚才发送的内容

接收到域名邮箱发送的邮件

本文由mdnice多平台发布


三_清
113 声望1 粉丝