Archivo de la categoría: DHCP

Configurar Ubuntu Server como Router

Configurar y activar un equipo como enrutador en Ubuntu o Debian

 

Activación del enrutamiento en Linux

 

Las funciones de enrutamiento mediante NAT son realizadas por el cortafuegos que analizará los paquetes provenientes de la red local interna cuyo destino sea Internet y los modificará convenientemente para que salgan hacia Internet como si fueran emitidos por el servidor. A partir del nucleo 2.4 de Linux, el cortafuegos empleado es iptables.

 

Para posibilitar que nuestro servidor Linux sea capaz de comportarse como un router y hacer de puerta de enlace para los PCs de nuestra red local, será necesario crear un script que configure el cortafuegos iptables para que realice NAT desde dentro de la red local hacia Internet.

 

Creación del script para activar enrutamiento

Para activar el enrutamiento en un sistema Linux, tan solo basta con poner a ‘1’ la variable ip_forward del sistema, es decir, basta con ejecutar desde una consola de root:

 

echo «1» > /proc/sys/net/ipv4/ip_forward

 

 

Posteriormente tendríamos que configurar el filtrado de paquetes para que acepte el redireccionamiento de paquetes desde dentro hacia fuera de nuestra red y mediante NAT permita que los PCs de la red interna naveguen con la dirección IP ‘publica’ del servidor. Supongamos que el router Linux tiene una tarjeta (eth0) conectada a la red local (172.16.15.1/255.255.255.0) y que tenemos una tarjeta (eth1) conectada al router, con la ip 192.168.36.140, los comandos a ejecutar serían:

 

// Haciendo NAT en el servidor

 

# iptables -A FORWARD -j ACCEPT

 

# iptables -t nat -A POSTROUTING -s 172.16.15.0/24 -o eth1 -j SNAT –to 192.168.36.140

 

En nuestro caso, como el interfaz de salida ( eth1 ) salimos por DHCP, habrá que poner lo siguiente

 

# iptables -t nat -A POSTROUTING -s 172.16.15.0/24 -o eth1 -j MASQUERADE

 

Podríamos realizar un script que activara el enrutamiento y el NAT y otro para desactivarlo:

 

// activar-enrutamiento.sh

 

echo «1» > /proc/sys/net/ipv4/ip_forward

 

iptables -A FORWARD -j ACCEPT

 

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE

 

 

// desactivar-enrutamiento.sh

 

echo «0» > /proc/sys/net/ipv4/ip_forward

en / :

 

¿Como hacerlo ?

 

#sudo nano activar-enrutamiento.sh

 

escribimos :

 

echo «1» > /proc/sys/net/ipv4/ip_forward

 

iptables -A FORWARD -j ACCEPT

 

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j MASQUERADE

 

salimos y hacemos :

 

#sudo update-rc.d activar-enrutamiento.sh defaults

 

#sudo mv activar-enrutamiento.sh /etc/init.d/

 

# cd /etc/init.d

 

# chmod 744 activar-enrutamiento.sh

 

Para activar el enrutamiento en el servidor :

 

# sudo /etc/init.d/activar-enrutamiento.sh

 

 

Para desactivar, hacer el fichero desactivar-enrutamiento.sh con el contenido :

 

echo «0» > /proc/sys/net/ipv4/ip_forward

 

con el mismo procedimiento

 

Cuando activamos el enrutamiento ( # /etc/init.d/activar-enrutamiento.sh ) los clientes pueden salir a través de nuestro server-router a internet, si lo desactivamos ( # /etc/init.d/desactivar-enrutamiento.sh ) los clientes n podrán salir

Instalación DHCP en Linux

#Sudo Apt-get install dhcp3-server