¿Que es Tethering?

Tethering es una manera de acceder a Internet vía el teléfono celular, ya sea por WiFi, cable USB o Bluetooth.

WiFi

Este método convierte el celular en un router inalámbrico que permitirá conectar la computadora vía WiFi. Desde Froyo este método es fácilmente accesible desde el menú. Con Android 4 pude accesarlo en Configuración -> Conexiones inalámbricas y red -> Mas Configuraciones -> Zona portátil y anclaje de red -> Zona WiFi portátil.

Una vez en el menú puede configurar el nombre de la red inalámbrica, la seguridad e incluso restringir los equipos por MAC Address. Es importante hacer notar que este método exige el uso intensivo del Módem 3G y la antena inalámbrica, por lo que gastará mucha batería.

Finalmente valide en el administrador de red de su preferencia, Wicd por ejemplo la nueva red disponible.

USB Tethering

Para utilizar este método requiere activar la Depuración de USB. En el caso de Android 4.0 puede activarlo en Configuración -> Opciones de desarrollador -> Depuración de USB.

Además debe activar el Anclaje a red de USB. En el caso de Android 4.0 puede hacerlo en onfiguración -> Conexiones inalámbricas y red -> Mas Configuraciones -> Zona portátil y anclaje de red -> Anclaje a red de USB.

Dependiendo de la versión de Android que tenga su teléfono celular debe reiniciarlo.

Desconecte y conecte el celular del puerto USB o del cable USB. Si está depurando el procedimiento o probando, desconecte también la red inalámbrica.

Ejecute con sudo o con usuario root:

ifconfig -a

Debe mostrar una salida similar a la siguiente:

eth0      Link encap:Ethernet  HWaddr 04:7d:7b:3d:a5:fc
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:43 Base address:0xc000

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:84 errors:0 dropped:0 overruns:0 frame:0
          TX packets:84 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:7924 (7.7 KiB)  TX bytes:7924 (7.7 KiB)

usb0      Link encap:Ethernet  HWaddr aa:bb:cc:dd:ee:ff
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Si nota existe una interfaz nueva del tipo usbX (donde X es un número), en mi caso es usb0, dependiendo de su computadora podría tener también usb1, usb2, etc. Usualmente es usb0, pero si no fuera así y tuviera varios, desconecte el teléfono y vuelva a ejecutar el comando, verifique cual fue la interfaz que desapareció.

Vamos a trabajar los siguientes ejemplos con usb0 ya que será lo mas común, si no es su caso reemplace con usb1, usb2, etc, en los pasos.

Vamos a configurar la interfaz usb0 para que obtenga DHCP y permita salir a Internet por medio del teléfono:

ifconfig usb0 up && dhclient usb0

Verifique que el equipo tenga salida a Internet.

Fuentes