Cómo invertir Tether de Linux a Android con Gnirehtet

En el pasado, si deseaba invertir la conexión de Linux a Android, tenía que usar tablas de IP, conexiones en puente y otras herramientas demasiado complejas. Sin embargo, gracias al arduo trabajo de un desarrollador, el anclaje inverso se ha hecho más fácil.

¡Presentamos Gniretet! Es un programa experimental que funciona como un servicio en segundo plano para crear un sistema de conexión inversa USB que funcione, lo que le permite invertir la conexión de Linux a Android.

Nota: antes de intentar seguir esta guía, asegúrese de que su dispositivo Android tenga acceso de root. Sin acceso de root, muchas de las operaciones que necesita Gniretet no funcionarán correctamente.

Obtener acceso Root en Android es más fácil que nunca y muchos dispositivos tienen tutoriales detallados. Consulte los foros de XDA para obtener más información.

Instalar herramientas de Android

El anclaje inverso con GNirehtet funciona gracias a las herramientas de desarrollo de Android. Antes de continuar con esta guía, debe instalarla en Linux. Afortunadamente, la mayoría de las distribuciones de Linux facilitan este proceso. Abra una terminal y siga las instrucciones basadas en su sistema operativo.

  Cómo ver transmisiones de Twitch sin un navegador en Linux

Ubuntu

sudo apt install android-tools

Debian

sudo apt-get install android-tools

Arch Linux

sudo pacman -S android-tools

Fedora

sudo dnf install android-tools

OpenSUSE

sudo zypper in android-tools

Linux genérico

Google es muy compatible con la plataforma Linux y, como resultado, el kit de herramientas SDK de Android está disponible. Para instalarlo en su sistema operativo, dirígete a la página oficial. ¡Extraiga el archivo descargado y siga las instrucciones que contiene!

Instalar Gnirehtet

Gnirehtet está disponible en Github. El código fuente se puede descargar y está listo para su compilación. Sin embargo, es mucho más fácil dirigirse a la página de lanzamiento y descargar una versión precompilada del software. En la página de lanzamiento, hay una versión de Java y una versión de Rust. Para facilitar su uso, recomendamos descargar la versión Rust, ya que no requiere la instalación de un entorno de ejecución de Java.

Nota: ¿decide utilizar la versión de Java? Necesitarás instalar el Entorno de ejecución de Java en Linux.

Para descargar la última versión de Gnirehtet, abra una terminal y use la herramienta wget.

wget https://github.com/Genymobile/gnirehtet/releases/download/v2.2.1/gnirehtet-rust-linux64-v2.2.1.zip

Alternativamente, descargue la versión de Java, con:

wget https://github.com/Genymobile/gnirehtet/releases/download/v2.2.1/gnirehtet-java-v2.2.1.zip

Una vez que se descargue Gnirehtet, use la herramienta de descompresión para extraer el contenido del archivo Zip.

unzip gnirehtet-rust-linux64-v2.2.1.zip

o

unzip gnirehtet-java-v2.2.1.zip

Abra el administrador de archivos, navegue hasta la carpeta «Gnirehtet». Copie el archivo gnirehtet.apk en su dispositivo Android e instálelo.

  Cómo comprobar si el gestor de arranque está desbloqueado o bloqueado en Android

Abra una terminal y use el comando CD para moverse a la carpeta Gnirehtet extraída.

cd ~/gnirehtet-*

Configurar Android para Tethering

La herramienta Gnirehtet no funcionará sin algunos ajustes en el sistema operativo Android. Comience abriendo «Configuración». Ve a «Acerca del teléfono» y toca el número de compilación hasta que aparezca una notificación que diga «Ahora eres un desarrollador».

Vaya a las opciones de desarrollador, busque la depuración «USB» y habilítela.

Abra una terminal e inicie un servidor Adb.

su -

o

sudo -s
adb start server

Desbloquee su dispositivo Android y marque la casilla para «aceptar siempre» las conexiones ADB. Luego regrese a la terminal que ejecuta el servidor ADB y elimínelo.

adb kill-server

Usando Gnirehtet

Gnirehtet funciona creando una conexión entre su PC con Linux y el dispositivo Android a través de USB. Para iniciar una conexión, abra una terminal y obtenga un shell de root.

su -

o

sudo -s

Con un shell raíz, la aplicación Gnirehtet puede funcionar con el sistema Linux sin problemas y comunicarse a través de ADB con el dispositivo Android. En este punto, inicie la conexión:

./gnirehtet autorun

Al iniciar la conexión con Gnirehtet, aparecerá un nuevo mensaje de conexión VPN en su dispositivo Android. Desbloquéalo y acepta la conexión.

Después de aceptar la conexión VPN, Gnirehtet comenzará con éxito a enrutar una conexión a Internet a través de USB directamente al dispositivo Android.

  Cómo agregar un directorio a su $ PATH en Linux

Reconectando

A veces, los cables USB vienen desconectados. En caso de que esto suceda mientras se ejecuta el servicio Gnirehtet, la conexión finalizará. Afortunadamente, el programa tiene una función que los usuarios pueden ejecutar para restaurar instantáneamente una conexión perdida.

Para restaurar una conexión, abra una terminal, obtenga un shell de root con su o ejecute con sudo.

cd ~/gnirehtet-*

Dentro de la carpeta Gnirehtet, ejecute el programa con la bandera de reinicio. Esto reiniciará el sistema de anclaje inverso.

sudo ./gnirehtet restart

Cuando el comando termine de ejecutarse, desbloquee el dispositivo Android y vuelva a aceptar la conexión VPN para finalizar el proceso de reinicio.

Detener conexión

La correa inversa se puede apagar en cualquier momento. Para hacerlo, abra una nueva terminal (deje abierta la existente que ejecuta la conexión) y haga lo siguiente:

cd ~/gnirehtet-*

sudo ./gnirehtet stop

A veces, ejecutar el comando de parada no siempre anula la conexión de anclaje inverso. Si esto sucede, deberá obligar a Gnirehtet a salir.

Para matar a Gnirehtet, busque el ID del proceso usando pidof, luego detenga el programa con el comando kill.

pidof ./gnirehtet

sudo kill -9 processnumber