jueves, 3 de octubre de 2013

Configurar servicios de enrutamiento en Ubuntu

Normalmente un PC es un equipo que dentro de una red es el origen o destino final de una comunicación. Por tanto, el modo de funcionamiento normal de estos equipos es escuchar el tráfico de la red y aceptar los paquetes que tienen como dirección IP destino una dirección que coincida con la IP configurada en su tarjeta de red ignorando el resto del tráfico. (Tambien aceptarán el tráfico con dirección destino la dirección de broadcast de la red)

Si tenemos un PC con dos tarjetas de red, cada una de ellas conectada a un segmento de red diferente y no hacemos nada más, el PC seguirá comportandose como se ha descrito anteriormente, aceptanto tráfico dirigido a él y solamente a él desde ambas redes a las que esta conectado.

Si lo que queremos es que este ordenador, situado entre dos redes, reencamine el tráfico de todos los equipos situados en un segmento de la red hacia el otro segmento de red entonces debemos cambiar el comportamiento por defecto del PC para que tenga en cuenta y procese todos los paquetes que recibe y no solo aquellos que tienen como direccion final la suya propia. Este proceso consistirá en tomar una decisión sobre por que interfaz debe reencaminar el mensaje que acaba de recibir para que alcance su destino final. Esto se conoce como hacer un forwarding.

Veamos como habilitar el forwarding en Ubuntu:

Lo primero que debemos hacer es editar el archivo /etc/sysctl.conf con permisos de root:

>sudo gedit /etc/sysctl.conf

y quitar el simbolo # de la línea en que aparece el parámetro net.ipv4.ip_forward=1 para habilitar ip forwarding.

El fichero sysctl.conf tiene que quedar asi en esa linea, NO BORRAR EL RESTO!!!

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

Seguidamente ejecutar el comando sysctl para que el sistema relea el archivo y ejecute el comando que activa el forwarding:

>sudo sysctl -p

De esta manera queda habilidado el forwarding para direcciones IPv4.

Activación de NAT

A continuación, como estamos usando direcciones IP privadas, tenemos que enmascarar las direcciones IP que vienen de la red 192.168.100.0/24 ya que estas deben salir enrutadas por la interfax ethernet externa (ethX), es decir, debemos de activar el NAT (IMPORTANTE: Comprobar que numero concreto de ethX teneis asignado para la interfaz externa)


En este caso de ejemplo, según nos muestra la pestaña de información de conexiones, la interfaz WAN o externa tiene como identificador eth2.


La activación de NAT en Ubuntu se puede realizar de 2 formas diferentes:

1. Desde Webmin:

Sencillamente entrando en la opción Red>Linux Firewall y seleccionar la opción

Do network address translation on external interface: <Interfaz externa>

Y habilitar la casilla de verficación Enable firewall at boot time? para que se activen automaticamente las reglas del firewall al iniciar el equipo.

Cuando lo tengamos, pulsar el boton "Setup Firewall" y comprobar que las reglas de firewall quedan como se muestra en la imagen.


Por último, pulsar el botón "Apply configuration" para que se apliquen las reglas que acabamos de establecer en el firewall.


2. Mediante la línea comandos del terminal con el siguiente comando:


>sudo iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ethX -j MASQUERADE

Y por último, reiniciar la red para que sean tenidos en cuenta los cambios.

 >sudo /etc/init.d/networking restart


Comprobación.

Para comprobar que funciona correctamente el fordwarding y el NAT podemos hacer un ping desde el cliente a cualquier dirección externa que deba de ser "forwardeada" desde el servidor, por ejemplo la del servidor DNS público de Google, 8.8.8.8.

cliente>ping 8.8.8.8

1 comentario:

  1. The King Casino Hotel | Jamul Casino & Spa
    The King Casino Hotel https://febcasino.com/review/merit-casino/ is set 1 mile south of febcasino.com Jamul Casino, 1 novcasino MPRC Blvd, Jamul, Georgia. View map. This casino offers a variety of 바카라 gaming options https://jancasino.com/review/merit-casino/ including slots,

    ResponderEliminar