nomdn d7cc9d45e7 feat: 节点远程运维能力落地——运行时配置/能力协商/OTA 下发 + EO 上报通道
OTA 模型反转:节点不再跟随 GitHub Release 自更新,改为收集中心下发、节点执行
的一次性任务(WS type=ota / HTTP POST /v1/ota),升级时机由管理员掌握。

- 新增 /v1/config(GET/PATCH,?persist=true 写回)与 /v1/config/refresh,WS 同款 type=config;凭据类键遮蔽为 ***,应答带 restartRequired / remoteProtectedKeys 键
- access-token / report-token 列入远端不可覆盖名单,本地 PATCH 不受限
- node-ota 开关支持运行时热改(每次下发 OTA 指令时才读取),非法字面值报 unknown 且不覆盖原值
- 节点上报 capabilities(probe/report/config/ota),收集中心三态门控管理指令
- ws-url 支持热更新(per-URL 连接协程多退少补),node-id/node-key 仍需重启
- EO 边缘函数补齐 HTTP 上报通道(report.go)与 GET / 的版本/能力回报
- 上报循环常驻化;显式持有 http.Server 实现优雅停机
- 修复 block-private-ips 启动期忽略 setting.json 的口径不一致
- OTA 开关键沿用 node-ota / NODE_OTA,语义改为缺省允许、仅显式 false 禁用;install.sh 不再询问自更新
- 文档站新增 节点 API与协议参考 / 公开 API / 功能总览
- Dockerfile 注入 VERSION/COMMIT/BUILD_TIME
2026-09-13 21:05:27 +08:00
2026-04-12 18:36:45 +08:00

Lemon IPW

ipw.cn 替代品,提供 IP 查询、网站检测、SSL 检查、DNS 解析、TCPing 测速、Whois、DNSSEC、ASN 查询、网站截图等功能。

预览站点 · 文档

快速开始

curl -fsSL https://raw.githubusercontent.com/nomdn/ipw-cn/main/install.sh -o install.sh && sudo bash install.sh

完整部署(后端节点 / 独立中间件 / 前端)与配置说明见 文档:

项目结构

ipw-cn/
├── src/               # Go 后端
├── middleware-go/     # 独立组件 转发中间件(Fiber v3,多节点候选)
├── serverless/        # 独立组件 边缘/Serverless(edgeone、edgeone-getip、lemon-getip)
├── frontend-ssr/      # Nuxt 4 SSR 前端
├── docs/              # 文档站
└── install.sh         # 一键安装脚本

友情链接

来自社区的IPW版本

ZAKOFLARE/ipw-cn-php 一个基于PHP的IPW节点
ZAKOFLARE/ipw-cn-rust 一个生锈的IPW节点[开发成本过高,已存档]
KFCV50TK/ipw-cn 一个有许多扩展功能的IPW分支

技术栈

组件 技术
后端(自托管) Go + Gin + Resty
独立中间件 Go + Fiber v3(WS 通道:coder/websocket)
边缘后端(EdgeOne) Go 边缘函数
SSR 前端 Nuxt 4 + Vue 3 + Element Plus
DNS 查询 miekg/dns(DoH / UDP 双通道 + 主从 failover)
部署 Docker、Cloudflare Workers、EdgeOne Pages、systemd

许可证

GPL-3.0

S
Description
ipw.cn替代品,用于ipw.cn宕机等情况
https://nipw.cn
Readme GPL-3.0
15 MiB
0 Stars 1 Watchers 0 Forks
Languages
Go 55.5%
Vue 26.1%
TypeScript 12%
Shell 4.1%
CSS 1.7%
Other 0.6%