Lightsail CDN 支持 IPv6-only 源站:小成本建站也能全球加速了

前两天在 Lightsail 上跑了个博客站点,选的 IPv6-only 实例——便宜嘛,月费比双栈的低一截。结果要配 CDN 的时候发现不支持 IPv6-only 源站,只能手动加个 Nginx 反代再套一层。折腾。

现在好了,亚马逊云科技刚更新了 Lightsail CDN distributions 支持 IPv6-only 实例作为源站。直接选,不用绕弯。

这个更新解决什么问题

之前 Lightsail CDN 只支持 IPv4 和双栈(dual-stack)实例做源站。如果你为了省钱选了 IPv6-only 实例,就没法直接用 Lightsail 自带的 CDN 加速。

现在支持了,意味着:

  1. IPv6-only 实例 + CDN 加速 — 成本低 + 全球访问快
  2. 所有终端用户都能访问 — 即使用户网络只有 IPv4,CDN 边缘节点会做协议转换
  3. 不需要额外配置 — Lightsail CDN 自动处理 IPv6→IPv4 的兼容

为什么要用 IPv6-only 实例

先说明白 IPv6-only 实例的优势:

对比项 IPv4/双栈实例 IPv6-only 实例
公网 IP 分配 IPv4 地址 只有 IPv6 地址
IP 费用 IPv4 地址收费 无 IPv4 费用
兼容性 所有网络可达 纯 IPv4 网络无法直连
适用场景 需要被 IPv4 客户端直连 通过代理/CDN/DNS64 访问

关键点:IPv4 地址越来越贵了。AWS 从 2024 年 2 月开始对公有 IPv4 地址收费($0.005/小时 ≈ $3.6/月),虽然不多,但对跑个人项目或小站点的人来说能省则省。

IPv6-only 实例省掉这笔钱,但代价是纯 IPv4 用户没法直接访问你的服务器。现在 Lightsail CDN 补上了这个缺口——CDN 边缘节点既支持 IPv4 也支持 IPv6,客户端不管用什么协议都能到达。

实战配置

第一步:创建 IPv6-only 实例

# 用 AWS CLI 创建 IPv6-only Lightsail 实例
aws lightsail create-instances \
  --instance-names "my-blog-ipv6" \
  --availability-zone "us-east-1a" \
  --blueprint-id "amazon_linux_2023" \
  --bundle-id "nano_3_0" \
  --ip-address-type "ipv6"

# 查看实例信息
aws lightsail get-instance --instance-name "my-blog-ipv6" \
  --query "instance.{Name:name,IPv6:[ipv6Addresses],State:state.name}"

第二步:部署你的应用

# SSH 连接(用 IPv6 地址)
ssh -6 ec2-user@2600:1f18:xxxx:xxxx::1

# 安装 Nginx + 部署静态站点
sudo dnf install -y nginx
sudo systemctl enable --now nginx

# 或者跑个 Node.js 应用
curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -
sudo dnf install -y nodejs

第三步:配置 Lightsail CDN

# 创建 CDN distribution,源站指向 IPv6-only 实例
aws lightsail create-distribution \
  --distribution-name "my-blog-cdn" \
  --origin '{
    "name": "my-blog-ipv6",
    "regionName": "us-east-1",
    "protocolPolicy": "http-only"
  }' \
  --default-cache-behavior '{
    "behavior": "cache"
  }' \
  --cache-behaviors '[
    {
      "path": "/api/*",
      "behavior": "dont-cache"
    }
  ]' \
  --bundle-id "small_1_0"

# 查看 CDN 状态
aws lightsail get-distribution \
  --distribution-name "my-blog-cdn" \
  --query "distribution.{Domain:domainName,Status:status,Origin:origin.name}"

配置完成后,你会拿到一个 CDN 域名(类似 d1234567890.cloudfront.net),这个域名:

  • 支持 IPv4 和 IPv6 双栈访问
  • 全球边缘节点缓存
  • 自动处理到 IPv6-only 源站的回源

第四步:绑定自定义域名

# 创建 SSL 证书
aws lightsail create-certificate \
  --certificate-name "blog-cert" \
  --domain-name "blog.example.com"

# 验证域名所有权(添加 CNAME 记录到 DNS)
aws lightsail get-certificates --certificate-name "blog-cert" \
  --query "certificates[0].domainValidationRecords"

# 绑定证书到 CDN
aws lightsail attach-certificate-to-distribution \
  --distribution-name "my-blog-cdn" \
  --certificate-name "blog-cert"

# 配置 DNS:CNAME blog.example.com → d1234567890.cloudfront.net

完整架构

画个简单的架构:

用户(IPv4 或 IPv6)
    ↓
Lightsail CDN(全球边缘节点,双栈)
    ↓ 回源(IPv6)
IPv6-only Lightsail 实例(us-east-1)
    ↓
Nginx / Node.js / WordPress

对比没有 CDN 的方案:

用户(仅 IPv4)→ ❌ 无法连接 IPv6-only 实例
用户(IPv6)   → ✅ 直接连接

加 CDN 后:
用户(仅 IPv4)→ CDN(IPv4 边缘)→ 源站(IPv6)✅
用户(IPv6)   → CDN(IPv6 边缘)→ 源站(IPv6)✅

缓存配置优化

# 更新缓存策略——静态资源长缓存,API 不缓存
aws lightsail update-distribution \
  --distribution-name "my-blog-cdn" \
  --cache-behaviors '[
    {
      "path": "/static/*",
      "behavior": "cache"
    },
    {
      "path": "/images/*", 
      "behavior": "cache"
    },
    {
      "path": "/api/*",
      "behavior": "dont-cache"
    },
    {
      "path": "/admin/*",
      "behavior": "dont-cache"
    }
  ]'

成本核算

算笔账,对比几种方案的月费:

方案 实例费 IPv4 费 CDN 费 合计
双栈 Nano + 无 CDN $3.50 $3.60 $0 $7.10
IPv6-only Nano + CDN $3.50 $0 $2.50起 $6.00起
双栈 Nano + CDN $3.50 $3.60 $2.50起 $9.60起

IPv6-only + CDN 的方案:省了 IPv4 费用,加了 CDN(自带全球加速),总价还更低。如果流量不大(CDN 免费额度 50GB/月),成本优势更明显。

Lightsail CDN 定价:

  • small bundle: $2.50/月(50GB 流量)
  • medium bundle: $5.00/月(200GB 流量)
  • large bundle: $10.00/月(500GB 流量)

适用场景

这个更新最适合:

  1. 个人博客/文档站 — 流量不大,省钱要紧,全球访问要求不高但有则更好
  2. 小型 SaaS 产品官网 — 需要全球可达但预算有限
  3. API 服务前端 — CDN 不缓存动态请求但提供就近入口点
  4. 开发测试环境 — 没必要花钱买 IPv4,但偶尔需要外部访问

区域支持

Lightsail 在 16 个 AWS 区域可用,CDN 是全球的:

  • 美东(弗吉尼亚)、美西(俄勒冈)
  • 欧洲(法兰克福、伦敦、巴黎)
  • 亚太(东京、新加坡、首尔、孟买、马来西亚)
  • 加拿大(蒙特利尔)
  • 南美(圣保罗)

我的判断

这是一个很小的功能更新,但解决了一个实实在在的卡点。

IPv6-only 是省钱的正确方向(IPv4 地址就是在持续涨价),但之前用了 IPv6-only 就等于放弃了一部分兼容性。CDN 补上这个缺口后,"IPv6-only + CDN" 变成了一个完整可用的低成本方案。

对小站点来说,每月省 $3.6 的 IPv4 费可能不算什么。但如果你跑了 10 个实例呢?一年省 $432,够续费好几个域名了。


相关链接:

posted @ 2026-05-26 20:00  亚马逊云开发者  阅读(1)  评论(0)    收藏  举报