GeuS’ Blog

Junio 1, 2008

Hacer de mi pc un router

Archivado en: Computers & Internet — Etiquetas: — geus @ 1:47 pm

El problema: en mi habitación de mi casa solo una roseta (que vaya al router), me he dejado el switch en el otro piso, quiero internet en mi portátil a toda velocidad, sin wifi, con cable.
El material: Un cable cruzado, una NIC vieja (eth1, la que ya estaba es eth0) que he encontrado en un cajón. Mi sobremesa (geus-server), mi portátil (geus-laptop).
El contexto: Actualmente estoy tras un router en una VPN (192.168.1.0/24). Mi puerta de enlace es (192.168.1.1) y geus-server es 192.168.1.35  con un Ubuntu-Linux (Si, si, ya sé no se debe dar información de este tipo sobre tu red priviada)

La idea: es construir otra subred(192.168.0.0/24) colocando eth1 en geus-server, la conecto con geus-laptop. En teoría con esto me puedo conectar a internet desde mi portátil, solo hace falta que geus-server enrute los paquetes.

Manos a la obra: Para eso tenemos el comando ip. Entre otras cosas este comando permite modificar la tabla de enrutamiento de nuestro pc para configurarlo como un router (también existe el comando route, pero que yo sepa es obsoleto)

  1. Configurar la ip de la nueva NIC
    sudo ifconfig eth1 192.168.0.1
  2. Indicar a geus-server donde está la subred 192.168.0.0/24 y como comunicarse por ella:
    sudo ip route add 192.168.0.0/24 dev eth1 src 192.168.0.1
    (la subred está por la interface eth1 y te debes identificar por esa interface como 192.168.0.1)
  3. Indicar a geus-server que envíe al router las peticiones que vengan de la subred 192.168.0.0/24
    sudo ip route add 192.168.0 via 192.168.1.1 dev eth0 src 192.168.1.35
  4. Finalmente comprobamos el estado de la tabla de rutas
    $ sudo ip route show
    192.168.0.0 via 192.168.1.1 dev eth0  src 192.168.1.35
    192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.35
    192.168.0.0/24 dev eth1  scope link  src 192.168.0.1
    default via 192.168.1.1 dev eth0
  5. Asegurarse de que ningún firewall u otro software esté interfiriendo en el proceso, en mi caso firestarter estaba molestando.

Algunas conclusiones:

Aunque me he llevado varias horas probando cosillas finalmente me he quedado sorprendido con la facilidad con la que puedes configurar redes y subredes. Aún es mas fácil con una aplicación de gnome, Firestarter, que hace de frontend de toda esta administración y con un simple wizzard puedes compartir una conexión de internet (que por supuesto es menos potente que manejar la tabla de enrutamiento, pero para este caso particular también hubiera funcionado).

En fin, con “ip” se pueden hacer infinidad de cosas mas, que quizá algún día pruebe, una de las que me parece interesante es utilizar dos NICs conectadas a diferentes proveedores de internet y realizar un balanceo de la carga por prioridades.

Saludos.

Blog de WordPress.com.