Hi everyone,
I am trying to create a script for my GL-MT6000 (Flint 2) to automate SQM. The goal is to detect when my gaming console is ON, disable Hardware/Software Offloading (to allow SQM to work), and re-enable Offloading when the console is OFF (to get full 1Gbps speeds).
The problem: I cannot find a reliable way to toggle Flow Offloading via CLI without rebooting the router or losing internet connection. The standard OpenWrt commands do not seem to apply the changes effectively, or the GL.iNet proprietary services (gl_s2s / tertf) override them.
What I have tried:
I am running this logic in my script:
# To Disable Acceleration:
uci set firewall.@defaults[0].flow_offloading='0'
uci set firewall.@defaults[0].flow_offloading_hw='0'
# I also tried disabling GL.iNet specific services:
uci set gl_s2s.general.enable='0'
uci commit firewall
uci commit gl_s2s
# Apply changes:
/etc/init.d/firewall reload
conntrack -F
The Issues:
-
State Mismatch: Even if I change the UCI config, the GL.iNet Admin Panel still shows "Network Acceleration" as Enabled.
-
Performance: Speedtests show that acceleration is still active (speeds > 900Mbps) even after running the disable commands and flushing conntrack. SQM does not limit the bandwidth, meaning the traffic is bypassing the CPU (still being offloaded).
My Question: What is the canonical, correct command sequence on the Flint 2 to programmatically enable/disable Hardware/Software Offloading and apply it immediately without a full reboot?
Do I need to stop specific services like gl_s2s or tertf manually? Is there a specific command to unbind the PPE/HWNAT driver on this MediaTek kernel?
Any help is appreciated. Thanks!
