Skip to content

Latest commit

 

History

History
106 lines (74 loc) · 4.11 KB

File metadata and controls

106 lines (74 loc) · 4.11 KB

English | 简体中文

AsteriskNG

An Xray client for Android, powered by Xray-core, AndroidLibXrayLite, and hev-socks5-tunnel.

Telegram Channel

Asterisk4Magisk

Features

  • VPN Service, TPROXY(ROOT), and TUN2SOCKS(ROOT) run modes support
  • VMess, VLESS, Trojan, Shadowsocks, Socks, HTTP, Hysteria2, WireGuard, strategy group, and chain proxy support
  • v2rayNG, mihomo subscription format support
  • Resource file management for geoip.dat, geosite.dat, geoip-only-cn-private.dat, and the Xray executable
  • ROOT start-on-boot script generation through Magisk service.d
  • MIUIX Compose UI

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4

Run Modes

VPN Service

  • Works without root permission.
  • Uses Android VpnService.
  • Suitable for normal Android app-level VPN usage.

TPROXY(ROOT)

  • Requires root permission.
  • Runs the local Xray executable directly with libsu.
  • Uses iptables and policy routing for transparent proxy traffic.
  • Uses the configured transparent proxy port as the Xray inbound.

TUN2SOCKS(ROOT)

  • Requires root permission.
  • Runs the local Xray executable directly with libsu.
  • Uses hev-socks5-tunnel to create the fixed TUN device asterisk0.
  • Uses Xray's local SOCKS5 inbound as the tunnel target.
  • Shares most ROOT routing and app proxy behavior with TPROXY, but routes traffic through the TUN device instead of Xray's TPROXY inbound.

Resource Files

Development

Open the project root in Android Studio, or build it with Gradle wrapper:

.\gradlew.bat assembleDebug

On macOS or Linux:

./gradlew assembleDebug

The build:

  • uses the Android SDK and NDK
  • downloads or prepares the bundled Xray-core asset
  • builds the native setuidgid helper
  • packages native runtime components for arm64-v8a, armeabi-v7a, x86, and x86_64

If Gradle cannot find Android NDK, set ndk.dir in local.properties, set ANDROID_NDK_HOME, or install an NDK under the Android SDK.

WSA

For WSA, VPN permission can be granted with:

appops set org.asterisk.zcc.ang ACTIVATE_VPN allow

License

GPL-3.0

Credits