Route53 DNS服务 #
一、Route53概述 #
1.1 什么是Route53 #
Amazon Route53是AWS提供的高可用、可扩展的云DNS服务,用于域名注册、DNS解析和健康检查。
1.2 Route53特点 #
text
Route53核心特点:
├── 高可用
│ ├── 100%可用性SLA
│ └── 全球Anycast网络
│
├── 可扩展
│ └── 自动扩展处理查询
│
├── 低延迟
│ └── 全球边缘节点
│
├── 与AWS服务集成
│ ├── ELB
│ ├── CloudFront
│ └── S3
│
└── 路由策略
├── 简单路由
├── 加权路由
├── 延迟路由
├── 故障转移路由
├── 地理位置路由
└── 多值应答路由
二、托管区域 #
2.1 托管区域类型 #
text
托管区域类型:
├── 公有托管区域
│ ├── 解析互联网域名
│ └── 公开可访问
│
└── 私有托管区域
├── 解析VPC内域名
└── 仅VPC内可访问
2.2 创建托管区域 #
bash
aws route53 create-hosted-zone \
--name example.com \
--caller-reference "2024-01-01-001" \
--hosted-zone-config Comment="My hosted zone"
2.3 NS记录 #
text
NS记录配置:
├── 创建托管区域时自动生成
├── 需要在域名注册商处配置
├── 通常有4个名称服务器
└── 示例:
├── ns-1234.awsdns-12.com
├── ns-5678.awsdns-34.net
├── ns-9012.awsdns-56.org
└── ns-3456.awsdns-78.co.uk
三、记录类型 #
3.1 常用记录类型 #
| 类型 | 说明 |
|---|---|
| A | 将域名映射到IPv4地址 |
| AAAA | 将域名映射到IPv6地址 |
| CNAME | 将域名映射到另一个域名 |
| MX | 邮件交换记录 |
| TXT | 文本记录 |
| NS | 名称服务器记录 |
| SOA | 授权起始记录 |
| SRV | 服务记录 |
3.2 创建记录 #
bash
aws route53 change-resource-record-sets \
--hosted-zone-id Z1234567890ABC \
--change-batch '{
"Changes": [{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "www.example.com",
"Type": "A",
"TTL": 300,
"ResourceRecords": [{"Value": "192.0.2.1"}]
}
}]
}'
3.3 别名记录 #
text
别名记录特点:
├── Route53特有功能
├── 指向AWS资源
│ ├── ELB
│ ├── CloudFront
│ ├── S3网站
│ └── 其他Route53记录
│
├── 无额外费用
├── 自动更新IP
└── 不支持CNAME的根域名
bash
aws route53 change-resource-record-sets \
--hosted-zone-id Z1234567890ABC \
--change-batch '{
"Changes": [{
"Action": "CREATE",
"ResourceRecordSet": {
"Name": "example.com",
"Type": "A",
"AliasTarget": {
"HostedZoneId": Z215JYRZR1TBD5,
"DNSName": "my-elb-123456.us-east-1.elb.amazonaws.com",
"EvaluateTargetHealth": true
}
}
}]
}'
四、路由策略 #
4.1 简单路由 #
text
简单路由特点:
├── 默认路由策略
├── 单一资源
├── 无健康检查
└── 适用:单一服务器
4.2 加权路由 #
text
加权路由特点:
├── 按权重分配流量
├── 可用于A/B测试
├── 渐进式部署
└── 适用:多版本部署
json
{
"Name": "www.example.com",
"Type": "A",
"SetIdentifier": "web-server-1",
"Weight": 70,
"ResourceRecords": [{"Value": "192.0.2.1"}]
}
4.3 延迟路由 #
text
延迟路由特点:
├── 根据延迟路由到最近区域
├── 提升用户体验
├── 需要多区域部署
└── 适用:全球应用
json
{
"Name": "www.example.com",
"Type": "A",
"SetIdentifier": "us-east",
"Region": "us-east-1",
"ResourceRecords": [{"Value": "192.0.2.1"}]
}
4.4 故障转移路由 #
text
故障转移路由特点:
├── 主备切换
├── 需要健康检查
├── 自动故障转移
└── 适用:高可用架构
json
{
"Name": "www.example.com",
"Type": "A",
"SetIdentifier": "primary",
"Failover": "PRIMARY",
"HealthCheckId": "12345678-1234-1234-1234-123456789012",
"ResourceRecords": [{"Value": "192.0.2.1"}]
}
4.5 地理位置路由 #
text
地理位置路由特点:
├── 根据用户位置路由
├── 可按国家或大洲
├── 合规要求
└── 适用:本地化内容
json
{
"Name": "www.example.com",
"Type": "A",
"SetIdentifier": "asia",
"GeoLocation": {
"ContinentCode": "AS"
},
"ResourceRecords": [{"Value": "192.0.2.2"}]
}
4.6 多值应答路由 #
text
多值应答路由特点:
├── 返回多个IP地址
├── 客户端随机选择
├── 支持健康检查
└── 适用:简单负载均衡
五、健康检查 #
5.1 健康检查类型 #
text
健康检查类型:
├── 端点监控
│ ├── HTTP/HTTPS
│ ├── TCP
│ └── HTTP状态码检查
│
├── 计算健康检查
│ └── 组合多个健康检查
│
└── CloudWatch告警
└── 基于CloudWatch指标
5.2 创建健康检查 #
bash
aws route53 create-health-check \
--caller-reference "2024-01-01-001" \
--health-check-config '{
"IPAddress": "192.0.2.1",
"Port": 80,
"Type": "HTTP",
"ResourcePath": "/health",
"RequestInterval": 30,
"FailureThreshold": 3
}'
5.3 健康检查配置 #
text
健康检查配置项:
├── 协议:HTTP/HTTPS/TCP
├── 端口
├── 路径(HTTP/HTTPS)
├── 检查间隔:10秒或30秒
├── 失败阈值:1-10次
├── 预期状态码
└── 预期响应体
5.4 健康检查监控 #
text
监控指标:
├── HealthCheckStatus
├── HealthCheckPercentageHealthy
├── ConnectionTime
├── SSLHandshakeTime
└── TimeToFirstByte
六、域名注册 #
6.1 注册域名 #
text
域名注册步骤:
├── 搜索可用域名
├── 添加到购物车
├── 配置联系人信息
├── 选择注册期限
├── 启用隐私保护(可选)
└── 完成注册
6.2 域名转移 #
text
域名转移步骤:
├── 解锁域名
├── 获取转移码
├── 在Route53发起转移
├── 确认转移
└── 等待完成(最多5天)
6.3 域名续费 #
text
域名续费:
├── 自动续费
├── 手动续费
├── 注册期限:1-10年
└── 到期提醒
七、私有DNS #
7.1 私有托管区域 #
bash
aws route53 create-hosted-zone \
--name internal.example.com \
--caller-reference "2024-01-01-001" \
--vpc VPCRegion=us-east-1,VPCId=vpc-12345678 \
--hosted-zone-config PrivateZone=true
7.2 关联VPC #
bash
aws route53 associate-vpc-with-hosted-zone \
--hosted-zone-id Z1234567890ABC \
--vpc VPCRegion=us-east-1,VPCId=vpc-12345678
7.3 私有DNS使用场景 #
text
私有DNS使用场景:
├── 内部服务发现
├── 微服务通信
├── 数据库访问
├── 内部API
└── 简化配置管理
八、Route53最佳实践 #
8.1 性能优化 #
text
性能建议:
├── 使用别名记录
├── 合理设置TTL
├── 使用延迟路由优化体验
├── 启用健康检查
└── 使用私有DNS减少延迟
8.2 安全建议 #
text
安全建议:
├── 启用DNSSEC
├── 使用私有DNS保护内部服务
├── 限制API访问
├── 监控异常DNS查询
└── 启用查询日志
8.3 高可用建议 #
text
高可用建议:
├── 使用故障转移路由
├── 配置健康检查
├── 多区域部署
├── 设置合理的TTL
└── 监控DNS解析状态
九、小结 #
本章介绍了Route53 DNS服务:
| 内容 | 要点 |
|---|---|
| 托管区域 | 公有和私有托管区域 |
| 记录类型 | A、CNAME、MX等 |
| 路由策略 | 简单、加权、延迟、故障转移等 |
| 健康检查 | 监控端点健康状态 |
| 私有DNS | VPC内域名解析 |
下一步学习 #
了解Route53后,接下来可以:
- CloudFront CDN - 学习CDN服务
- Web应用部署 - 实践DNS配置
- 安全最佳实践 - 学习安全配置
最后更新:2026-03-28