64 lines
1.6 KiB
Markdown
64 lines
1.6 KiB
Markdown
# LuCI App Master-Link
|
|
|
|
LuCI web interface for SecuBox Master-Link mesh management.
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
opkg install luci-app-master-link
|
|
```
|
|
|
|
Requires `secubox-master-link` (pulled automatically as dependency).
|
|
|
|
## Access
|
|
|
|
**SecuBox > Mesh Management** in the LuCI menu.
|
|
|
|
## Tabs
|
|
|
|
### Overview
|
|
|
|
Adapts to the node's role:
|
|
|
|
- **Master**: Role badge, mesh stats (peers, depth, chain height), Generate Token button with QR-ready URL
|
|
- **Peer**: Role badge, upstream master info, own depth, sync status
|
|
- **Sub-master**: Upstream info + downstream peer count
|
|
|
|
### Join Requests (master/sub-master only)
|
|
|
|
- Table: hostname, IP, fingerprint, timestamp, status
|
|
- Actions: Approve, Reject, Promote to sub-master
|
|
- Auto-refresh every 10 seconds
|
|
|
|
### Mesh Tree
|
|
|
|
- Hierarchical view of master → peers → sub-masters → their peers
|
|
- Depth indicators and role badges
|
|
- Online/offline status per node
|
|
|
|
## RPCD Methods
|
|
|
|
All calls go through `luci.master_link` ubus object:
|
|
|
|
| Method | Description |
|
|
|--------|-------------|
|
|
| `status` | Node status and mesh stats |
|
|
| `peers` | List all peers with join details |
|
|
| `tree` | Mesh topology tree |
|
|
| `token_generate` | Create one-time join token |
|
|
| `approve` | Approve, reject, or promote a peer |
|
|
| `token_cleanup` | Remove expired tokens |
|
|
|
|
## Files
|
|
|
|
| File | Purpose |
|
|
|------|---------|
|
|
| `root/usr/share/luci/menu.d/luci-app-master-link.json` | Menu entry |
|
|
| `root/usr/share/rpcd/acl.d/luci-app-master-link.json` | ACL permissions |
|
|
| `root/usr/libexec/rpcd/luci.master_link` | RPCD endpoint |
|
|
| `htdocs/luci-static/resources/view/secubox/master-link.js` | LuCI view |
|
|
|
|
## License
|
|
|
|
Apache-2.0
|