跳到主要内容

邮件路由

Cloudflare Email Routing 是一项免费的邮件转发服务,可以将发送到自定义域名的邮件转发到你的个人邮箱。无需搭建邮件服务器,即可拥有专业的域名邮箱地址。

什么是 Email Routing?

功能概述

Email Routing 允许你创建自定义邮箱地址(如 [email protected]),并将收到的邮件转发到你的个人邮箱(如 Gmail、Outlook 等)。

核心特点

特点说明
完全免费无需付费,无限转发
无需邮件服务器Cloudflare 处理所有转发
自定义地址创建任意前缀的邮箱地址
支持多目的地转发到多个邮箱
与 Workers 集成使用代码处理邮件

与传统邮件服务的区别

功能Email Routing传统邮件服务
接收邮件✅ 支持✅ 支持
发送邮件❌ 不支持✅ 支持
存储空间❌ 无存储✅ 有存储
费用免费通常付费
配置难度简单复杂

适用场景

  • 需要专业的域名邮箱地址
  • 不需要发送邮件(或通过其他服务发送)
  • 希望节省邮件服务费用
  • 个人网站、博客、小型项目

启用 Email Routing

前提条件

  • 域名已添加到 Cloudflare
  • 域名状态为 Active
  • 拥有域名管理权限

步骤一:进入 Email Routing

  1. 登录 Cloudflare 控制台
  2. 选择你的域名
  3. 点击左侧菜单 "Email" → "Email Routing"

步骤二:启用服务

首次访问会看到设置向导:

  1. 查看将要添加的 DNS 记录
  2. 点击 "Add records and enable"

Cloudflare 会自动添加以下记录

类型: MX
名称: @
内容: route1.mx.cloudflare.net
优先级: 10

类型: MX
名称: @
内容: route2.mx.cloudflare.net
优先级: 20

类型: TXT
名称: @
内容: v=spf1 include:_spf.mx.cloudflare.net ~all

步骤三:创建转发规则

  1. 进入 "Routing rules" 标签页
  2. 在 "Custom addresses" 部分,点击 "Create address"
  3. 填写信息:
    • Custom address:自定义邮箱前缀(如 infocontactadmin
    • Destination:接收邮件的邮箱地址

示例配置

Custom address: info
Destination: [email protected]

这会创建 [email protected],邮件将转发到 [email protected]

步骤四:验证目标邮箱

Cloudflare 会发送验证邮件到目标邮箱:

  1. 打开目标邮箱
  2. 找到 Cloudflare 发送的验证邮件
  3. 点击 "Verify email address"
  4. 返回 Cloudflare 控制台

验证后,目标邮箱状态会显示 "Verified"。

步骤五:完成配置

点击 "Continue",然后点击 "Add records and finish"。

Email Routing 现已启用!

配置邮件规则

自定义地址规则

每个规则包含两部分:

  • 自定义地址:域名邮箱的前缀
  • 目标地址:接收转发的邮箱

创建多个规则

自定义地址目标地址用途
info[email protected]一般咨询
support[email protected]客户支持
admin[email protected]管理邮件
careers[email protected]招聘邮件

Catch-all 地址

Catch-all 会捕获所有发送到域名的邮件:

  1. 在 "Routing rules" 中找到 "Catch-all address"
  2. 点击 "Edit"
  3. 启用 Catch-all
  4. 设置目标地址

效果

注意:启用 Catch-all 可能会收到大量垃圾邮件。

地址别名

一个自定义地址可以转发到多个目标:

方法一:创建多个规则(推荐)

方法二:使用 Workers

创建 Workers 脚本处理邮件分发。

DNS 记录配置

自动配置的记录

启用 Email Routing 时,Cloudflare 自动添加:

MX 记录

类型: MX
名称: @
邮件服务器: route1.mx.cloudflare.net
优先级: 10

类型: MX
名称: @
邮件服务器: route2.mx.cloudflare.net
优先级: 20

SPF 记录

类型: TXT
名称: @
内容: v=spf1 include:_spf.mx.cloudflare.net ~all

手动配置(可选)

如果需要自定义配置,可以手动添加记录:

子域名邮件

类型: MX
名称: subdomain
邮件服务器: route1.mx.cloudflare.net
优先级: 10

这会启用 [email protected]

DKIM 记录

Cloudflare 会自动配置 DKIM,无需手动添加。

与现有邮件服务共存

场景:部分使用 Email Routing

如果已有邮件服务,只想部分使用 Email Routing:

方法一:使用子域名

主域名邮件 → 现有邮件服务器
子域名邮件 → Email Routing

方法二:选择性转发

保留现有 MX 记录,不启用 Email Routing 的自动配置。

场景:从其他服务迁移

从其他邮件服务迁移到 Email Routing:

  1. 导出现有邮件:从旧服务导出邮件
  2. 更新 MX 记录:删除旧 MX 记录,启用 Email Routing
  3. 创建转发规则:设置所有需要的地址
  4. 通知用户:告知邮件地址变更

发送邮件配置

Email Routing 只处理接收邮件,不提供发送功能。如需从域名邮箱发送邮件:

使用 Gmail 发送

  1. 登录 Gmail
  2. 进入 "设置" → "账号和导入"
  3. 点击 "用这个地址发送邮件"
  4. 添加域名邮箱地址
  5. 配置 SMTP 服务器

SMTP 配置

需要使用第三方 SMTP 服务:

  • SendGrid
  • Mailgun
  • Amazon SES
  • Google Workspace

使用第三方服务

服务免费额度特点
SendGrid100 封/天易于集成
Mailgun5000 封/月功能丰富
Amazon SES62000 封/月成本低
Brevo300 封/天界面友好

与 Workers 集成

使用 Workers 可以编程处理邮件:

创建 Email Worker

  1. 进入 "Email" → "Email Workers"
  2. 点击 "Create Worker"
  3. 编写处理代码

示例代码

export default {
async email(message, env, ctx) {
const { from, to, subject } = message;

// 记录邮件信息
console.log(`Received email from ${from} to ${to}`);

// 转发到目标邮箱
await message.forward("[email protected]");

// 或发送到 webhook
await fetch("https://your-webhook.com/email", {
method: "POST",
body: JSON.stringify({
from,
to,
subject,
}),
});
},
};

使用场景

  • 自动回复:根据发件人自动回复
  • 邮件分类:根据内容分发邮件
  • 垃圾邮件过滤:自定义过滤规则
  • 集成通知:发送到 Slack、Discord 等
  • 存储到数据库:保存邮件到 D1 或 KV

配置 Email Worker

  1. 创建 Worker
  2. 在 "Routing rules" 中选择 Worker 作为目标
  3. 保存配置

分析和日志

查看邮件统计

在 "Analytics" 标签页查看:

  • 收到的邮件数量
  • 转发成功率
  • 垃圾邮件拦截统计
  • 按地址分类的统计

查看日志

在 "Logs" 标签页查看:

  • 邮件处理记录
  • 转发状态
  • 错误信息

日志字段

字段说明
Timestamp处理时间
From发件人地址
To收件人地址
Subject邮件主题
Status处理状态
Action执行的操作

故障排除

邮件未收到

检查清单

  1. DNS 记录是否正确

    dig MX yourdomain.com

    应返回 Cloudflare 的 MX 记录。

  2. 目标邮箱是否验证: 在 Routing rules 中检查状态是否为 "Verified"。

  3. 检查垃圾邮件文件夹: 转发的邮件可能被标记为垃圾邮件。

  4. 检查 SPF 记录

    dig TXT yourdomain.com

    确认包含 Cloudflare 的 SPF 记录。

邮件延迟

邮件转发通常在几秒内完成,但可能因以下原因延迟:

  • DNS 传播延迟
  • 发件服务器延迟
  • Cloudflare 处理队列

与现有 MX 记录冲突

如果已有 MX 记录,启用 Email Routing 时需要:

  1. 删除现有 MX 记录,或
  2. 保留现有记录,Email Routing 不会生效

注意:一个域名不能同时使用两个邮件服务。

最佳实践

地址命名规范

推荐格式

地址用途
info@一般咨询
support@客户支持
admin@管理事务
careers@招聘
no-reply@通知邮件
webmaster@网站管理

安全建议

  1. 谨慎使用 Catch-all:可能收到大量垃圾邮件
  2. 定期检查转发:确保目标邮箱有效
  3. 监控异常流量:关注邮件统计
  4. 使用 SPF/DKIM:提高邮件可信度

隐私保护

  • 目标邮箱地址不会公开
  • WHOIS 显示 Cloudflare 信息
  • 邮件内容不会被存储

常见问题

Email Routing 支持多少个转发规则?

免费计划支持无限数量的转发规则。

可以转发到多个邮箱吗?

一个自定义地址只能转发到一个目标邮箱。如需转发到多个邮箱,使用 Workers 或创建多个规则。

支持附件吗?

支持。邮件附件会被一起转发。

邮件大小限制?

单封邮件最大 25MB。

可以禁用 Email Routing 吗?

可以。在设置中选择 "Disable Email Routing",DNS 记录会被移除。

参考资源

下一步

完成 Email Routing 配置后,你可以: