You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+49-20Lines changed: 49 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,35 +1,51 @@
1
1
# AsteriskNG
2
2
3
-
An Xray client for Android, powered by [Xray-core](https://github.com/XTLS/Xray-core) and [AndroidLibXrayLite](https://github.com/2dust/AndroidLibXrayLite).
3
+
An Xray client for Android, powered by [Xray-core](https://github.com/XTLS/Xray-core), [AndroidLibXrayLite](https://github.com/2dust/AndroidLibXrayLite), and [hev-socks5-tunnel](https://github.com/heiher/hev-socks5-tunnel).
4
4
5
-
###Telegram Channel
5
+
## Telegram Channel
6
6
7
7
[Asterisk4Magisk](https://t.me/Asterisk4Magisk)
8
8
9
-
###Features
9
+
## Features
10
10
11
-
- VPN Serviceand TPROXY(ROOT) run modes
11
+
- VPN Service, TPROXY(ROOT), and TUN2SOCKS(ROOT) run modes
- Subscription groups, QR code import, latency testing, and per-app proxy
14
-
- Resource file management for `geoip.dat`, `geosite.dat`, and Xray-core
13
+
- Subscription groups, QR code import, latency testing, and app proxy modes
14
+
- Resource file management for `geoip.dat`, `geosite.dat`, and the Xray executable
15
+
- ROOT start-on-boot script generation through Magisk `service.d`
15
16
- MIUIX Compose UI
16
17
17
-
### Usage
18
+
##Run Modes
18
19
19
-
#### Geoip and Geosite
20
+
###VPN Service
20
21
21
-
-`geoip.dat` and `geosite.dat` are stored in the app private `files/xray` directory, commonly `/data/user/0/org.asterisk.zcc.ang/files/xray`.
22
-
- Resource files can be updated in the app from [Loyalsoldier/v2ray-rules-dat](https://github.com/Loyalsoldier/v2ray-rules-dat), [v2fly/geoip](https://github.com/v2fly/geoip) and [v2fly/domain-list-community](https://github.com/v2fly/domain-list-community), or [Chocolate4U/Iran-v2ray-rules](https://github.com/Chocolate4U/Iran-v2ray-rules).
23
-
- Third-party `geoip.dat` and `geosite.dat` files can be imported manually from Resource management.
24
-
- Xray-core can also be replaced manually with an `xray` executable file or a zip archive containing `xray`.
22
+
- Works without root permission.
23
+
- Uses Android `VpnService`.
24
+
- Suitable for normal Android app-level VPN usage.
25
25
26
-
#### Run Mode
26
+
###TPROXY(ROOT)
27
27
28
-
- VPN Service mode works without root permission and uses Android `VpnService`.
29
-
- TPROXY mode requires ROOT permission and uses the local Xray executable with iptables rules.
30
-
- Start on boot can generate a Magisk `service.d` script for TPROXY mode.
28
+
- Requires root permission.
29
+
- Runs the local Xray executable directly with libsu.
30
+
- Uses iptables and policy routing for transparent proxy traffic.
31
+
- Uses the configured transparent proxy port as the Xray inbound.
31
32
32
-
### Development guide
33
+
### TUN2SOCKS(ROOT)
34
+
35
+
- Requires root permission.
36
+
- Runs the local Xray executable directly with libsu.
37
+
- Uses `hev-socks5-tunnel` to create the fixed TUN device `asterisk0`.
38
+
- Uses Xray's local SOCKS5 inbound as the tunnel target.
39
+
- Shares most ROOT routing and app proxy behavior with TPROXY, but routes traffic through the TUN device instead of Xray's TPROXY inbound.
40
+
41
+
## Resource Files
42
+
43
+
- Runtime files are stored in the app private `files/xray` directory, commonly `/data/user/0/org.asterisk.zcc.ang/files/xray`.
44
+
- The bundled Xray executable is restored from native libraries and can be replaced manually with an `xray` executable file or a zip archive containing `xray`.
45
+
-`geoip.dat` and `geosite.dat` can be restored from bundled assets, updated from online sources, or replaced manually.
46
+
- Built-in update sources include [Loyalsoldier/v2ray-rules-dat](https://github.com/Loyalsoldier/v2ray-rules-dat), [v2fly/geoip](https://github.com/v2fly/geoip), [v2fly/domain-list-community](https://github.com/v2fly/domain-list-community), and [Chocolate4U/Iran-v2ray-rules](https://github.com/Chocolate4U/Iran-v2ray-rules).
47
+
48
+
## Development
33
49
34
50
Open the project root in Android Studio, or build it with Gradle wrapper:
35
51
@@ -43,21 +59,34 @@ On macOS or Linux:
43
59
./gradlew assembleDebug
44
60
```
45
61
46
-
The build downloads the bundled Xray-core asset and compiles the native `setuidgid` helper. If Gradle cannot find Android NDK, set `ndk.dir` in `local.properties`, set `ANDROID_NDK_HOME`, or install an NDK under the Android SDK.
62
+
The build:
63
+
64
+
- uses the Android SDK and NDK
65
+
- downloads or prepares the bundled Xray-core asset
66
+
- builds the native `setuidgid` helper
67
+
- packages native runtime components for `arm64-v8a`, `armeabi-v7a`, `x86`, and `x86_64`
68
+
69
+
If Gradle cannot find Android NDK, set `ndk.dir` in `local.properties`, set `ANDROID_NDK_HOME`, or install an NDK under the Android SDK.
70
+
71
+
## WSA
47
72
48
73
For WSA, VPN permission can be granted with:
49
74
50
75
```bash
51
76
appops set org.asterisk.zcc.ang ACTIVATE_VPN allow
0 commit comments