DuckDNS 免费子域名:5 分钟拿到 yourname.duckdns.org,家里 IP 变了也不掉线
一句话导读: 家里宽带 IP 一变,远程访问就断线。DuckDNS 是个靠捐赠维持的免费动态 DNS:注册一个 yourname.duckdns.org,家里跑个 5 分钟一次的小脚本,IP 变了域名自动跟上——不用买域名、不用买固定 IP。
前置条件
- 一个 GitHub、Google 或 X(Twitter)账号,用来登录 DuckDNS(不用另外注册密码)
- 一台家里长期开机的设备(树莓派、旧电脑、NAS 都行),能跑定时任务
- 接受 DuckDNS 的定位:它只解决"域名跟 IP"这一件事,不包建站、不包邮箱、不包证书
分步骤
第 1 步:登录 DuckDNS,起一个子域名

到 duckdns.org,用 GitHub、Google 或 X 账号登录。注意一个容易误导的细节:首页顶部仍能看到 Persona 和 Reddit 的登录按钮,但第三方教程口径是这两者已不再支持新注册——只认 GitHub、Google、X 三个,别在那两个按钮上浪费时间。登录后在页面上找到加域名的输入框,输入你想要的名字(比如 myhome),点 Add domain,就得到 myhome.duckdns.org。一个账号最多 5 个子域名(第三方教程口径),名字先到先得,被占了就换一个。
第 2 步:抄下你的 token——它就是改 IP 的钥匙

登录后的首页会显示你的账号 token,千万别公开、别贴进公开仓库、别放进截图。DuckDNS 官方接口说明写明更新地址格式:https://www.duckdns.org/update?domains=你的子域名&token=你的token&ip=,ip 留空时自动探测 IPv4;加 &verbose=true 会返回更详细的 OK 信息,返回 OK 是成功、KO 是失败。token 一旦泄露,别人就能把你的域名指到他自己的服务器上——泄露了立即停用受影响的子域名、换 token、重建解析,别心存侥幸。
第 3 步:家里挂一个 5 分钟一次的更新脚本

按 2026 年 10 月 27 日更新的树莓派搭建教程:家里设备上装好 curl,写一个 duck.sh,内容就是一行更新请求(把子域名和 token 换成你自己的),chmod 700 duck.sh 让只有你能读它,再用 crontab -e 加一行 */5 * * * * /opt/duckdns/duck.sh >/dev/null 2>&1,每 5 分钟跑一次。跑起来后过几分钟,用 nslookup yourname.duckdns.org 或直接浏览器打开验证解析到的 IP 是不是你家当前的公网 IP。
注意事项、费用、坑点
- 费用: $0,DuckDNS 靠捐赠维持,没有付费档;喜欢就捐一点,别指望它有商业服务的 SLA。
- 最大坑:token 当密码。 截图教程、求助帖子里最常见的事故就是把 token 一起截进去——发之前检查图片和命令里有没有 token。
- 它不是建站全套: DuckDNS 只给域名和动态解析;家里服务要对外访问还得自己做端口转发或反向代理,管理后台别裸露在公网——先反代、加认证、再谈远程访问。
- IP 探测只认 IPv4: 接口说明写明不填 ip 时只自动探测 IPv4;纯 IPv6 环境要显式传 ipv6 参数,别等自动探测。
- 和 is-a.dev、pp.ua 的区别: 那些是固定子域名(适合公开建站),DuckDNS 是动态域名(适合家里 IP 会变的场景);公开建站选前者,远程回家的场景选 DuckDNS,别拿错工具。
- 免费服务的前科检查: DuckDNS 运营多年、靠捐赠维持,未见批量封号或悄悄收费的前科;但免费服务随时可能调整规则,重要服务别只押一个动态域名。
来源
- DuckDNS 官网:https://www.duckdns.org/
- DuckDNS 更新接口官方说明:http://www.duckdns.org/spec.jsp
- DuckDNS 树莓派搭建教程(HPR 4203,2026-10-27 更新):https://hpr.horning.us/eps/hpr4203/index.html
(播客素材:HPR 4203 本身是一期播客单集(17 分 16 秒),本篇步骤 3 的 cron 写法与脚本路径即引自该单集的文字版;因文字版未标注分钟级时间戳,故不写具体时间戳,不编造。)