信任网络模式允许来自指定 IP 段的设备跳过登录认证,自动获得站长权限。此功能专为内网部署场景设计。
- 家庭内网部署,希望家里所有设备免登录访问
- 公司/学校内网部署,内网用户无需登录
- Docker 本地部署,宿主机直接访问
- NAS/软路由部署,局域网设备免认证
警告:切勿将公网 IP 加入信任列表!
信任网络中的设备将自动获得站长(owner)权限,无需密码即可访问所有功能,包括管理后台。
只应添加受信任的内网 IP 段,如
192.168.0.0/16、10.0.0.0/8。
设置 TRUSTED_NETWORK_IPS 环境变量,多个 IP/CIDR 用逗号分隔:
# 信任整个 C 类私网(192.168.x.x)
TRUSTED_NETWORK_IPS=192.168.0.0/16
# 信任多个网段
TRUSTED_NETWORK_IPS=192.168.0.0/16,10.0.0.0/8,172.16.0.0/12
# 信任特定 IP + 网段
TRUSTED_NETWORK_IPS=192.168.1.100,10.0.0.0/8Docker Compose 示例:
services:
lunatv:
image: ghcr.io/szemeng76/lunatv:latest
environment:
- PASSWORD=your_password
- TRUSTED_NETWORK_IPS=192.168.0.0/16,172.17.0.0/16Vercel 环境变量:
在 Vercel 项目设置中添加环境变量 TRUSTED_NETWORK_IPS。
- 登录管理后台(需要站长账号)
- 找到「信任网络配置」面板
- 启用开关
- 添加信任的 IP/CIDR
- 保存配置(立即生效)
注意:环境变量配置优先级高于数据库配置。
| CIDR | 范围 | 说明 |
|---|---|---|
10.0.0.0/8 |
10.0.0.0 - 10.255.255.255 | A 类私网(大型企业) |
172.16.0.0/12 |
172.16.0.0 - 172.31.255.255 | B 类私网(中型企业) |
192.168.0.0/16 |
192.168.0.0 - 192.168.255.255 | C 类私网(家庭/小型办公) |
127.0.0.1 |
127.0.0.1 | 本机回环地址 |
172.17.0.0/16 |
172.17.0.0 - 172.17.255.255 | Docker 默认网桥 |
::1 |
::1 | IPv6 本机回环 |
- 单个 IPv4 地址:
192.168.1.100 - IPv4 CIDR:
192.168.0.0/16、10.0.0.0/8 - 单个 IPv6 地址:
2001:db8::1 - IPv6 CIDR:
2001:db8::/32 - 通配符:
*(信任所有 IP,极不推荐)
- 用户请求到达 → Middleware 获取客户端 IP
- 检查 IP 是否在信任列表中(支持 CIDR 匹配)
- 如果匹配 → 自动设置认证 Cookie,授予站长权限
- 如果不匹配 → 正常登录流程
- 检查环境变量是否正确设置
- 数据库配置保存后立即生效(通过 cookie 版本号通知 middleware 刷新缓存)
- 检查 IP 格式是否正确
- 如果仍不生效,尝试刷新浏览器页面
Windows:
ipconfigLinux/macOS:
ip addr
# 或
ifconfigMiddleware 会按以下顺序获取客户端 IP:
x-forwarded-for请求头(取第一个 IP)x-real-ip请求头cf-connecting-ip请求头(Cloudflare)
确保反向代理正确设置了这些请求头。
可以,但环境变量配置优先级更高。如果设置了 TRUSTED_NETWORK_IPS 环境变量,将忽略数据库中的配置。
支持 IPv6 地址和 CIDR,但由于 IPv6 格式复杂,建议使用简单格式:
::1(本机)fe80::/10(链路本地)2001:db8::/32(文档示例地址)
家庭用户(路由器分配 192.168.x.x):
TRUSTED_NETWORK_IPS=192.168.0.0/16Docker 部署(信任宿主机和 Docker 网络):
TRUSTED_NETWORK_IPS=127.0.0.1,172.17.0.0/16,192.168.0.0/16NAS 部署(Synology/QNAP 等):
TRUSTED_NETWORK_IPS=192.168.0.0/16,10.0.0.0/8纯内网部署(信任所有 RFC1918 私网地址):
TRUSTED_NETWORK_IPS=10.0.0.0/8,172.16.0.0/12,192.168.0.0/16