Puente de red
Contenido
Descripción
Un 'puente' o bridge es un dispositivo de interconexión de redes de ordenadores que opera en la capa 2 (nivel de enlace de datos) del modelo OSI. Este interconecta dos segmentos de red (o divide una red en segmentos) haciendo el pasaje de datos de una red hacia otra, con base en la dirección física de destino de cada paquete.
Un bridge conecta dos segmentos de red como una sola red usando el mismo protocolo de establecimiento de red.
En el fondo, hace funcionar dos o más tarjetas de red como si fuesen 1 sola, utilizando sólo una dirección IP.
Esto permite conectar tres o más computadores a Internet cuando ésta llega sólo a uno de ellos.
¿Cuándo se utiliza?
El caso más común se genera cuando tengo tres o más equipos y sólo uno de ellos posee internet. Además están todos conectados por red y quiero que desde cada uno de los equipos se pueda visualizar los otros, ya sea para compartir archivos o para otro fin.
A continuación se muestra un esquema de la red, pero se omite que además el PC2 recibe internet por otra tarjeta, como eth2 o wlan0:
PC1-eth0-------eth0-PC2-eth1-----------eth0-PC3
Instalación
Si usted utiliza Kubuntu, revise también Guía Kubuntu en la sección sobre trabajar en la Terminal.
Bridge-Utils
Primero necesitamos el paquete que contiene las utilidades del Puente de Red.
$ sudo apt-get install bridge-utils
Generar el Puente
Para esto, generaremos un sencillo script. Primero debemos crear un archivo llamado puente en /etc/init.d , entonces escribimos en la terminal:
1) Vamos a la carpeta etc y luego a init.d
$ cd .. $ cd .. $ cd etc $ cd init.d
2) Creamos el archivo puente, utilizando el editor de texto gedit. Con ello se abrirá un archivo vacío.
$ sudo gedit puente
3) Depende del caso en que estemos; mirar más abajo.
4) Cerramos el archivo guardando y le damos permiso de ejecución:
sudo chmod +x puente
5) Lo añadimos para ejecución al inicio:
sudo update-rc.d puente defaults
6) Reiniciar el equipo
7) Configuramos los otros equipos:
Dónde se ha instalado el puente cogerá la dirección IP 192.168.0.1 con máscara de subred 255.255.255.0 Además éste equipo será la Puerta de Enlace (gateway) (192.168.0.1).
Entonces, los otros equipos deben tener la misma máscara y una IP de forma 192.168.0.X (no usar el 1 y sin repetir entre ellas), además de especificar la Puerta de Enlace y el Servidor DNS a 192.168.0.1 u otro de internet que les plazca.
Paso tres: Creación del Puente
Pegamos en el archivo recién abierto el script que está más abajo. Primero debemos definir, cuales son las tarjetas de red. Suponiendo que se recibe internet inalámbrica, entonces wlan0 será la tarjeta que recibe internet. Y eth0 y eth1 serán añadidas al puente y se comportarán como una sola.
Además se creará un nuevo elemento br0, el Puente (se puede verificar en Herramientas de Red).
#!/bin/bash #Creacion del Puente brctl addbr br0 brctl addif br0 eth0 brctl addif br0 eth1 ifconfig eth0 down ifconfig eth1 down ifconfig eth0 0.0.0.0 up ifconfig eth1 0.0.0.0 up ifconfig br0 192.168.0.1 netmask 255.255.255.0 up route add default gateway 192.168.0.1 #Compartiendo Internet iptables --flush iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE iptables -A FORWARD -i br0 -j ACCEPT echo 1 > /proc/sys/net/ipv4/ip_forward