Compartiendo Internet

En casa hay cuatro máquinas, algunas en producción y otras de desarrollo (¿?), y una está conectada a Internet (la mía). Me propuse compartir la conexión para que todas tengan banda ancha sin tener que pagar más conexiones.

Antes que nada, tenía que decidir si era posible trabajar con una sola placa de red, conectando mi placa, las otras tres máquinas y el módem ADSL a un HUB. Para esto debía hacer que mi placa de red trabajase con dos IPs, la pública (que es la que me asigna Speedy) y una privada, para la LAN hogareña. Luego de investigar bastante en Internet, llegué a la conclusión de que no sólo es más complicado, sino que esta solución no funciona muy bien a menos que sepamos configurar muy bien el tema de las colisiones y demás inconvenientes ocasionados por la dualidad de IPs para la misma placa. Como no quería meterme en más de quince quilombos al mismo tiempo, decidí comprar otra placa de red y agregarla a mi máquina.

Como las placas de red son algo que duran, y no se ponen tecnológicamente viejas, compré una buena: 3Com. No sabía muy bien como instalar una segunda placa de red en el Linux, por lo que quise buscar un poco en Internet como hacerlo. Como no encontré nada en los primeros cinco minutos decidí probar a ver que pasaba. Abrí la máquina, coloqué la placa, cerré, enchufé, arranqué el Linux (Fedora Core 3). En tiempo de booteo, el Linux busca nuevo hardware, y me saltó un cartelito indicando que había encontrado una nueva placa de red (especificando el exacto modelo que yo tenía), que si la quería configurar ahora, después o nunca. Dije "ahora", le cargué la IP correspondiente, y listo, ¡voilá!, tenía dos placas de red.

El Linux terminó de arrancar y me quise conectar a Internet, pero no se conectaba. Como root tiré un ifconfig -a y me di cuenta que, aunque antes la única placa que tenía era eth0, la nueva placa se había puesto como eth0 y la vieja estaba como eth1. Entonces fui a la configuración de la red, y puse que Speedy estaba en eth1 y no en eth0 como antes. Listo, ahora también tenía Internet.

Siguiendo este howto, configuré algunos detallitos y reinicié la red para que tome los cambios (un comando, nada de apagar la PC ni esas cosas...). Este tutorial, sin embargo, me explicaba las reglas de ipchains para configurar el IP-Masquerading (que es lo que permite compartir conexión), así que seguí con este post en un foro que explicaba usando iptables (que es lo que traen los Linuxes modernos para decir qué entra y qué en la máquina a nivel de red).

Fui analizando que significaba cada opción, y ejecuté alguno de las órdenes que decía, otras no. Configuré la máquina de mi viejo, para la red nueva interna que había armado ahora, pero no funcionaba. Tenía ping al exterior, pero no DNS. Así que levanté un DNS en mi máquina, pero tampoco: entonces tenía que bajar un nivel a ver que pasaba. Abrí el ethereal y vi que mi máquina estaba rechazando las conexiones. Entonces me puse a ver las reglas de iptables y me di cuenta que estaba haciendo pasar por el firewall a las máquinas internas también. Puse para aceptar todo lo que venga de adentro, y listo, ¡funcionó!.

:D

Comentarios Imprimir