用 WebUI 一键管理 IPv6 Token:让家用 NAS / Linux 服务器的 IPv6 地址更“可控、好记、易维护”

如果你家里有 NAS、Linux 小主机或 VPS,并且已经开启了 IPv6,你很可能遇到过这些问题:

  • IPv6 地址经常变化,重启/断线重连后就变了

  • 远程访问不稳定,端口转发规则也要跟着改

  • DDNS 频繁更新,维护成本高

  • 命令行配置(nmcli / ip)对新手不友好,排障也麻烦

这篇文章介绍一个更轻量的解决方案:IPv6 Token WebUI —— 一个基于 Rust 的 Web 管理界面,面向使用 NetworkManager 的 Linux 系统,帮助你在浏览器里一键启用/禁用 IPv6 Token(固定 IPv6 后缀),并实时查看状态与日志。

项目地址:


1. IPv6 Token 是什么?为什么能“稳定地址”?

在常见的 IPv6 SLAAC 场景中:

  • 前缀由路由器/运营商下发(可能会变)

  • 后缀由系统生成(可能随机、可能基于硬件信息)

IPv6 Token 的核心价值是:你可以自定义一个固定后缀(例如 ::888),这样“后缀可控”,即使前缀变化,你也能更容易地预测/记住最终地址,方便远程访问与端口转发。


2. IPv6 Token WebUI 能做什么?

它主要提供:

  • 一键启用/禁用 Token

  • 实时状态查看

    • 当前网络接口、连接信息

    • 当前 IPv6 地址列表

    • Token 是否启用、Token 值

  • 操作日志实时显示(排障友好)

  • 密码认证保护

    • 首次访问设置密码(至少 6 位)

    • 会话管理与超时

    • 登录失败保护策略

技术特点:

  • 单一可执行文件(Rust 编译产物,部署简单)

  • 跨架构支持(x86_64 / ARM64 / ARM32)

  • 低资源占用(适合 NAS 小主机)

  • 可用 Docker直接运行 部署


3. 适用系统与前提条件

  • 仅支持 Linux(不支持 Windows/macOS)

  • 适用于 Debian/Ubuntu/CentOS/Fedora/Arch 等使用 NetworkManager 的发行版

  • 通常需要具备:

    • NetworkManager

    • iproute2

    • sysctl


4. 部署方式一:远程拉取 Docker 镜像(推荐)

如果你不想编译、不想安装 Rust,最省事的方式是直接拉取远程镜像启动。

4.1 一键启动(使用仓库里的 remote compose 文件)

git clone https://github.com/MG5921MY/token64-eui-webui-public.git
cd token64-eui-webui-public/code

docker compose -f docker-compose.remote.yml up -d

访问:

  • http://服务器IP:5000

  • 首次访问会提示设置密码(至少 6 位)

4.2 重要提醒:remote yml 建议重命名为“标准格式”

很多人习惯直接执行:

docker compose up -d

但这要求文件名是标准的 docker-compose.yml

因此,如果你是“远程拉取镜像部署”场景,建议这样做(Windows 示例):

cd token64-eui-webui-public/code

# 1) 复制/重命名为标准文件名
copy docker-compose.remote.yml docker-compose.yml

# 2) 以后就可以省略 -f 参数
docker compose up -d

这样好处是:

  • 命令更短更通用

  • 以后更新/重启更省心(无需记文件名)

4.3 更新镜像到最新版本(常用)

如果你使用的是 latest 标签,更新流程通常是:

docker compose pull
docker compose up -d

(如果你没有重命名为标准文件名,则把命令中的 docker compose 加上 -f docker-compose.remote.yml。)


5. 部署方式二:发行版(Release)直接下载运行(无 Docker / 无 Rust)

如果你不想用 Docker,也不想安装 Rust 编译环境,可以直接从 GitHub Releases 下载已经构建好的二进制文件(按 CPU 架构选择)。

Release 页面:

一般使用流程(Linux):

# 下载后进入文件所在目录
chmod +x ipv6-token-webui
./ipv6-token-webui

默认访问地址:

  • http://localhost:5000

如果你需要局域网访问(务必配合防火墙):

./ipv6-token-webui -H 0.0.0.0 -p 5000

6. 首次使用与核心操作(WebUI 里怎么用)

6.1 首次访问:设置密码并登录

  • 第一次打开页面:设置初始密码(至少 6 位)

  • 后续访问:输入密码登录

6.2 启用 Token:固定 IPv6 后缀

在 Token 输入框中填入你希望的后缀,例如:

  • ::888

  • ::1

  • ::2024

  • ::abc

点击启用后等待几秒,刷新页面观察 IPv6 地址列表是否出现包含 Token 后缀的全局地址。

6.3 禁用 Token:恢复默认行为

点击禁用后,系统会回到默认 SLAAC / DHCPv6 行为(取决于你的网络环境)。


界面示例

1. 首次登录设置密码

首次登录设置密码.png

2. 登录界面

登录界面.png

3. 主界面(亮色)

应用界面-亮色.png

4. 主界面(暗色)

应用界面-暗色.png

7. 监听地址与安全建议(很重要)

为了安全,管理界面建议遵循以下原则:

  • 优先只在本机或内网使用

  • 如果必须远程访问:

    • 使用防火墙限制来源 IP

    • 或用反向代理加二次鉴权

    • 或只通过 VPN / 内网穿透安全通道访问


8. 常见问题(FAQ)

8.1 WebUI 无法访问怎么办?

排查思路:

  • 服务是否在运行

  • 端口是否监听

  • 防火墙是否放行

  • Docker 场景是否映射了端口、容器是否正常启动

8.2 Token 配置后没有生效?

可能原因:

  • 路由器 IPv6 配置问题(SLAAC 未正确开启)

  • 地址刷新需要时间(等 10–30 秒)

  • 系统存在多个 IPv6 地址,需要确认你要用的是包含 Token 后缀的那一个

8.3 忘记密码怎么办?

一般思路是清理配置后重新初始化,再重启服务进入首次设置流程。(生产环境建议提前做好配置备份与权限控制。)


9. 结语

对于“家用 NAS / Linux 服务器 + IPv6”场景,IPv6 Token 是一个很实用的思路:后缀固定,远程访问更可控。而 IPv6 Token WebUI 则把原本复杂的命令行操作,变成了浏览器里的一键操作,并提供实时状态与日志,降低了使用门槛与排障成本。