DNS 配置 #

DNS 基础 #

什么是 DNS? #

DNS(Domain Name System)是将域名转换为 IP 地址的系统:

text
┌──────────────────────────────────────────────────────┐
│                                                      │
│  用户输入域名                                        │
│       │                                              │
│       ▼                                              │
│  ┌─────────┐                                         │
│  │ DNS 查询 │                                        │
│  └────┬────┘                                         │
│       │                                              │
│       ▼                                              │
│  ┌─────────┐                                         │
│  │ 返回 IP  │  →  76.76.21.21                        │
│  └────┬────┘                                         │
│       │                                              │
│       ▼                                              │
│  ┌─────────┐                                         │
│  │ 访问网站 │                                        │
│  └─────────┘                                         │
│                                                      │
└──────────────────────────────────────────────────────┘

DNS 记录类型 #

类型 用途 示例
A 指向 IPv4 地址 @ → 76.76.21.21
AAAA 指向 IPv6 地址 @ → 2606:4700::1
CNAME 指向另一个域名 www → cname.vercel-dns.com
TXT 文本记录 _vercel → vc-domain-verify=xxx
MX 邮件服务器 @ → mail.example.com
NS 域名服务器 @ → ns1.vercel-dns.com

Vercel DNS 配置 #

Vercel DNS 服务器 #

text
ns1.vercel-dns.com
ns2.vercel-dns.com

两种配置方式 #

text
┌─────────────────────────────────────────┐
│        DNS 配置方式                      │
├─────────────────────────────────────────┤
│  方式一:修改 Nameservers               │
│  → 将域名 DNS 完全托管给 Vercel          │
│                                         │
│  方式二:添加 DNS 记录                   │
│  → 在原 DNS 服务商添加记录指向 Vercel    │
└─────────────────────────────────────────┘

方式一:Nameservers 配置 #

适用场景 #

  • 希望完全托管 DNS
  • 需要使用 Vercel 的 DNS 功能
  • 简化 DNS 管理

配置步骤 #

1. 获取 Nameservers

text
Project Settings → Domains → Nameservers
text
┌─────────────────────────────────────────┐
│  Nameservers                            │
├─────────────────────────────────────────┤
│  ns1.vercel-dns.com                     │
│  ns2.vercel-dns.com                     │
└─────────────────────────────────────────┘

2. 修改域名注册商设置

以阿里云为例:

text
域名管理 → 域名列表 → 管理 → DNS 修改
├── DNS 服务器 1: ns1.vercel-dns.com
└── DNS 服务器 2: ns2.vercel-dns.com

3. 等待生效

text
DNS 传播时间:通常 24-48 小时
实际生效时间:通常 1-2 小时

验证配置 #

bash
dig example.com NS
text
;; ANSWER SECTION:
example.com.    3600    IN    NS    ns1.vercel-dns.com.
example.com.    3600    IN    NS    ns2.vercel-dns.com.

方式二:DNS 记录配置 #

顶级域名配置 #

A 记录:

text
类型: A
主机记录: @
记录值: 76.76.21.21
TTL: 3600

AAAA 记录(IPv6):

text
类型: AAAA
主机记录: @
记录值: 2606:4700:3033::6815:1a01
TTL: 3600

子域名配置 #

CNAME 记录:

text
类型: CNAME
主机记录: www
记录值: cname.vercel-dns.com
TTL: 3600

验证记录配置 #

A 记录验证:

bash
dig example.com A
text
;; ANSWER SECTION:
example.com.    3600    IN    A    76.76.21.21

CNAME 记录验证:

bash
dig www.example.com CNAME
text
;; ANSWER SECTION:
www.example.com.    3600    IN    CNAME    cname.vercel-dns.com.

各平台配置指南 #

Cloudflare #

text
┌─────────────────────────────────────────┐
│  Cloudflare DNS 配置                    │
├─────────────────────────────────────────┤
│  重要:关闭代理(灰色云朵)              │
│                                         │
│  类型    名称    内容              代理  │
│  A       @       76.76.21.21       关闭  │
│  CNAME   www     cname.vercel-dns.com 关闭│
└─────────────────────────────────────────┘

SSL/TLS 设置:

text
SSL/TLS → 加密模式 → 完全(严格)

阿里云 #

text
┌─────────────────────────────────────────┐
│  阿里云 DNS 配置                        │
├─────────────────────────────────────────┤
│  记录类型    主机记录    记录值          │
│  A           @          76.76.21.21     │
│  CNAME       www        cname.vercel-dns.com
└─────────────────────────────────────────┘

腾讯云 DNSPod #

text
┌─────────────────────────────────────────┐
│  DNSPod 配置                            │
├─────────────────────────────────────────┤
│  记录类型    主机记录    记录值          │
│  A           @          76.76.21.21     │
│  CNAME       www        cname.vercel-dns.com
└─────────────────────────────────────────┘

Namecheap #

text
┌─────────────────────────────────────────┐
│  Namecheap DNS 配置                     │
├─────────────────────────────────────────┤
│  Type    Host    Value                  │
│  A       @       76.76.21.21            │
│  CNAME   www     cname.vercel-dns.com   │
└─────────────────────────────────────────┘

GoDaddy #

text
┌─────────────────────────────────────────┐
│  GoDaddy DNS 配置                       │
├─────────────────────────────────────────┤
│  类型    名称    值                     │
│  A       @       76.76.21.21            │
│  CNAME   www     cname.vercel-dns.com   │
└─────────────────────────────────────────┘

DNS 传播 #

检查传播状态 #

在线工具:

命令行检查:

bash
dig example.com @8.8.8.8
dig example.com @1.1.1.1

加速传播 #

text
┌─────────────────────────────────────────┐
│        加速 DNS 传播                    │
├─────────────────────────────────────────┤
│  1. 降低 TTL 值(修改前)               │
│  2. 等待原 TTL 过期                     │
│  3. 修改 DNS 记录                       │
│  4. 等待新配置生效                      │
└─────────────────────────────────────────┘

TTL 设置 #

TTL 值建议 #

场景 建议 TTL
稳定配置 3600(1小时)或更长
即将变更 300(5分钟)
调试阶段 60(1分钟)

TTL 影响 #

text
TTL 过短:
├── 优点:变更快速生效
└── 缺点:增加 DNS 查询量

TTL 过长:
├── 优点:减少 DNS 查询量
└── 缺点:变更生效慢

常见问题排查 #

域名无法访问 #

排查步骤:

bash
1. 检查 DNS 解析
dig example.com

2. 检查域名状态
vercel domains inspect example.com

3. 检查 DNS 传播
# 使用在线工具检查全球传播状态

4. 检查防火墙
# 确保没有阻止 Vercel IP

CNAME 与其他记录冲突 #

text
问题:CNAME 不能与其他记录共存

解决方案:
├── 使用 A 记录代替 CNAME
├── 使用 ALIAS/ANAME 记录(如果支持)
└── 分离邮件服务到子域名

Cloudflare 代理问题 #

text
问题:开启代理后无法访问

解决方案:
├── 关闭 Cloudflare 代理(灰色云朵)
├── 或正确配置 SSL 模式
└── 或使用 Cloudflare Workers

DNS 缓存问题 #

清除本地缓存:

bash
macOS:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder

Windows:
ipconfig /flushdns

Linux:
sudo systemd-resolve --flush-caches

清除浏览器缓存:

text
Chrome: chrome://net-internals/#dns
Firefox: about:networking#dns

DNS 安全 #

DNSSEC #

text
┌─────────────────────────────────────────┐
│  DNSSEC 配置                            │
├─────────────────────────────────────────┤
│  1. 在域名注册商启用 DNSSEC             │
│  2. 获取 DS 记录                        │
│  3. 配置到 Vercel                       │
└─────────────────────────────────────────┘

防止 DNS 劫持 #

text
最佳实践:
├── 启用域名锁定
├── 启用双因素认证
├── 定期检查 DNS 记录
└── 使用 DNSSEC

下一步 #

DNS 配置完成后,接下来学习 SSL 证书管理 了解 HTTPS 配置!

最后更新:2026-03-28