六维教程

邮件路由基础

自有域名除了用来建网站、收发业务邮件也是常见需求。不想自己搭邮件服务器,又想用上 hi@yourdomain.com 这种带品牌后缀的地址,Cloudflare Email Routing 就是为这个场景准备的。它是 Cloudflare 提供的邮件路由服务,免费、零运维,把发到你域名的邮件转发到你已有的邮箱里。这篇先把基础概念和配置流程讲透,编程式处理留到下一篇。

Email Routing 解决什么问题

自己搭邮件服务器要面对几座大山

痛点 说明
配置复杂 MX、SPF、DKIM、DMARC 一堆 DNS 记录要配,错一条就收不到
易进垃圾箱 自建 IP 信誉低,发出去的邮件经常被 Gmail 直接拒收
维护成本 要打补丁、防爆破、清队列、监控可用性
反垃圾差 自带反垃圾能力弱,要再装 SpamAssassin 之类的工具
不能丢 邮件丢失是事故,备份和高可用都得自己上

Email Routing 把这些全包了。它不存邮件、不发邮件,只做一件事,接到发往你域名的邮件后按规则转发到你的真实邮箱。等于在你域名和真实邮箱之间加了一层智能转发器。

与传统邮件服务的区别

对比项 自建邮件服务器 Email Routing 第三方邮箱服务(Gmail Workspace)
收件 自己接收并存储 接收后转发到你的目标邮箱 接收并存储
发件 支持 不支持,仅入站 支持
存储空间 取决于你的服务器 不存储,转发即丢 平台提供
配置难度 低,自动配 DNS
费用 服务器费用 免费 按用户付费
适合场景 大型企业、特殊合规 个人、小团队、品牌邮箱 企业日常办公

关键差异是 Email Routing 只做入站转发,不存不发。如果你需要发件,要么用 Gmail Workspace、腾讯企业邮这类,要么用 Resend、Mailgun 这类事务邮件服务,Email Routing 不能担此任。

域名邮件接收原理

邮件接收依赖 DNS 里的 MX 记录。MX 记录告诉发件服务器,发往本域名的邮件该往哪个主机投递

你的域名 example.com
  MX 记录: route1.mx.cloudflare.net 优先级 13
  MX 记录: route2.mx.cloudflare.net 优先级 38
  MX 记录: route3.mx.cloudflare.net 优先级 90

启用 Email Routing 时 Cloudflare 会自动写入这三条 MX 记录,指向它的接收服务器。外部邮件服务器发邮件时会按优先级从小到大尝试,优先级小的优先。

除了 MX,还要配 SPF 和 DKIM 两条记录防伪造。SPF 声明哪些 IP 可以代表本域名发件,DKIM 用密钥签名让收件方验证邮件完整性。这两条 Cloudflare 也会自动配好,不用手动操作。

完整启用后 DNS 记录长这样

记录类型 名称 作用
MX example.com route1.mx.cloudflare.net 优先级 13 邮件投递入口
MX example.com route2.mx.cloudflare.net 优先级 38 备用入口
MX example.com route3.mx.cloudflare.net 优先级 90 兜底入口
TXT example.com v=spf1 include:_spf.mx.cloudflare.net ~all SPF 防伪造
TXT _dmarc.example.com v=DMARC1; p=none; DMARC 投递策略

目标地址验证

Email Routing 不能随便把邮件转发到任意邮箱,否则会被利用来发垃圾邮件。每个目标地址要先验证所有权。

流程是这样

步骤 操作方 动作
第一步 在控制台添加 destination address,比如 your@gmail.com
第二步 Cloudflare 发一封验证邮件到这个地址
第三步 在邮箱里点验证链接
第四步 Cloudflare 标记该地址为已验证,可以用于转发规则

验证一次永久有效,除非你主动删除。一个目标地址验证后可以用在多条转发规则里,不必重复验证。

转发规则

转发规则是 Email Routing 的核心。每条规则定义一个收件地址到一个目标地址的映射

规则字段 说明
自定义地址 发到你域名的邮箱,比如 hi@example.com
操作 转发到已验证地址,或丢弃,或交由 Worker 处理
目标地址 转发操作时填,必须是已验证的真实邮箱
启用状态 可临时禁用某条规则而不删除

举几个典型规则

自定义地址 操作 目标地址 用途
hi@example.com 转发 founder@gmail.com 品牌客服邮箱
hr@example.com 转发 hr-team@gmail.com 招聘邮箱
billing@example.com 转发 finance@163.com 财务邮箱
spam@example.com 丢弃 故意暴露给爬虫吸垃圾
support@example.com Worker 处理 自动化工单系统

最后一条 Worker 处理是进阶用法,下一篇专门讲,这里先记着有这个能力。

Catch-all 规则

不可能为每个可能的邮箱名都配一条规则,比如有人发到 typo@example.com 这种没配过的地址怎么办。Catch-all 是兜底规则,所有没匹配上具体规则的邮件都走它。

Catch-all 的操作和普通规则一样,可以转发、丢弃或交 Worker 处理。常见策略

策略 操作 适合场景
全部转发 转发到一个汇总邮箱 个人域名,不想漏掉任何邮件
全部丢弃 丢弃 只用具体地址,其余视为垃圾
Worker 处理 调用 Worker 智能分类、按收件人自动分发

个人用域名建议全部转发到一个汇总邮箱,省心。企业场景更适合 Worker 处理做智能分发。

配置流程

完整启用 Email Routing 的步骤

第一步,域名已托管在 Cloudflare。如果域名 DNS 不在 Cloudflare,要先迁移 NS 记录过来,Email Routing 只服务于 Cloudflare 管理的域名。

第二步,控制台进入域名,左侧菜单找 Email > Email Routing。首次进入会引导你启用。

第三步,添加目标地址并完成验证。先把要用作转发目标的真实邮箱加进去收验证邮件。

第四步,Cloudflare 自动写入 MX、SPF、DKIM 记录。如果你的域名原本配过其他 MX 记录,比如之前用过 Google Workspace,会冲突,要先决定是否覆盖。

第五步,创建转发规则。从简单的开始,先加一两条业务地址试水。

第六步,设置 Catch-all。建议初期设为全部转发到一个汇总邮箱,跑稳后再调整。

验证是否生效

用一个外部邮箱发测试邮件到你配置的自定义地址,几秒内目标邮箱就该收到。如果收不到,按顺序排查

排查项 方法
MX 记录是否生效 dig example.com MX 看是否返回 route1.mx.cloudflare.net
SPF 记录 dig example.com TXT 看是否包含 _spf.mx.cloudflare.net
目标地址已验证 控制台看目标地址列表是否有 verified 标记
规则是否启用 控制台看规则状态是否为 active
是否被目标邮箱拒收 检查目标邮箱的垃圾箱,Gmail 偶尔会误判

最常见的问题就是目标邮箱把转发邮件判为垃圾邮件,因为转发会改变邮件头,触发部分反垃圾规则。把转发地址加进联系人能解决大部分情况。

几个使用建议

第一,自定义地址命名要稳定。一旦把 hi@example.com 印到名片和官网上,就不要随便改,转发目标可以换但地址本身尽量固定。

第二,敏感邮箱慎用 Catch-all 转发。如果汇总邮箱是个人主邮箱,Catch-all 会把所有垃圾邮件也倒进来。建议 Catch-all 单独转到一个能定期清空的辅助邮箱。

第三,发件问题别找 Email Routing。它只管收不管发,业务系统要发验证码、通知邮件请用专门的事务邮件服务,不要试图用 Email Routing 解决。

第四,规则数量没有硬上限但建议保持精简。规则一多维护成本上升,定期清理过期规则。

小结

Email Routing 是自有域名邮件接收的轻量方案,免费、零运维、配置简单。核心三件事,MX 记录让外部邮件能投到 Cloudflare、目标地址验证防滥用、转发规则定义邮件去向。Catch-all 兜底所有未匹配的邮件。它只做入站转发,不存不发,发件要靠别的服务。下一篇讲怎么用 Email Workers 把转发规则升级为编程式处理,让邮件能触发业务逻辑。

下一篇 Email Workers 处理邮件

下一篇
Email Workers 处理邮件