挂在会掉线的「拨号级」IP 上也能对外提供 Web:cron 轮询 + SSH 让反代跟着 IP 走
来源: blog.mro.name — 2026-09-08
概述
作者的家庭服务器挂在一根偶尔会意外重拨的「拨号级」链路上,公网 IP 说变就变。动态 DNS 存在但他更偏好让一台反向代理挡在 bot 和自己之间,而 dyndns 又不会主动通知那台反代服务器——既然没有推送,那就轮询。于是他在家服上放了个 cron(每 15 分钟)跑一个 http-up.sh:先用 curl 测一下本机 URL 通不通,通则直接退出什么都不做;不通就说明刚重拨过,于是 ssh 到远程反代主机,把 $SSH_CLIENT 里的当前 IP 用 envsubst 写进反代的配置模板、reload lighttpd 并列出结果。这样一来 DSL 重连后最多 15 分钟内,服务器就会以新 IP 重新回到公网;全程只有 cron 与 ssh、一个第三方服务或工具都不用引入。
核心要点
- 家服在会意外重拨的拨号链路上,公网 IP 飘忽不定
- 动态 DNS 不会主动通知反代,所以干脆用 cron 每 15 分钟轮询
- 脚本先 curl 自测,不通才 ssh 到反代、用 envsubst 写入当前 IP 并 reload
- 最多 15 分钟即以新 IP 恢复服务;全程只需 cron + ssh
金句
There is dynamic DNS, but I prefer a reverse proxy between the bots and me. No push? Then poll.
👍 0
👎 0
返回 Lobsters 首页