Omitir V�nculos de navegaci�n | |
Salir de la Vista de impresi�n | |
Guía de administración del sistema: servicios IP |
Parte I Introducción a la administración del sistema: servicios IP
1. Conjunto de protocolos TCP/IP de Oracle Solaris (descripción general)
Parte II Administración de TCP/IP
2. Planificación de la red TCP/IP (tareas)
3. Introducción a IPv6 (descripción general)
4. Planificación de una red IPv6 (tareas)
5. Configuración de servicios de red TCP/IP y direcciones IPv4 (tareas)
6. Administración de interfaces de red (tareas)
7. Configuración de una red IPv6 (tareas).
8. Administración de redes TCP/IP (tareas)
9. Resolución de problemas de red (Tareas)
10. Descripción detallada de TCP/IP e IPv4 (referencia)
11. IPv6 en profundidad (referencia)
12. Acerca de DHCP (descripción general)
13. Planificación del servicio DHCP (tareas)
14. Configuración del servicio DHCP (tareas)
15. Administración de DHCP (tareas)
16. Configuración y administración del cliente DHCP
Diferencias entre DHCPv4 y DHCPv6
Cómo gestionan los protocolos del cliente DHCP la información de configuración de red
Cómo gestiona el cliente DHCPv4 la información de configuración de red
Cómo gestiona el cliente DHCPv6 la información de configuración de red
Activación y desactivación de un cliente DHCP
Cómo habilitar el cliente DHCP
Cómo deshabilitar un cliente DHCP
Administración del cliente DHCP
Opciones del comando ifconfig que se utilizan con el cliente DHCP
Asignación de los parámetros de configuración del cliente DHCP
Sistemas cliente DHCP con varias interfaces de red
Nombres de host de cliente DHCPv4
Cómo habilitar un cliente DHCPv4 para que solicite un nombre de host específico
Sistemas cliente DHCP y servicios de nombres
Configuración de clientes DHCP como clientes NIS+
Cómo configurar clientes DHCP como clientes NIS+
17. Solución de problemas de DHCP (referencia)
18. Comandos y archivos DHCP (referencia)
19. Arquitectura de seguridad IP (descripción general)
20. Configuración de IPsec (tareas)
21. Arquitectura de seguridad IP (referencia)
22. Intercambio de claves de Internet (descripción general)
23. Configuración de IKE (tareas)
24. Intercambio de claves de Internet (referencia)
25. Filtro IP en Oracle Solaris (descripción general)
27. IP para móviles (Descripción general)
28. Administración de IP móvil (tareas)
29. Archivos y comandos de IP para móviles (referencia)
30. Introducción a IPMP (descripción general)
31. Administración de IPMP (tareas)
Parte VII Calidad de servicio IP (IPQoS)
32. Introducción a IPQoS (Descripción general)
33. Planificación para una red con IPQoS (Tareas)
34. Creación del archivo de configuración IPQoS (Tareas)
35. Inicio y mantenimiento de IPQoS (Tareas)
36. Uso de control de flujo y recopilación de estadísticas (Tareas)
El cliente DHCP se puede configurar para que ejecute un programa o secuencia que lleve a cabo cualquier acción adecuada para el sistema cliente. El programa o secuencia, que se denomina, secuencia de eventos, se ejecuta automáticamente cuando tienen lugar determinados eventos de permiso de DHCP. La secuencia de eventos se puede utilizar para ejecutar otros comandos, programas o secuencias en respuesta a eventos de permiso específicos. Para utilizar esta función deberá proporcionar su propia secuencia.
dhcpagent utiliza las siguientes palabras clave para referirse a eventos de permisos de DHCP:
Descripción
La interfaz está configurada para DHCP. El cliente recibe el mensaje de confirmación (DHCPv4 ACK) o (DHCPv6 Reply ) del servidor DHCP en el que se concede la solicitud de permiso para una dirección IP. Se llama a la secuencia de eventos inmediatamente después de la configuración satisfactoria de la interfaz.
El cliente ha realizado correctamente una concesión. Se llama a la secuencia de eventos inmediatamente después de que el cliente recibe el mensaje de confirmación del servidor DHCP por la solicitud de renovación.
El permiso caduca cuando se agota su tiempo. Para DHCPv4, la secuencia de eventos se llama inmediatamente después de que la dirección permitida se elimina de la interfaz y se marca esta como desconectada. Para DHCPv6, la secuencia de eventos se llama justo antes de que las últimas direcciones permitidas se eliminen de la interfaz.
El cliente usa la concesión para eliminar la interfaz desde el control DHCP. Se llama a la secuencia de eventos inmediatamente antes de la interfaz se retire del control de DHCP.
El cliente deja de usar la dirección IP. Se llama a la secuencia de eventos inmediatamente antes de que el cliente libere la dirección en la interfaz y envíe el paquete DHCPv4 RELEASE o DHCPv6 Release al servidor DHCP.
Una interfaz obtiene información de configuración nueva o actualizada de un servidor DHCP a través del mensaje DHCPv4 INFORM o DHCPv6 Information-Request. Estos eventos tienen lugar cuando el cliente DHCP solo obtiene parámetros de configuración del servidor, pero no obtiene un permiso de dirección IP.
Durante la caducidad del permiso, cuando aún quedan uno o más permisos válidos, se llama a la secuencia de eventos justo antes de eliminar las direcciones caducadas. Las direcciones que se van a eliminar se marcan con el indicador IFF_DEPRECATED.
Con cada uno de estos eventos, dhcpagent llama al comando siguiente:
/etc/dhcp/eventhook interface event
donde interfaz es la interfaz que utiliza DHCP y evento es una de las palabras clave de evento descritas anteriormente. Por ejemplo, cuando la interfaz ce0 se configura por primera vez para DHCP, dhcpagent llama a la secuencia de eventos de la siguiente forma:
/etc/dhcp/eventhook ce0 BOUND
Para utilizar la función de secuencia de eventos, haga lo siguiente:
Asigne al archivo ejecutable el nombre /etc/dhcp/eventhook.
Establezca el propietario del archivo en root.
Establezca los permisos en 755 (rwxr-xr-x ).
Escriba la secuencia o programa que debe llevar a cabo una serie de acciones en respuesta a alguno de los eventos documentados. Sun puede agregar nuevos eventos, de modo que el programa debe hacer caso omiso de los eventos no reconocidos o que no requieren acción. Por ejemplo, el programa o secuencia puede escribir un archivo de registro cuando el evento es RELEASE, y no hacer caso de los demás eventos.
El programa o secuencia no debe ser interactivo. Antes de llamar a la secuencia de eventos, stdin, stdout y stderr se conectan a /dev/null. Para ver la salida de errores, deberá redirigirla a un archivo.
La secuencia de eventos hereda su entorno de programa de dhcpagent, y se ejecuta con privilegios de root. Si es necesario, la secuencia puede utilizar la utilidad dhcpinfo para obtener más información acerca de la interfaz. Para más información consulte la página de comando man dhcpinfo(1).
El daemon dhcpagent espera la salida de la secuencia de eventos para todos los eventos. Si la secuencia de eventos no sale transcurridos 55 segundos, dhcpagent envía una señal SIGTERM al proceso de la secuencia. Si el proceso sigue sin salir pasados otros tres segundos, el daemon envía una señal SIGKILL para cerrar el proceso.
En la página de comando man dhcpagent(1M) se muestra un ejemplo de secuencia de eventos.
El Ejemplo 16-3 muestra la forma de utilizar una secuencia de eventos DHCP para mantener actualizado el contenido del archivo /etc/resolv.conf. Cuando tienen lugar los eventos BOUND y EXTEND, la secuencia sustituye los nombres del servidor de dominios y del servidor de nombres. Cuando tienen lugar los eventos EXPIRE, DROP y RELEASE, la secuencia elimina del archivo los nombres del servidor de dominios y del servidor de nombres.
Nota - La secuencia de ejemplo supone que DHCP es el origen de autoridad del servidor de dominios y del servidor de nombres. También supone que todas las interfaces bajo control de DHCP devuelven información coherente y actualizada. Es posible que estas hipótesis no reflejen las condiciones reales de su sistema.
Ejemplo 16-3 Secuencia de eventos para actualizar el archivo /etc/resolv.conf
#!/bin/ksh -p PATH=/bin:/sbin export PATH umask 0222 # Refresh the domain and name servers on /etc/resolv.conf insert () { dnsservers=`dhcpinfo -i $1 DNSserv` if [ -n "$dnsservers" ]; then # remove the old domain and name servers if [ -f /etc/resolv.conf ]; then rm -f /tmp/resolv.conf.$$ sed -e '/^domain/d' -e '/^nameserver/d' \ /etc/resolv.conf > /tmp/resolv.conf.$$ fi # add the new domain dnsdomain=`dhcpinfo -i $1 DNSdmain` if [ -n "$dnsdomain" ]; then echo "domain $dnsdomain" >> /tmp/resolv.conf.$$ fi # add new name servers for name in $dnsservers; do echo nameserver $name >> /tmp/resolv.conf.$$ done mv -f /tmp/resolv.conf.$$ /etc/resolv.conf fi } # Remove the domain and name servers from /etc/resolv.conf remove () { if [ -f /etc/resolv.conf ]; then rm -f /tmp/resolv.conf.$$ sed -e '/^domain/d' -e '/^nameserver/d' \ /etc/resolv.conf > /tmp/resolv.conf.$$ mv -f /tmp/resolv.conf.$$ /etc/resolv.conf fi } case $2 in BOUND | EXTEND) insert $1 exit 0 ;; EXPIRE | DROP | RELEASE) remove exit 0 ;; *) exit 0 ;; esac