加载中...
不想等待可以点我关掉

前言

该项目是由于我厌倦了管理后台和APP的卡顿而写的,因此项目开发之初就不考虑集成在管理后台,做成一个独立的页面,并实现跨平台。

并且,调用的都是小米路由器独有的api接口,与Openwrt完全不兼容

用于测试的只有r1d和r4a,对于别的型号的支持,还得看大家的反馈才能完善。

感谢YSC6666,黑衣剑士z,Super丶聪(@bilibili)的帮助

代码开源在 https://github.com/Mirouterui/ ,欢迎 star&提prヾ(≧▽≦*)o

碍于实际需求,拿一台瘦客户机装了个ikuai,这个项目先鸽了

面板展示

部署

小米路由器是基于Openwrt的,故下文Openwrt仅指小米路由器
附:

Release下载对应的架构的发行版

64位:amd64,32位:i386,arm: arm

可访问镜像站以获取更快的速度

然后运行,程序会自动下载配置文件,在其中填上密码即可。配置文件中其它条目在下面

再次运行,等待下载页面静态文件,若能支持获取token即为成功

部分设备出现无法运行&无法找到配置文件可使用“不使用upx压缩”版本(即带_noupx后缀的版本)

Release复制对应的架构的发行版的下载链接

使用uname –a查看架构(如果为armv7l,考虑使用armv5版本)

R1D

运行:

curl –L yourlink –o mirouterui

chmod 777 mirouterui

./mirouterui

程序会自动下载配置文件,在其中填上密码即可。配置文件中其它条目在下面。.

再次运行,等待下载页面静态文件

若能支持获取token即为成功

常见问题:

  1. 无法下载配置文件,路由器太老了

使用 curl https://mruiapi.hzchu.top/downloadconfig -o config.json 手动下载

  1. 无法下载配置文件

Mirouterui/static: 前端静态文件 (github.com)下载,并解压到static目录

命令:

docker run -d -p 6789:6789 -v $(pwd):/app/data –name mirouter-ui –restart=always thun888/mirouter-ui

新建一个文件夹,并在该文件夹里运行上述命令,程序会在该文件夹里生成配置文件,修改即可

修改完成后重启该容器(或等待自动重启)

最后命令窗口中会显示网页的访问端口,使用设备的ip地址+端口号(6789)访问面板

常见问题

  1. 密码正确,但无法登陆:尝试获取自己路由器的key,可参考视频或使用自动工具

  2. CPU占用为0: 受api限制,新版路由器无法正常获取,可尝试将其部署在路由器上

  3. 温度显示: 目前API模式只支持R1D,R2D,命令模式只支持红米AX6和R1D

  4. 设备显示不全: 当设备过多时,首页只会显示当前有网络活动的设备,请进入设备详细列表查看

  5. 在线前端无法使用: 受浏览器安全限制,需关闭访问私有ip限制

Chrome

Edge

配置项

config

配置名 默认值 解释
dev [] 路由器信息,参阅dev项
history [] 历史记录相关功能,参阅history项
tiny false 启用后,不再下载静态文件,需搭配在线前端使用
netdata_routerid 0 调用netdata api时返回的路由器(对应dev项中第n个)
flushTokenTime 1800 刷新token时间间隔(s)
port 6789 网页页面端口号
debug true debug模式,建议在测试正常后关闭

dev项:

配置名 默认值 解释
password 路由器管理后台密码
key a2ffa5c9be07488bbb04a3a47d3c5f6a 路由器管理后台key
ip 192.168.31.1 路由器IP
routerunit false 启用后,程序通过gopsutil库获取CPU占用

history项:

配置名 默认值 解释
enable false 是否启用历史数据统计
sampletime 300 采样时间间隔(s)
maxsaved 8640 最多记录条数

命令行参数:

参数 解释
–config 配置文件路径,默认为“./config.json”
–basedirectory 基础目录路径,在里面存放静态文件
–databasepath 数据库路径,默认为“./database.db”

后台运行

注册为系统服务

1
sudo vim /etc/systemd/system/mrui.service
1
2
3
4
5
6
7
8
9
10
[Unit]
Description=mrui
After=network.target network-online.target
Requires=network-online.target

[Service]
ExecStart=/pathto/mrui

[Install]
WantedBy=multi-user.target

设置开机自启

1
sudo systemctl enable mrui

管理

1
2
3
4
查看状态:systemctl status mrui
启动:sudo systemctl start mrui
停止:sudo systemctl stop mrui
重启:sudo systemctl restart mrui

windows守护进程工具–nssm详解 - 博客园 (cnblogs.com)

Stars~

Stars~

TODO

  • 历史数据统计
  • 深色模式
  • 多路由支持
  • 快捷更新
  • 设备小工具
  • netdata,api形式兼容

MRUI开发规划

主要功能已完成开发,接下来随缘更新😶‍🌫️

更新日志