这是一个使用 Lucky (一款集成了 DDNS、反向代理、SSL 证书申请、端口转发等功能的神器) 部署 IPv6 DDNS 和反向代理的精简教程。
Lucky 特别适合家庭宽带环境(特别是 NAS 用户),因为它配置简单且资源占用极低。
✅ 核心思路
- 部署 Lucky:通常使用 Docker 部署(推荐 Host 模式,方便获取 IPv6)。如果你不使用docker,也可以使用官方的一键部署命令。
- 配置 DDNS:让 Lucky 自动把你的公网 IPv6 地址同步到你的域名。
- 申请 SSL 证书:Lucky 内置 ACME,可自动申请 HTTPS 证书。
- 配置反向代理:将外部请求(如
https://nas.你的域名:端口)转发给局域网内的服务。
第一步:Docker 部署 Lucky
推荐使用 Docker 的 host 网络模式,这样 Lucky 能直接读取宿主机的 IPv6 地址,省去很多网络桥接的麻烦。
Docker Run 命令示例:
|
|
- 注意:
/你的宿主机路径/lucky/conf请替换为你实际想要保存配置文件的路径(例如 Synology NAS 上的/volume1/docker/lucky)。 - 启动后,默认管理端口为 16601。
一键部署
使用以下命令
|
|
此代码为lucky官网提供,可以自动识别处理器架构和系统类型,请在网络良好的时候使用。
第二步:登录与基础设置
- 在浏览器输入:
http://你的内网IP:16601 - 默认账号/密码:
666/666(登录后请务必第一时间修改密码)。 - 进入界面后,界面非常直观。
第三步:配置 IPv6 DDNS (动态域名)
这一步是为了让你的域名时刻指向你家中不断变化的 IPv6 地址。
- 点击左侧菜单 “动态域名” -> “添加任务” 。
- 托管服务商:选择你的域名服务商(如 Cloudflare, Aliyun, Tencent/DNSPod 等)。
- 你需要去服务商后台获取
Token/SecretID/SecretKey并填入。
- 获取方式:
- 推荐选择 “网卡” (Interface) 。
- 在下拉菜单中选择获取到公网 IPv6 地址的那个网卡(通常是
eth0或ovs_eth0,看哪个带240x开头的地址)。
- 域名列表:填写你要解析的域名,例如
*.example.com(泛解析) 或nas.example.com。 - 类型:选择 IPv6。
- 点击 “添加” ,稍等片刻,看日志显示“同步成功”即可。
第四步:配置 SSL 证书 (HTTPS)
为了安全访问,我们需要 SSL 证书。Lucky 内置了 ACME 功能。
- 点击左侧菜单 “安全管理” -> “添加证书” 。
- 添加方式:选择 ACME。
- 验证方式:选择 DNS验证 (最稳,支持泛域名)。
- DNS服务商:选择刚才配置过密钥的服务商。
- 域名:填写
*.example.com(推荐申请泛域名证书,这样所有子域名都能用)。如果你只是有特定的需求,也可以指定指定的子域名。但是要注意一个子域名对应一个端口转发服务或者反向代理服务,需要同步更新。 - 点击 “添加” 。Lucky 会自动去 Let’s Encrypt 或 ZeroSSL 申请并续期证书。
第五步:配置反向代理 (Web服务)
这一步是将外部流量分发给内部服务(NAS、Jellyfin、HomeAssistant 等)。
- 点击左侧菜单 “Web服务” -> “添加规则” 。
- 基础设置:
- 名称:随便填(如 “Main Proxy”)。
- 监听端口:填写你希望外网访问的端口。
- 注意:家庭宽带通常封锁 80 和 443 端口,建议使用高位端口,例如
16666。 - 开启 TLS (HTTPS) :开启。
- 选择证书:选择刚才第四步申请到的证书。
- 添加子规则 (关键步骤) :
- 在刚才创建的规则下,点击 “添加子规则” 。
- 前端域名:填写
nas.example.com。 - 后端地址:填写内网服务的地址,例如
http://127.0.0.1:5000(如果是lucky和后端不是在同一个机器,使用http://机器内网ip:端口的格式)。 - 你可以继续添加子规则,例如
movie.example.com指向127.0.0.1:8096(Jellyfin)。
第六步:路由器防火墙设置 (至关重要)
这是 IPv6 部署中最容易被忽略的一步。
由于 IPv6 是公网 IP 直接给到设备,路由器的防火墙默认会拦截所有外部入站流量。
- 登录你的主路由后台。
- 找到 IPv6 防火墙 或 防火墙规则。
- 添加一条 入站规则 (Inbound) :
- 协议:TCP (或 TCP/UDP)。
- 源地址:任意。
- 目标地址:你运行 Lucky 的那台设备的 IPv6 地址(或者直接选 MAC 地址,部分路由器支持)。
- 目标端口:你在第五步设置的监听端口(例如
16666)。 - 动作:允许 (Accept/Allow)。
🎉 最终效果
完成以上步骤后,你在外网(手机开 5G 测试)访问:
https://nas.example.com:16666
Lucky 就会接收请求,通过 SSL 解密,然后转发给内网的 NAS 端口,实现安全远程访问。
💡 常见问题与提示
- 不要用 80/443:除非你有企业专线,否则家用宽带请避开这两个端口。
- Loopback 问题:在局域网内用公网域名访问可能会不通(取决于路由器的 NAT 回流能力)。如果内网访问不通,在内网请直接用局域网 IP,或在路由器/电脑 hosts 做内网 DNS 劫持。
- 安全性:建议在 Lucky 的 Web 服务设置中开启 “基本认证” (Basic Auth) 或者使用 Lucky 的 2FA 功能,给暴露在公网的服务多加一把锁。