این مخزن، کلاینت اندروید GooseRelayVPN است که هسته GooseRelay را از طریق Go mobile اجرا میکند و رابط کاربری کامل برای مدیریت VPN، پروفایلها، لاگها و تنظیمات ارائه میدهد.
این اپ یک SOCKS5 محلی روی اندروید ایجاد میکند و ترافیک TCP را از معماری GooseRelay عبور میدهد:
این مسیر با VpnService اندروید یکپارچه شده تا ترافیک کامل یا انتخابی از تونل عبور کند.
VpnService + tun2socks)فیلدهای پروفایل با مدل کلاینت GooseRelay هماهنگ است:
{
"debug_timing": false,
"socks_host": "127.0.0.1",
"socks_port": 1080,
"google_host": "216.239.38.120",
"sni": ["www.google.com", "mail.google.com", "accounts.google.com"],
"script_keys": [
"REPLACE_WITH_DEPLOYMENT_ID",
"OPTIONAL_SECOND_DEPLOYMENT_ID"
],
"tunnel_key": "REPLACE_WITH_OUTPUT_OF_scripts_gen-key.sh"
}
نکات:
- در UI، script_keys باید خطبهخط وارد شود.
- tunnel_key باید با سمت سرور یکی باشد.
- فرمت Import/Export در اپ: JSON
قبل از استفاده از کلاینت اندروید، زیرساخت پروژه اصلی باید آماده باشد:
goose-serverapps_script/Code.gs و گرفتن Deployment IDscripts/gen-key.shscript_keys و tunnel_key در پروفایل اندرویدراهنمای کامل زیرساخت در پروژه اصلی: - https://github.com/kianmhz/GooseRelayVPN
پیشنیازها: - Android Studio - JDK 17 - Go 1.22+ - Android SDK / NDK
ساخت AAR (پل Go mobile):
bash android/build_go_mobile.sh
ساخت APK دیباگ:
cd android
./gradlew :app:assembleDebug
Workflowهای این مخزن:
- .github/workflows/android-ci.yml
- .github/workflows/release-manual.yml
- .github/workflows/release.yml
Secretهای لازم برای انتشار دستی امضاشده:
- ANDROID_KEYSTORE_BASE64
- ANDROID_KEYSTORE_PASSWORD
- ANDROID_KEY_ALIAS
- ANDROID_KEY_PASSWORD
script_keys و tunnel_key را بررسی کنید.https://github.com/kianmhz/GooseRelayVPN
پروژهای که ایده پروژه اصلی از آن الهام گرفته شده است:
$ claude mcp add GooseRelayVPN-AndroidClient \
-- python -m otcore.mcp_server <graph>