以下是详细的实施步骤,帮助你在 Debian 11 系统的 IPv6 Only VPS 上完成 WARP 套用、Caddy 环境搭建及域名配置,确保 IPv4 和 IPv6 用户均可访问 HTTP 服务。
一、WARP 安装与配置
- 安装 P3TERX 的 WARP 一键安装包
# 下载并运行安装脚本 wget -N https://gitlab.com/rwkgyg/CFWarp/raw/main/CFWarp.sh && bash CFWarp.sh-
- 安装过程中会自动检测系统环境,选择 安装 WARP+ 或 WARP Pro(推荐 WARP+ 以获得更稳定 IPv4 出口)。
- 安装完成后,WARP 会创建虚拟网卡
wgcf并分配 IPv4 地址(如172.16.0.2)。
-
-
- 使用 P3TERX 官方脚本则为:
bash (curl -fsSL git.io/warp.sh) d或
bash (curl -fsSL git.io/warp.sh) 4
详见:https://p3terx.com/archives/cloudflare-warp-configuration-script.html
- 使用 P3TERX 官方脚本则为:
- 验证 WARP 状态
# 检查 WARP 接口状态 wg show # 测试 IPv4 连通性(应显示 WARP 的出口 IP) curl -4 ifconfig.me - 持久化配置
- 脚本会自动配置开机启动,检查服务状态:
systemctl status wgcf
- 脚本会自动配置开机启动,检查服务状态:
二、Caddy 安装与配置
- 安装 Caddy
# 使用官方一键安装脚本(支持自动配置 systemd) sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list sudo apt update sudo apt install caddy - 配置 Caddy 支持 IPv4/IPv6 双栈
- 编辑 Caddyfile:
sudo nano /etc/caddy/Caddyfile - 添加以下内容(替换
natca.xx1024.xyz为你的域名):natca.xx1024.xyz { # 监听 IPv4 和 IPv6 的 80 端口 bind 0.0.0.0 [::] # 示例:返回简单响应(或配置反向代理) respond "Hello from IPv6+IPv4!" } - 关键配置说明:
bind 0.0.0.0 [::]确保 Caddy 同时监听 IPv4 和 IPv6 接口。- 若需反向代理后端服务(如本地应用),替换
respond为reverse_proxy localhost:8080。
- 编辑 Caddyfile:
- 启动 Caddy 服务
sudo systemctl enable caddy sudo systemctl restart caddy # 检查服务状态 systemctl status caddy
三、Cloudflare DNS 配置
- 添加域名解析记录
- 登录 Cloudflare 控制台,进入域名
xx1024.xyz的 DNS 设置页。 - 添加以下两条记录:
类型 名称 内容(VPS IPv6 地址) 代理状态 AAAA natca <你的VPS_ipv6地址>代理 A natca 162.159.192.1代理 注: A 记录指向 Cloudflare 的任一 IPv4 Anycast 地址(如162.159.192.1),流量将通过 Cloudflare 全球网络转发至 WARP 分配的 IPv4。- 必须开启代理(橙色云图标),否则 IPv4 用户无法通过 Cloudflare 中转至 WARP。
- 登录 Cloudflare 控制台,进入域名
- 验证 DNS 解析
# 检查本地解析结果 dig AAAA natca.xx1024.xyz +short # 应返回 VPS 的 IPv6 地址 dig A natca.xx1024.xyz +short # 应返回 162.159.192.1
四、防火墙与端口开放
- 配置 UFW 防火墙
# 允许 SSH、HTTP/HTTPS 及 WARP 端口 sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw allow 2408/udp # WARP 服务端口 sudo ufw enable - 验证端口监听
ss -tuln | grep -E ':(80|443|2408)' # 应显示 0.0.0.0:80、[::]:80 等监听状态
五、访问测试与故障排查
- 测试 IPv4/IPv6 访问
- IPv4 用户测试:
# 从 IPv4 网络执行(如本地终端) curl -4 natca.xx1024.xyz # 应返回 "Hello from IPv6+IPv4!" - IPv6 用户测试:
curl -6 natca.xx1024.xyz
- IPv4 用户测试:
- 常见问题排查
- WARP 未生效:检查
wg show输出,确认latest handshake有数据。 - Caddy 无法启动:检查
/var/log/caddy/日志,确认端口未被占用。 - Cloudflare 代理失败:确保 DNS 记录中 A/AAAA 记录均为“代理”状态(橙色云)。
- WARP 未生效:检查
六、方案原理说明
- 流量路径
- IPv6 用户 → Cloudflare IPv6 Anycast → VPS IPv6 → Caddy
- IPv4 用户 → Cloudflare IPv4 Anycast → WARP IPv4 入口 → VPS WARP 接口 → Caddy
- 关键依赖
- WARP 为 VPS 提供 IPv4 出口能力,使 Caddy 可响应 IPv4 请求。
- Cloudflare 代理模式实现 IPv4 流量中转至 WARP,避免 VPS 暴露真实 IPv4。
通过以上步骤,你的 Debian 11 VPS 将同时支持 IPv4/IPv6 用户访问 HTTP 服务,且无需额外公网 IPv4 地址。



文章评论