当您在辅助 zone 上设置传入 zone 传输时,默认情况下无法在任何已传输的 DNS 记录上启用代理。
使用 Secondary DNS override,您可以将 Cloudflare 用作辅助 DNS 提供商,同时仍获得 Cloudflare 代理的性能和安全优势。此外,它还允许您用 CNAME 记录覆盖 zone apex 上的任何 A 和 AAAA 记录。
在设置 Secondary DNS override 之前,请确保您已:
-
设置辅助 DNS zone 并确认 DNS 记录已正确传输。
-
将 DNSSEC with Secondary DNS(辅助 DNS 的 DNSSEC) ↗ 选项设为 Unsigned(未签名) 或 Live Signing(实时签名)。如果设为 Pre-signed(预签名),Cloudflare 会将所有 DNS 记录视为未代理(仅 DNS)。
-
从 registrar 移除除 Cloudflare 提供的 nameserver 以外的所有 nameserver(强烈建议)。
-
在 Cloudflare 仪表板中,前往 DNS Settings(DNS 设置) 页面。
Go to Settings ↗ -
启用 Secondary DNS override(辅助 DNS 覆盖)。
-
在 DNS Records(DNS 记录) ↗ 页面上,对于特定的 A、AAAA 或 CNAME 记录,选择灰色云图标,将其 Proxy status(代理状态) 设为 Proxied(已代理)。
- 要在 zone 上启用 Secondary DNS override,请使用以下 PATCH 请求:
Required API token permissions
At least one of the following token permissions is required:Zone DNS Settings WriteDNS Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_settings" \
--request PATCH \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"secondary_overrides": true
}'- 对于特定的 A、AAAA 或 CNAME 记录,发送 POST 请求,并将
proxied状态设为true。- 确保添加的记录与您打算代理的已传输记录具有相同的名称。Cloudflare 仅查看名称和代理状态,因此记录内容无关紧要。
代理(橙色云)辅助 DNS 记录后,该主机名下从主 DNS 提供商传输的任何其他记录都会自动被代理。这适用于该域名下的所有 A 和 AAAA 记录。
您还可以在 zone apex 上添加 CNAME 记录(通过 CNAME Flattening 支持),并代理该记录或将其保持为仅 DNS。
一旦在 apex 创建 CNAME 记录,zone apex 上现有的 A 或 AAAA 记录将被停用。您可以通过点击 View Inactive Records(查看未激活记录) 查看这些停用的记录。要重新激活根上的 A 或 AAAA 记录,请移除 CNAME 记录。
在已分配的辅助 DNS nameserver 上查询 DNS,以确认 Cloudflare 返回的 DNS 响应。由 Cloudflare 代理的记录会返回 Cloudflare IP ↗。