r80xcore
Regular Contributor
MerVLAN VLAN Manager – Simple and Powerful VLAN Management
# MerVLAN
MerVLAN is an addon for Asuswrt‑Merlin focused on AP-mode deployments. It provides multi-node VLAN management with per-SSID and per‑Ethernet‑port tagging, a lightweight web UI, and boot/service-event integration so changes persist across reboots. Addon is placed under the "LAN" section on the UI.
# Important
Addon is in beta. Issues might be present.
Please join the discord server or send PM with logs if you run into issues.
Use
(also available via the GUI)
and
(also available via the GUI)
To see and copy relevant logs.
## Features
- Per-SSID and per‑Ethernet‑port VLAN tagging
- Multi-node support: propagate actions to configured nodes over SSH
- Automatic boot integration via services-start and service-event
- Simple web UI served from the router under /www/user/mervlan
- Safe, variant-aware injection/removal for startup scripts (no blind overwrite)
- Structured logging to /tmp/mervlan_tmp/logs and optional syslog tagging
- First-install “full” workflow that lays out directories and downloads the addon
## Requirements
- **Asuswrt-Merlin firmware** with addon support (required on all devices that is supposed to tag VLAN)
- **SSH enabled** on the main AP and standalone AP's (AiMesh-nodes share SSH keys)
- **JFFS enabled** for persistent storage
- (Important!) **AP-mode only for now**
- (Important!) **VLAN-aware upstream device** (e.g., managed switch and/or router such as OPNsense, pfSense, Asus Pro etc.) VLAN routing, rules, and DHCP must be handled **upstream**, MerVLAN only handles tagging and bridging at the AP level for the time being. (Investigations into alternative ways are being done.)
- (Important!) **Ethernet Backhaul ONLY** Wi-Fi backhaul is not capable of preserving VLANs. This is a know limitation and nothing i can affect. (Research of L3 tunneling via Wireguard is being done, but no promises here.)
- Nodes and/or Access Points need to connect to VLAN-aware switches (planned scripts for VLAN-tagged trunks is currently being developed, will need extensive testing. If you want to be a part of this select test, contact me)
##
Multi-AP / Multi-Model Deployments
- You can connect **multiple APs together**, even if they are **different Asus models**, as long as they all run Asuswrt-Merlin with addon support
- SSH key distribution between units not in AiMesh mode is **manual** for now; a **semi-automated SSH key installer script** is currently in development
- Mixed-model or multi-AP setups require **testing and debugging** to verify correct behavior across firmware variations
## VLAN Behavior (Current State)
- **LAN port VLAN tagging is global** — the same VLAN assignments apply to all APs/nodes
- Support for **per-device LAN port VLAN settings** is in active development
- Until then, if you want different VLAN tags on specific APs, you’ll need to apply manual configuration steps via SSH on each device after deployment
## Known Bugs
## Install
Only install if you want to participate in the Beta! Bugs can and will probably be present and you might need to factory-reset in a worst-case scenario.
## Logs
- Primary log dir: /tmp/mervlan_tmp/logs
- The UI exposes log views via symlinks under /www/user/mervlan/tmp/logs
- Logging behavior, colors, and syslog tagging are configured in settings/log_settings.sh
## License
See LICENSE for details.
The tool was developed on an ASUS XT8 Mesh System, but it is designed to work with most newer (officially supported by Merlin/Gnuton) single access point (AP) mode routers and mesh AP systems.
Limitations
Beta Testing
Beta testing will be coordinated via Discord for easier log collection and discussion.
But I also accept PM with logs and issues here.
Join via the link if you want to be a part of the Beta testing on Discord! MerVLAN Discord Link
# MerVLAN
MerVLAN is an addon for Asuswrt‑Merlin focused on AP-mode deployments. It provides multi-node VLAN management with per-SSID and per‑Ethernet‑port tagging, a lightweight web UI, and boot/service-event integration so changes persist across reboots. Addon is placed under the "LAN" section on the UI.
# Important
Addon is in beta. Issues might be present.
Please join the discord server or send PM with logs if you run into issues.
Use
Code:
tail -f /tmp/mervlan_tmp/logs/cli_output.log
and
Code:
tail -f /tmp/mervlan_tmp/logs/vlan_manager.log
To see and copy relevant logs.
## Features
- Per-SSID and per‑Ethernet‑port VLAN tagging
- Multi-node support: propagate actions to configured nodes over SSH
- Automatic boot integration via services-start and service-event
- Simple web UI served from the router under /www/user/mervlan
- Safe, variant-aware injection/removal for startup scripts (no blind overwrite)
- Structured logging to /tmp/mervlan_tmp/logs and optional syslog tagging
- First-install “full” workflow that lays out directories and downloads the addon
## Requirements
- **Asuswrt-Merlin firmware** with addon support (required on all devices that is supposed to tag VLAN)
- **SSH enabled** on the main AP and standalone AP's (AiMesh-nodes share SSH keys)
- **JFFS enabled** for persistent storage
- (Important!) **AP-mode only for now**
- (Important!) **VLAN-aware upstream device** (e.g., managed switch and/or router such as OPNsense, pfSense, Asus Pro etc.) VLAN routing, rules, and DHCP must be handled **upstream**, MerVLAN only handles tagging and bridging at the AP level for the time being. (Investigations into alternative ways are being done.)
- (Important!) **Ethernet Backhaul ONLY** Wi-Fi backhaul is not capable of preserving VLANs. This is a know limitation and nothing i can affect. (Research of L3 tunneling via Wireguard is being done, but no promises here.)
- Nodes and/or Access Points need to connect to VLAN-aware switches (planned scripts for VLAN-tagged trunks is currently being developed, will need extensive testing. If you want to be a part of this select test, contact me)
##
- You can connect **multiple APs together**, even if they are **different Asus models**, as long as they all run Asuswrt-Merlin with addon support
- SSH key distribution between units not in AiMesh mode is **manual** for now; a **semi-automated SSH key installer script** is currently in development
- Mixed-model or multi-AP setups require **testing and debugging** to verify correct behavior across firmware variations
## VLAN Behavior (Current State)
- **LAN port VLAN tagging is global** — the same VLAN assignments apply to all APs/nodes
- Support for **per-device LAN port VLAN settings** is in active development
- Until then, if you want different VLAN tags on specific APs, you’ll need to apply manual configuration steps via SSH on each device after deployment
## Known Bugs
Can occasionally **overwrite or remove existing content** in `services-start` and `service-event` during install or updateFixed,will be committed in next release.Committed 2025-11-13Specific SSID names can cause misses.Fixed in mervlan_manager.sh v0.47
## Install
Only install if you want to participate in the Beta! Bugs can and will probably be present and you might need to factory-reset in a worst-case scenario.
SSH into the AP and run this command to install the addon. The addon will
be placed under "Tools" in the GUI.
## Uninstall
- Standard uninstall:
- Full uninstall (also removes addon directories and temp workspace):
be placed under "Tools" in the GUI.
Code:
mkdir -p /jffs/addons/mervlan && /usr/sbin/curl -fsL --retry 3 "https://raw.githubusercontent.com/r80xcore/mervlan/refs/heads/main/install.sh" -o "/jffs/addons/mervlan/install.sh" && chmod 0755 /jffs/addons/mervlan/install.sh && /jffs/addons/mervlan/install.sh full
## Uninstall
- Standard uninstall:
Code:
/jffs/addons/mervlan/uninstall.sh
Code:
/jffs/addons/mervlan/uninstall.sh full
## Logs
- Primary log dir: /tmp/mervlan_tmp/logs
- The UI exposes log views via symlinks under /www/user/mervlan/tmp/logs
- Logging behavior, colors, and syslog tagging are configured in settings/log_settings.sh
## License
See LICENSE for details.
The tool was developed on an ASUS XT8 Mesh System, but it is designed to work with most newer (officially supported by Merlin/Gnuton) single access point (AP) mode routers and mesh AP systems.
Limitations
- The maximum number of VLANs (up to 12) depends on the number of SSIDs your device supports.
For example, if your router supports only 5 SSIDs, you cannot configure more than 5 VLANs. - Mesh functionality is limited by ASUS’s firmware design.
For instance, some models support nine guest SSIDs but only three (one per band) are mesh-enabled.
Non-mesh SSIDs can still be assigned VLANs but will only broadcast from the main node. - Devices connected to VLANs cannot be bound to specific nodes.
- VLAN devices use standard band steering, which cannot currently be customized per VLAN.
- Mesh users: VLAN tagging is only supported when nodes are connected via Ethernet backhaul. This limitation is due to the underlying hardware and wireless driver design—the WiFi backhaul does not support passing VLAN-tagged traffic. It's currently tested with Node - > Switch topology, daisy chaining is not tested and will most likely drop tagged traffic, but Daisy Chaining mode is planned for future release!
Beta Testing
Beta testing will be coordinated via Discord for easier log collection and discussion.
But I also accept PM with logs and issues here.
Join via the link if you want to be a part of the Beta testing on Discord! MerVLAN Discord Link
Last edited:
