Configurar Servidor DHCP en Linux

¿Que es un servidor DHCP?

(Protocolo de Configuración Dinámica de Host). Es un protocolo que nos permite dar a nuestra tarjeta de red datos de configuración IP, entre ellos: 
  • Dirección IP. 
  • mascara de subred. 
  •  Gateway. 
  • servidores DNS. 
  • información de routers. 
y otros datos que podríamos difundir en las actualizaciones DHCP de nuestro servidor. Trabaja por defecto en los puertos 67 y 68 y utiliza el protocolo TCP, que es un protocolo orientado a la conexión que hace una negociación y acuse de recibido entre el cliente y el servidor, o viceversa.

Pasos para la instalación y configuración de nuestro servidor:

1- En mi caso realice esta configuración desde una maquina virtual, mas exactamente desde VMWARE, tuve un inconveniente al realizar la prueba de funcionamiento del servicio DHCP, y finalmente pude detectar el error: Tenia mi maquina virtual en modo NAT, y esto no me permitía difundir las actualizaciones de mi servidor DHCP creado en Debian en mi sistema operativo XP, entonces probé poniéndolo en modo Bridge y todo funciono a la maravilla, a continuación pongo una imagen de cómo realizar este paso para aquellos que no saben como:
Damos clic donde aparece el círculo rojo, parte inferior derecha, y nos aparecerá esta ventana donde elegiremos la opción Bridge.

2- Es importante que primero asignemos una dirección IP en nuestro sistema Debian que corresponda al rango de direcciones que vamos a asignar en nuestro servidor DHCP.

NOTA: Si no entiendes a que me refiero con “rango“, mas adelante aclararemos un poco más este concepto, no os preocupéis.

Para asignar una dirección IP estática, podemos hacerlo de muchas formas, pero acá les muestro una de tantas, bueno hay que recordar que para poder realizar estos pasos debemos tener privilegios de administrador en nuestro sistema Linux ósea que lo más recomendable antes que nada seria logearnos desde la terminal, como administrador:

Esteban: $ su Para esto contamos en Debian con el comando su, y bueno nos pedirá una contraseña y listo ya esta.

Ahora pasemos a configurar nuestra IP estática:

Esteban:/#ifconfig eth0 inet 192.168.2.3

En la parte 192.168.2.3 puse una dirección IP dentro del rango que configuraremos, posteriormente veremos esto, ya que en esta línea no especificamos la Mascara de subred, el sistema pondrá una mascara por defecto que corresponde a la dirección que en este caso es clase C ósea una mascara de /24.

NOTA: En la parte que dice Esteban:/# no tenemos que digitarla en nuestra consola, solo digitamos la parte que subrayo en negro.

3- Ahora si a configurar nuestro servidor DHCP:

Lo primero que debemos hacer es instalarlo, y lo haremos con el siguiente comando:

Esteban:/# apt-get install dhcp3-server

A continuación de esto nos hará unas preguntas, le daremos la letra S (que significa “Si”) y luego presionamos Enter. A lo ultimo en la instalación nos aparece una letra en rojo que dice FAILED, nos os preocupéis, lo que significa es que aun no hay algunos parámetros configurados y nuestro server no puede ser ejecutado

4- Ahora editaremos nuestro servidor DHCP con cualquier editor de comando que deseemos , en nuestro caso Gedit, para esto debemos ingresar la siguiente línea:

Esteban:/#gedit /etc/dhcp3/dhcpd.conf


Ahora nos aparecerá un documento, con algunas configuraciones por defecto, en su mayoría comentadas, ya que son solo ejemplos, y bueno acá les muestro la parte que nos interesa:

Aca he señalado la parte que debemos identificar al momento de ingresar en nuestro editor, explicare cada línea a continuación:

subnet 192.168.2.0 netmask 255.255.255.0 { En esta línea especificamos el rango o identificador de red al que pertenece nuestro ámbito DHCP, en este caso una dirección clase C y una mascara de subred sin subnetiar, en caso de que hallamos ellos subneting pues ingresamos nuestros datos correspondientes

range 192.168.2.10 192.168.2.30; En esta línea hemos asignado un intervalo de direcciones disponibles para asignar de forma dinámica a nuestros clientes DHCP

# option domain-name-servers 192.168.79.1; Realmente esta línea no esta siendo ejecutada por nuestro servidor ya que tiene un signo # al principio de la línea, lo que significa que esta comentada. Sirve para indicar la dirección IP de nuestro servidor DNS si es que existe en la red, ya que nosotros no tenemos configurado dicho servidor fue esta la razón por la que comentamos la línea.

# option domain-name “Dinodoro.co”; Recordemos que tanto la dirección como el nombre del DNS en este caso “Dinodoro.co” lo configuramos de acuerdo a nuestras necesidades, en este caso esta línea indica, el nombre de nuestro dominio.

# option routers 192.168.1.254; Acá especificamos la dirección de nuestro dispositivo Gateway, ya sea para salir a internet, o para salir a otras subredes dentro de la LAN.

option broadcast-address 192.168.2.255 Especificamos nuestra dirección broadcast la cual se encarga de la difusión de paquetes por toda la red, esta dirección es la ultima dirección del rango de direcciones que tengamos asignado en nuestro servidor.


default-lease-time 604800; Es el tiempo por defecto que se le da a los contratos, en este caso seria por siete días o una semana, convertido en segundos.

max-lease-time 864000; Tiempo máximo que se le darían a los contratos en este caso diez días.

} Por último cerramos con una llave ya que habíamos abierto una, y de esta manera concluimos este parametro.

Esta configuración es una configuración básica para una red que no requiera muchos host, existen otros parámetros que podríamos configurar los cuales veremos mas adelante.

Nota: Cuando hablamos de contrato nos referimos a que nuestro servidor DHCP al asignar datos de configuración IP le dice al cliente, cuanto tiempo puede tener esta dirección y cuando expira lo que llamamos la concesión (datos de configuración IP).

5- Reservas

Una reserva es diferente a una exclusión, sirve cuando se necesita una reserva permanente de direcciones IP para dispositivos como impresoras, servidores, routers y otros dispositivos que necesiten una dirección fija.

A continuación pongo una imagen de la sintaxis que debemos ingresar en nuestro servidor:
Bueno acá tenemos varios parámetros explicare uno por uno:

host impresoragerente { con este parámetro identificaremos al host que utilizara la reserva, en este caso impresoragerente, lo ponemos junto ya que no debemos dejar espacios en dicho nombre.

hardware ethernet 00:65:9A:5E:85:9B; Este sirve para poner la dirección MAC de nuestro equipo la cual es única en toda la red, y de esta forma nos aseguremos que sea este cliente específicamente quien utilice la reserva

fixed-address 192.168.2.14; } Acá nos dice que se va a hacer una reserva, y que la dirección a reservas es la 192.168.2.14

Nota: El nombre que le hemos puesto a este host debería tener una clase de contextura diferente como nombres raros o de otra cultura, ya que si un hacker llegase a ver un nombre tan obvio, intentaría atacarnos.

6- Denegaciones:

Una denegación sirve para cuidar que nuestra red sea invadida por personas inescrupulosas con malas intenciones, acá lo haremos en un equipo con mas alta vulnerabilidad. Utilizamos el la siguiente sintaxis:

Es muy similar a la sintaxis que tiene la reserva, lo único que cambia es la ultima línea la cual deniega el acceso.

Pasos para activar las actualizaciones dinámicas con el DNS

1. Para esto debemos digitar las siguientes líneas en nuestro servidor:

# ddns-updates on; Indica al servidor que debe actualizar a un servidor DNS

# ddns-domainname “Dinodoro.co”; Con este parámetro le indicamos el nombre de dominio

# ddns-rev-domainname “2.168.192.in-addr.arpa”; Acá digitamos la zona inversa

# ddns-update-style interim; Este es el estilo en el que el DHCP actualizara al DNS (Hay varias formas de hacerlo)

Nota: Todo esto a quedado con líneas comentadas ya que no tenemos un servidor DNS configurado, después de configurar dicho servidor podemos descomentar las líneas quitando el signo #, y así en trataría a funcionar este proceso.

8- El siguiente paso consiste en iniciar nuestro servidor DHCP para esto lo haremos con el siguiente comando:

Si no nos muestra ningún error, o mejor dicho si nos muestra las líneas tal y como están después de iniciarlo, lo hemos hecho bien, el comando tal y como lo ven es:

exxteban:/ # /etc/init.d/dhcp3-server start

9- Por ultimo probaremos en nuestro sistema Windows desde el DOS para ver si el servidor DHCP nos esta asignando los datos de configuración IP, para esto también introduciré las imágenes:

Ingreso al DOS: inicio>Ejecutar>cmd>Enter

Ipconfig /release

Este comando libera los datos de configuración IP que tenga nuestro cliente DHCP, en la parte de debajo de la imagen podemos ver que todo aparece en ceros.

*Ahora introduciremos el comando ipconfig /renew, para volver a mandar un DHCPDISCOVER, y nuestro servidor DHCP debe dar un DHCPPACK con la nueva configuración IP:

Finalmente observamos en la parte subrayada que nuestro servidor DHCP le ha asignado a nuestro cliente una dirección dentro del intervalo de direcciones que hemos configurado.

Por: Esteban López

FIN...

0 comentarios: