Dar internet a otro pc con cable cruzado

8 12 2007

conexion.png

Para poder darle internet a otro computador solamente con un cable cruzado he encontrado un manual exelente.

Bueno al grano.

Para conectar computadores con ubuntu (ambos) debemos realizar lo siguiente :

Configurar el computador que tiene acceso a internet directamente con los siguientes parametros:
IP Fija : 192.168.0.1
Mascara de SubRed : 255.255.255.0

Configuracion Servidor

Ahora nos creamos un archivo llamado iptablesconf, en el directorio /etc/init.d/ que es donde se encuentran los scripts que se ejecutan cuando el computador es iniciado

 

sudo gedit /etc/init.d/iptablesconf

dentro de este archivos copiamos el siguiente script, cambiando ( segun corresponda en nuestra conexion) las lineas 4 y 6, lo que está con negrita :


#### SCRIPT DE CONFIGURACION DE IPTABLES ####
#!/bin/bash
# Dispositivo de red de internet
EXIF="eth0"
# Dispositivo de red local
INIF="eth1"
# Puertos tcp que se desean redirigir (separados por espacios)
puertosTCP="7778"
# Puertos udp que se desean redirigir (separados por espacios)
puertosUDP="7779"
# ip a la que se le redirigen los puertos
pc2="192.168.0.2"
fail=0
[ -f /etc/default/rcS ] && . /etc/default/rcS
. /lib/lsb/init-functions
log_begin_msg "Aplicando Reglas de Firewall..."
## Borrado de reglas anteriores
iptables -F || fail=1
iptables -X || fail=1
iptables -Z || fail=1
iptables -t nat -F || fail=1
## Establecemos politica por defecto
iptables -P INPUT ACCEPT || fail=1
iptables -P OUTPUT ACCEPT || fail=1
iptables -P FORWARD DROP || fail=1
iptables -t nat -P PREROUTING ACCEPT || fail=1
iptables -t nat -P POSTROUTING ACCEPT || fail=1
# Marcar paquetes salientes con su ip de origen
iptables -t nat -A POSTROUTING -o $EXIF -j MASQUERADE || fail=1
# Reenvio de IP
echo 1 > /proc/sys/net/ipv4/ip_forward || fail=1
# Aceptar paquetes para reenviar procedentes de la red local
iptables -A FORWARD -i $INIF -o $EXIF -j ACCEPT || fail=1
# Aceptar paquetes para reenviar procedentes de internet de conexiones ya establecidas
iptables -A FORWARD -i $EXIF -o $INIF -m state --state RELATED,ESTABLISHED -j ACCEPT || fail=1
##Se redirigen los puertos configurados arriba
for puerto in $puertosTCP
do
iptables -A FORWARD -i $EXIF -o $INIF -p tcp --dport $puerto -j ACCEPT || fail=1
iptables -t nat -A PREROUTING -i $EXIF -p tcp --dport $puerto -j DNAT --to $pc2:$puerto || fail=1
done
for puerto in $puertosUDP
do
iptables -A FORWARD -i $EXIF -o $INIF -p udp --dport $puerto -j ACCEPT || fail=1
iptables -t nat -A PREROUTING -i $EXIF -p udp --dport $puerto -j DNAT --to $pc2:$puerto || fail=1
done
# Se muestran los resultados
log_end_msg $fail
if [ $fail -eq 0 ]
then
log_success_msg "Verifique que lo que se aplica con: iptables -L -n."
else
log_warning_msg "Se ha producido un error al aplicar alguna de las reglas"
fi
#### FIN SCRIPT DE CONFIGURACION DE IPTABLES ####

Ahora lo guardamos, le damos permisos de ejecución y lo ejecutamos:
sudo chmod 755 /etc/init.d/iptablesconf
sudo /etc/init.d/iptablesconf

Actualizamos la «lista» de scripts que se deben ejecutar al inicio :
sudo update-rc.d iptablesconf start 20 2 .
OJO !!!! Al final debe incluir el punto

Bueno con eso ya estaría listo la configuración del «servidor» .

Ahora hay que configurar los otros PCs.
En los otros computadores se debe configurar la red de la siguiente manera :
IP fija : 192.168.0.2 ó 192.168.0.3 ó 192.168.0.4 o ….

( tiene que ser diferente en cada computador).
Mascara de SubRed : 255.255.255.0 ( esta es igual en todos los computadores ).
Puerta de Enlace : 192.168.0.1 ( esta es la misma para todos )

Configuracion Cliente

y listo !!!!

Saludos