Skip to content

Releases: NarYuki/OpenSocks

OpenSocks 0.2.13

Choose a tag to compare

@github-actions github-actions released this 21 Aug 08:52

OpenWrt platforms

  • Merged multi-architecture OpenWrt package support contributed by @haotian-lu-prog in #2.
  • Fixed minimal-package CPU detection on little-endian MIPS routers whose kernel reports the generic mips architecture name.
  • Continued to reject binaries whose CPU architecture or byte order does not match the router.

OpenSocks 0.2.12

Choose a tag to compare

@github-actions github-actions released this 21 Aug 08:43

OpenWrt platforms

  • Added signed daemon and full-package builds for mipsel and arm64 routers.
  • Added package architecture aliases for stock OpenWrt and GL.iNet arm64 firmware.
  • Made the minimal package select only a verified binary matching the router CPU.
  • Kept existing mipsel minimal installations compatible with the previous release metadata.

Release delivery

  • Added multi-architecture assets to the signed opkg feed synchronization.
  • Skipped synchronization when the same release is already active to prevent duplicate downloads and storage growth.

OpenSocks 0.2.11

Choose a tag to compare

@github-actions github-actions released this 11 Aug 11:31

Session servers

  • Added independent server selection for the second and third sessions in LuCI and the mobile client.
  • Kept every additional session linked to the main server by default while allowing either session to be pinned separately.
  • Preserved per-session server selections across service and router restarts.
  • Excluded and accounted for every active VPN server address when sessions use different endpoints.

OpenSocks 0.2.10

Choose a tag to compare

@github-actions github-actions released this 11 Aug 08:57

Smart routing

  • Captured LAN DNS through the router so changing service subdomains are learned automatically.
  • Added all .cn domains and every known Chinese-service subdomain to the live Smart routing set.
  • Prevented encrypted-DNS and IPv6 paths from bypassing the observable IPv4 Smart route.
  • Routed and classified Honor of Kings battle servers that are supplied as direct overseas IP addresses.

Controls

  • Applied mobile routing and session selections immediately when an item is tapped and removed the extra Apply button.
  • Preserved unsaved LuCI settings while status information refreshes in the background.

OpenSocks 0.2.9

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:57

Routing controls

  • Fixed the mobile routing sheet dropping Smart/Full China and Single/Dual/Triple changes while restoring the native navigation bar.
  • Kept the routing operation active after the sheet closes so authentication, network configuration, interface processing, completion, and errors remain visible on the main screen.
  • Fixed the LuCI proxy omitting session_count from settings requests.
  • Prevented LuCI status polling from replacing edited routing values while a settings request is running.
  • Kept the selected routing and session modes after service and full-router restarts.

OpenSocks 0.2.8

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:21

Multi-session UDP routing

  • Enabled UDP forwarding on every active session in Dual and Triple modes.
  • Added symmetric flow hashing so each UDP flow remains pinned to one session while separate flows are distributed across the available sessions.
  • Kept the same policy-routing mark on every UDP slot so all selected flows use the existing TPROXY route safely.
  • Validated two- and three-session UDP listeners and nftables rules on the target OpenWrt router.
  • Verified with LAN traffic that 18 independent flows were distributed across all three sessions and that ten packets from one flow remained on a single session.

OpenSocks 0.2.7

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:08

Mobile interface

  • Unified Smart/Full China routing and Single/Dual/Triple session selection in one routing-mode sheet.
  • Displayed the selected routing mode and session mode together on the home routing card.
  • Applied both selections in one network reconfiguration and removed the duplicate session selector from Settings.

OpenSocks 0.2.6

Choose a tag to compare

@github-actions github-actions released this 11 Aug 07:05

Multi-session routing

  • Added Single, Dual, and Triple session modes as supported operating modes in LuCI and the mobile client.
  • Kept Single mode as the default for new installations while preserving the selected mode across service and router restarts.
  • Connected every active session to the selected Transocks line and distributed new China-bound TCP flows across two or three isolated routes with nftables.
  • Added active-session reporting to the control API and mode-aware status indicators to LuCI and the mobile client.
  • Preserved compatibility with installations that previously enabled the dual-session setting.

Speed testing

  • Made speed-test concurrency an internal implementation detail and automatically selected the tested stream count for each session mode.
  • Added three-session speed-test pooling with six internal transfer streams in Triple mode.
  • Improved the China-route benchmark connection pool, idle-connection cleanup, progress update frequency, and memory reclamation on low-memory routers.
  • Expanded Ookla endpoint selection and improved failure handling for SpeedTest.cn and external mainland test servers.

Traffic and routing

  • Expanded China-service classification and corrected service names in the traffic ranking.
  • Improved DNS observation and dynamic service-address tracking for subdomains and short-lived endpoints.
  • Added balanced two-way and three-way nftables TCP dispatch while retaining the primary session for UDP routing.
  • Paused background traffic sampling and route recovery during speed tests to reduce CPU and memory contention.

Reliability and validation

  • Added isolated persistent state for each active session and made multi-session login and connection setup failure-safe.
  • Improved connection retry behavior for transient Transocks authentication failures.
  • Passed Go unit tests, the race detector, go vet, MIPS soft-float cross-compilation, Flutter analysis, and Flutter tests.
  • Validated Single, Dual, and Triple modes on the target OpenWrt router; all sessions followed the selected server and produced the expected one-, two-, and three-way nftables rules.

OpenSocks 0.2.5

Choose a tag to compare

@github-actions github-actions released this 11 Aug 04:05

Full Changelog: v0.2.2...v0.2.5

OpenSocks 0.2.2

Choose a tag to compare

@github-actions github-actions released this 11 Aug 03:28

Security

  • Added strict HTTP request-size, header-size, timeout, and concurrency limits.
  • Removed shared-state races from Transocks authentication, settings refresh, and connection switching.
  • Pinned GitHub Actions and LuCI build inputs to immutable commits.
  • Added SHA-256 verification for the downloaded China IPv4 route list.
  • Updated the mobile secure-storage dependency and bounded mobile API responses.

Performance

  • Replaced repeated per-setting UCI processes with a single snapshot read and one commit per update.
  • Added a kernel BPF filter to the DNS observer so unrelated LAN traffic is discarded before reaching Go.
  • Added expiry and bounded caches for dynamically learned domain and service IPs.
  • Reduced persistent traffic-stat writes while retaining one-second live counters.
  • Suspended traffic polling on hidden mobile tabs, prevented overlapping polls, and reused HTTP connections.
  • Added bounded log tailing and automatic log rotation.

Reliability and distribution

  • Added server/client timeouts and bounded concurrent request handling.
  • Corrected JSON error response metadata.
  • Published usign-signed full, minimal, and LuCI packages.
  • Fixed immutable by-sha opkg downloads on HTTP servers that reject symbolic links.

Validation

  • Passed Go unit tests, go vet, race detection, MIPS soft-float cross-compilation, Flutter analysis, and Flutter tests.
  • Verified signed opkg metadata and packages before publication.
  • Installed opensocks-minimal 0.2.2-1 and luci-app-opensocks 0.2.2-1 on the target router and confirmed smart routing, nftables expiry, and the filtered DNS observer.

Full diff: v0.2.1...v0.2.2