0.8.6
0.8.6 (IPv6, DoH blocking, Component Manager - tested on real hardware)
• IPv6 support - full routing through the tunnel (v6 tproxy, v6 DNS, v6 FakeIP, localv6 nft sets)
✅ tested on real hardware (aarch64, OpenWrt 24.10) - v6 tproxy rule installs correctly as [::1]:1603
✅ opt-in: turn it on with "Enable IPv6", off by default
• DoH blocking - stop clients on your LAN from bypassing the router's DNS over DNS-over-HTTPS
✅ blocks known DoH endpoints (IPv4 + IPv6) at the sing-box routing layer
• New tab "Component Manager" - manage NetShift and the sing-box core in one place
✅ three cards: NetShift / sing-box (stock) / sing-box (extended)
✅ installed version shown instantly, "Check update" on demand, status badge (latest / outdated / not installed)
✅ core switching moved here from Diagnostics
✅ theme-safe styling - looks right on custom LuCI themes too
• NetShift self-update - update NetShift straight from the web UI
✅ async, anti-brick: checks/heals connectivity before installing, backs up your config, never bricks the router
✅ non-interactive; Russian locale updated only if already installed
• Subscriptions by IP address (no domain) + "broken" HTTPS
✅ you can now add a subscription URL with an IP host, e.g. https://22.23.1.52:2096/sub/xxxx (used to be rejected as "Invalid URL format")
✅ new opt-in "Allow insecure TLS for subscription fetch" - works with http, https, AND IP-host panels with self-signed / mismatched certs
• Global proxy mode + DNS-over-proxy + sing-box health monitor
✅ route everything through a chosen outbound (global_proxy)
✅ send DNS through the proxy (detour)
✅ background watchdog restarts sing-box if it crashes (no duplicate monitors, with backoff)
• Fixes
✅ IPv6 tproxy rule was emitted without brackets (::1:1603) and silently lost its port - fixed to [::1]:1603, verified on real hardware
✅ extended core falsely showed "update available" to the SAME version (GitHub tag "v" prefix) - now compared correctly
✅ removed a stale "mangle output counters" diagnostic warning (a zero counter there is normal in the new routing model)
✅ stricter IPv6 address / subnet validation
Big thanks to @spgsroot for the IPv6 + DoH-blocking contribution (PR #11) 🙌