Configuración y Gestión de Redes: DHCP y DNS Esenciales

Enviado por Comunidad Wikiteka y clasificado en Informática

Escrito el en español con un tamaño de 10,46 KB

Funcionamiento del Protocolo DHCP

El Protocolo de Configuración Dinámica de Host (DHCP) es fundamental para la asignación automática de direcciones IP en una red. Su funcionamiento se basa en una secuencia de mensajes clave:

  • DHCPDISCOVER: El cliente busca servidores DHCP disponibles en la red.
  • DHCPOFFER: El servidor DHCP ofrece una dirección IP y otros parámetros de configuración al cliente.
  • DHCPREQUEST: El cliente solicita formalmente la dirección IP ofrecida (o renueva una existente).
  • DHCPACK: El servidor confirma la asignación de la dirección IP y los parámetros al cliente.
  • DHCPRELEASE: El cliente libera la dirección IP asignada, notificando al servidor que ya no la necesita.
  • DHCPDECLINE: El cliente informa al servidor que la dirección IP ofrecida ya está en uso en la red.
  • DHCPINFORM: El cliente, que ya tiene una dirección IP (por ejemplo, estática), solicita parámetros de configuración adicionales al servidor DHCP.

APIPA (Automatic Private IP Addressing)

Cuando un cliente no puede conectar con un servidor DHCP y no tiene una dirección IP estática configurada, el sistema operativo puede recurrir a APIPA. Este mecanismo asigna automáticamente una dirección IP dentro del rango 169.254.0.0/16. Algunos sistemas operativos también permiten la configuración de una IP estática como alternativa.

Parámetros y Requisitos del Servidor DHCP

Para que un servidor DHCP funcione correctamente, se deben considerar los siguientes aspectos:

  • El servidor DHCP no se autoasigna una dirección IP; debe tener una dirección IP estática configurada.
  • El sistema operativo del servidor debe tener soporte para paquetes de difusión (broadcast).
  • Debe existir una entrada en la tabla de encaminamiento (routing table) con la dirección de difusión de la red.
  • Es necesario instalar el servicio DHCP en el servidor.

Instalación del Servidor DHCP

En Windows

La instalación en sistemas Windows generalmente se realiza a través de las herramientas de administración del servidor. En versiones anteriores, se podía usar el paquete adminpak.msi para herramientas de administración remota.

En Linux

Antes de instalar el servidor DHCP en Linux, es recomendable:

  1. Comprobar el núcleo (kernel) para asegurar la compatibilidad.
  2. Verificar la tabla de encaminamiento.
  3. Posteriormente, se procede a la instalación del paquete dhcp-server (o similar, dependiendo de la distribución).

El servidor DHCP en Linux consta de dos partes principales:

  • El demonio (daemon), que atiende las peticiones de los clientes (puertos UDP 67 y 68).
  • El fichero de configuración, típicamente /etc/dhcp/dhcpd.conf.

Cualquier cambio en el fichero de configuración requiere reiniciar el demonio DHCP para que los cambios surtan efecto.

Estructura y Declaraciones en DHCP

La configuración del servidor DHCP se organiza mediante diversas declaraciones:

  • shared-network: Define una red lógica que abarca múltiples subredes físicas.
  • subnet: Declara una subred específica, incluyendo su máscara de red (netmask) y el rango de direcciones IP (range) a asignar.
  • host: Permite asignar una dirección IP fija a un equipo específico basándose en su dirección MAC (hardware ethernet).
  • group: Agrupa subredes o equipos para aplicar configuraciones comunes.
  • pool: Define un conjunto de direcciones IP dentro de una subred con configuraciones específicas, permitiendo, por ejemplo, diferentes opciones para distintos grupos de clientes.

Servidor DHCP Autoritativo

Un servidor DHCP se considera autoritativo si está configurado para ser la única fuente de direcciones IP para una subred. Si un cliente solicita una dirección IP que no está dentro del rango configurado para un servidor autoritativo, este responderá con un mensaje DHCPNACK (Negative Acknowledgment).

Archivos de Registro y Leases

  • /var/log/syslog: Contiene mensajes de error y eventos relacionados con el inicio del sistema operativo y los servicios, incluyendo el servidor DHCP.
  • /var/lib/dhcp/dhcpd.leases: Almacena los contratos de arrendamiento (leases) de las direcciones IP asignadas a los clientes, incluyendo direcciones fijas y dinámicas.

Niveles de Configuración de Red

La configuración de red se puede realizar en diferentes niveles:

  • Bajo Nivel: Mediante comandos de línea como ipconfig (Windows) o ifconfig/ip (Linux).
  • Nivel Intermedio: Creando o modificando ficheros de configuración con los datos de red (ej. /etc/network/interfaces en Debian/Ubuntu).
  • Alto Nivel (Gráfico): Utilizando interfaces gráficas de usuario (GUI) como las proporcionadas por entornos de escritorio como GNOME o KDE.

Resolución de Problemas y Comandos Útiles

Cortafuegos (Firewall)

Un problema común es el cortafuegos. Es crucial configurar los clientes Linux para abrir los puertos UDP 67 y 68, que son utilizados por DHCP.

Ejemplos de Comandos Linux

  • Desactivar/Activar Interfaz:
    • ifdown ethX: Desactiva la interfaz de red ethX.
    • ifup ethX: Activa la interfaz de red ethX.
  • Comprobar Clientes DHCP:
    • ifconfig ethX: Muestra la configuración de la interfaz, incluyendo la dirección IP.
    • Para verificar el estado DHCP de una interfaz, se pueden consultar los logs o usar herramientas específicas de la distribución.
  • Comprobar Tabla de Enrutamiento:
    • route o ip route show: Muestra la tabla de enrutamiento del sistema.
  • Declaración de Host para Impresora:

    El fragmento "host impresora hardware ethernet fixed-address" se refiere a una declaración común en el fichero dhcpd.conf para asignar una IP fija a un dispositivo, como una impresora, basándose en su dirección MAC.

Sistema de Nombres de Dominio (DNS)

El Sistema de Nombres de Dominio (DNS), conceptualizado por Paul Mockapetris en 1983, es un sistema jerárquico y distribuido que traduce nombres de dominio legibles por humanos a direcciones IP numéricas, y viceversa.

Niveles de Dominio

La estructura de nombres de dominio se organiza en niveles:

  • Nivel Uno (TLDs - Top-Level Domains): Dominios genéricos (ej. .com, .org, .net) y de países (ej. .es, .mx, .fr).
  • Nivel Dos: El nombre de la organización o entidad (ej. ejemplo.com).
  • Niveles Posteriores: Subdominios (ej. www.ejemplo.com, mail.ejemplo.com).

Tipos de Registros DNS Comunes

Los servidores DNS almacenan diferentes tipos de registros:

  • A (Address): Mapea un nombre de dominio a una dirección IPv4.
  • AAAA (Quad-A): Mapea un nombre de dominio a una dirección IPv6.
  • CNAME (Canonical Name): Crea un alias para un nombre de dominio.
  • NS (Name Server): Identifica los servidores de nombres autoritativos para una zona.
  • PTR (Pointer): Realiza la resolución inversa, mapeando una dirección IP a un nombre de dominio.
  • SOA (Start of Authority): El primer registro en cualquier fichero de zona, contiene información administrativa sobre la zona.
  • MX (Mail Exchange): Especifica los servidores de correo responsables de recibir correos electrónicos para un dominio.

Funcionamiento del Resolver DNS

El resolver DNS es una rutina o programa cliente que se encarga de enviar consultas a los servidores DNS para obtener la información solicitada.

Configuración de Servidores DNS

Existen diferentes tipos de servidores DNS:

  • Servidor Caché: Almacena temporalmente las respuestas a las consultas DNS para acelerar futuras resoluciones.
  • Servidor de Zonas (Autoritativo): Define y gestiona al menos una zona DNS, siendo la autoridad para los nombres de dominio dentro de esa zona.

Configuración de Clientes DNS

La configuración de clientes DNS se puede realizar de varias maneras:

  • Bajo Nivel (Manual):
    • /etc/resolv.conf: Fichero que especifica las direcciones IP de los servidores DNS a los que el equipo enviará sus consultas.
    • defaultdomain (o search en resolv.conf): Define el nombre de dominio al que pertenece el equipo, utilizado para completar nombres de host no cualificados.
    • /etc/hosts: Fichero local que almacena correspondencias estáticas entre nombres de equipo y direcciones IP, consultado antes que DNS para resoluciones locales.
    • /etc/nsswitch.conf: Fichero que configura el orden en que el sistema consulta diferentes bases de datos (como DNS, hosts, NIS) para resolver nombres y otra información.

Conceptos Generales

/dev: Este directorio en sistemas operativos tipo Unix/Linux contiene los archivos de dispositivos, que representan hardware y periféricos del sistema.