gnirehtet
brew install gnirehtet
v2.5.1
Apache-2.0
Reverse tethering tool for Android
130
30-day installs · #3122
338
90-day · #3359
1.2k
365-day · #3518
7.7k
★ GitHub stars · updated 2y ago
Build dependencies
GitHub topics
android
java-8
reverse-tethering
rust
vpn
Links
- https://github.com/Genymobile/gnirehtet
- GitHub: Genymobile/gnirehtet
- Brew formula source: Formula/g/gnirehtet.rb
Caveats
At runtime, adb must be accessible from your PATH. You can install adb from Homebrew Cask: brew install --cask android-platform-tools
Raw metadata
{
"aliases": [],
"alternatives": [],
"build_dependencies": [
"rust"
],
"categories": [],
"caveats": "At runtime, adb must be accessible from your PATH.\n\nYou can install adb from Homebrew Cask:\n brew install --cask android-platform-tools\n",
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Reverse tethering tool for Android",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:38:12+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "gnirehtet",
"github_default_branch": "master",
"github_last_commit_at": "2024-08-11T05:17:19Z",
"github_readme_excerpt": "# Gnirehtet (v2.5.1)\n\nThis project provides **reverse tethering** over `adb` for Android: it\nallows devices to use the internet connection of the computer they are plugged\non. It does not require any _root_ access (neither on the device nor on the\ncomputer). It works on _GNU/Linux_, _Windows_ and _Mac OS_.\n\nCurrently, it relays [TCP] and [UDP] over [IPv4] traffic, but it does not\nsupport [IPv6] (yet?).\n\n[TCP]: https://en.wikipedia.org/wiki/Transmission_Control_Protocol\n[UDP]: https://fr.wikipedia.org/wiki/User_Datagram_Protocol\n[IPv4]: https://en.wikipedia.org/wiki/IPv4\n[IPv6]: https://en.wikipedia.org/wiki/IPv6\n\n_**This project is not actively maintained anymore, only major blockers (like\nbuild issues) are fixed. It should still work, though.**_\n\n\n## Flavors\n\nTwo implementations of _Gnirehtet_ are available:\n - one in **Java**;\n - one in **Rust**.\n\n\n### Which one to choose?\n\nUse the **Rust** implementation. The native binary consumes less CPU and memory,\nand does not require a _Java_ runtime environment.\n\nThe relay server of _Gnirehtet_ was initially only implemented in Java. As a\nbenefit, the same \"binary\" runs on every platform having _Java 8_ runtime\ninstalled. It is still maintained to provide a working alternative in case of\nproblems with the Rust version.\n\n\n## Requirements\n\nThe Android application requires at least API 21 (Android 5.0).\n\nFor the _Java_ version only, _Java 8_ (JRE) is required on your computer. On\nDebian-based distros, install the package `openjdk-8-jre`.\n\n### adb\n\nYou need a recent version of [adb] (where `adb reverse` is implemented, it\nworks with 1.0.36).\n\nIt is available in the [Android SDK platform tools][platform-tools].\n\nOn Debian-based distros, you can alternatively install the package\n`android-tools-adb`.\n\nOn Windows, if you need `adb` only for this application, just download the\n[platform-tools][platform-tools-windows] and extract the following files to the\n_gnirehtet_ directory:\n - `adb.exe`\n - `AdbWinApi.dll`\n - `AdbWinUsbApi.dll`\n",
"github_repo": "Genymobile/gnirehtet",
"github_stars": 7713,
"github_topics": [
"android",
"java-8",
"reverse-tethering",
"rust",
"vpn"
],
"homepage": "https://github.com/Genymobile/gnirehtet",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 130,
"installs_365d": 1223,
"installs_90d": 338,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "Apache-2.0",
"llm_generated_at": null,
"llm_model": null,
"name": "gnirehtet",
"oldnames": [],
"one_liner": null,
"optional_dependencies": [],
"rank_30d": 3122,
"rank_365d": 3518,
"rank_90d": 3359,
"raw_hash": "11a650ea60910a16",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/g/gnirehtet.rb",
"tap": "homebrew/core",
"test_dependencies": [
"socat"
],
"uses_from_macos": [],
"version_head": "HEAD",
"version_stable": "2.5.1",
"versioned_formulae": [],
"why_use_this": null
}