#Bug: Repeater mode enables ap_isolate, blocking WiFi client-to-client
communication — GL-MT1300 firmware 4.3.25
##Problem
When using the Beryl MT1300 in repeater mode, devices connected to the
router's WiFi cannot communicate with each other. They can reach the router
itself (192.168.8.1) but cannot connect to services running on other devices
on the same network. Disabling repeater mode restores client-to-client
connectivity.
The root cause is that GL-iNet's oui-httpd binary forces ap_isolate=1 in the
hostapd configuration (/tmp/run/hostapd-phy0.conf and
/tmp/run/hostapd-phy1.conf) whenever repeater mode is active. This overrides
the UCI wireless setting (isolate='0'), which is correctly set to 0. The LuCI
"Client Isolation" checkbox appears off, giving no indication that isolation
is actually active.
This affects any use case where devices on the travel router need to talk to
each other — local servers, IoT devices, peer-to-peer services etc.
##Workaround
Two scripts are needed: one to fix the issue at boot, and one to fix it
whenever the repeater connection is toggled.
Create /etc/init.d/fix-ap-isolate (fixes on boot):
#!/bin/sh /etc/rc.common
START=100
start() {
sed -i 's/ap_isolate=1/ap_isolate=0/g'
/tmp/run/hostapd-phy0.conf
/tmp/run/hostapd-phy1.conf 2>/dev/null
ubus call hostapd.wlan0 reload
ubus call hostapd.wlan1 reload
}
Then enable it:
chmod +x /etc/init.d/fix-ap-isolate
/etc/init.d/fix-ap-isolate enable
Create /etc/hotplug.d/iface/99-zzz-fix-ap-isolate (fixes on repeater
toggle):
#!/bin/sh
[ "$ACTION" = "ifup" ] || exit 0
[ "$INTERFACE" = "wwan" ] || exit 0
sleep 3
sed -i 's/ap_isolate=1/ap_isolate=0/g'
/tmp/run/hostapd-phy0.conf
/tmp/run/hostapd-phy1.conf 2>/dev/null
ubus call hostapd.wlan0 reload
ubus call hostapd.wlan1 reload
Then make it executable:
chmod +x /etc/hotplug.d/iface/99-zzz-fix-ap-isolate
The hotplug script triggers when the upstream repeater connection (wwan
interface) comes up, waits 3 seconds for oui-httpd to finish applying its
configuration, then patches the conf files and reloads hostapd via ubus. Note
there will be a short delay after cold boot before client-to-client
connectivity is available, as the fix only runs once the repeater has
connected to the upstream network.
Note: wifi reload cannot be used as the reload mechanism as it triggers
oui-httpd to re-apply ap_isolate=1. The correct mechanism is ubus call
hostapd.wlan0 reload / ubus call hostapd.wlan1 reload.
This should be fixed in firmware so that oui-httpd does not override the UCI
isolate setting in repeater mode.


