Guía de administración del sistema: servicios IP

Capítulo 17 Solución de problemas de DHCP (referencia)

En este capítulo se ofrece información para ayudarle a resolver problemas que pueden aparecen al configurar un servidor o cliente DHCP. También puede servir de ayuda con posibles problemas de uso de DHCP una vez finalizada la configuración.

Este capítulo contiene la información siguiente:

Consulte el Capítulo 14Configuración del servicio DHCP (tareas) para obtener información sobre la configuración del servidor DHCP. Consulte Activación y desactivación de un cliente DHCP de Oracle Solaris para obtener información sobre la configuración de su cliente DHCP.

Solución de problemas del servidor DHCP

Los posibles problemas de configuración del servidor se pueden dividir en las categorías siguientes:

Problemas de NIS+ y el almacén de datos DHCP

Si utiliza NIS+ como almacén de datos DHCP, los posibles problemas se dividen en las siguientes categorías:

No se puede seleccionar NIS+ como almacén de datos DHCP

Si intenta utilizar NIS+ como almacén de datos, es posible que DHCP Manager no ofrezca NIS+ como opción de almacén de datos. Si utiliza el comando dhcpconfig, quizá se muestre un mensaje indicando que NIS+ no parece estar instalado y en ejecución. Estos dos síntomas significan que NIS+ no se ha configurado para este servidor, aunque puede que NIS+ se esté utilizando en la red. Antes de poder seleccionar NIS+ como almacén de datos, el sistema servidor se debe configurar como cliente NIS+.

Antes de configurar el sistema servidor DHCP como cliente NIS+ se deben cumplir las siguientes condiciones:

Setting Up NIS+ Client Machines de System Administration Guide: Naming and Directory Services (NIS+) ofrece información detallada acerca de la configuración de un cliente NIS+.

NIS+ no está bien configurado como almacén de datos DHCP

Si ya ha utilizado satisfactoriamente NIS+ con DHCP, puede encontrarse con errores si se efectúan cambios en NIS+. Los cambios pueden provocar problemas de configuración. Utilice las siguientes descricpiones de problemas y sus soluciones para ayudarle a determinar la causa de los problemas de configuración.

Problema:

El objeto raíz no existe en el dominio NIS+.

Solución:

Escriba el siguiente comando:

/usr/lib/nis/nisstat

Este comando muestra las estadísticas del dominio. Si el objeto raíz no existe, no se devuelve estadística alguna.

Configure el dominio NIS+ siguiendo las indicaciones de la System Administration Guide: Naming and Directory Services (NIS+).

Problema:

NIS+ no se utiliza para la información de passwd y publickey.

Solución:

Escriba el comando siguiente para ver el archivo de configuración del cambio de servicio de nombres:

cat /etc/nsswitch.conf

Compruebe si en las entradas passwd y publickey aparece la palabra clave “nisplus”. Consulte la System Administration Guide: Naming and Directory Services (NIS+) para obtener información acerca de la configuración del cambio de servicio de nombres.

Problema:

El nombre de dominio está vacío.

Solución:

Escriba el siguiente comando:

domainname

Si el comando muestra una cadena vacía, no se ha establecido ningún nombre para el dominio. Utilice archivos locales como almacén de datos o configure un dominio NIS+ para su red. Consulte la System Administration Guide: Naming and Directory Services (NIS+).

Problema:

El archivo NIS_COLD_START no existe.

Solución:

Escriba el comando siguiente en el sistema servidor para determinar si el archivo existe:

cat /var/nis/NIS_COLD_START

Utilice archivos locales como almacén de datos o crre un cliente NIS+. Consulte la System Administration Guide: Naming and Directory Services (NIS+).

Problemas de acceso de NIS+ para el almacén de datos DHCP

Los problemas de acceso de NIS+ pueden provocar mensajes de error sobre credenciales DES incorrectas, o permisos inadecuados para actualizar objetos y tablas NIS+. Utilice las siguientes descripciones de problemas y soluciones para determinar la causa de los error de acceso de NIS+ recibidos.

Problema:

El sistema servidor DHCP no tiene acceso de creación para el objeto org_dir en el dominio NIS+.

Solución:

Escriba el siguiente comando:


nisls -ld org_dir

Los derechos de acceso se muestran en la forma r---rmcdrmcdr---, donde los permisos se aplican respectivamente a nobody (nadie), owner (propietario), group (grupo) y world (todos). El propietario del objeto se indica a continuación.

Normalmente, el objeto de directorio org_dir proporciona todos los derechos al propietario y al grupo. "Todos los derechos" significa derechos de leer, modificar, crear y destruir. El objeto de directorio org_dir proporicona únicamente acceso de lectura a las clases world y nobody.

El nombre del servidor DHCP debe figurar como propietario del objeto org_dir o bien como principal en el grupo. El grupo debe tener acceso de creación. Utilice el comando siguiente para ver el grupo:


nisls -ldg org_dir

Utilice el comando nischmod para cambiar los permisos de org_dir, si es necesario. Por ejemplo, para agregar al grupo acceso de creación, escriba el siguiente comando:


nischmod g+c org_dir

Para más información consulte la página de comando man nischmod(1).

Problema:

El servidor DHCP no tiene derechos de acceso para crear una tabla en el objeto org_dir.

Normalmente, este problema significa que el nombre principal del sistema servidor no es miembro del grupo propietario del objeto org_dir, o que no existe un grupo propietario.

Solución:

Escriba este comando para averiguar el nombre del grupo propietario:


niscat -o org_dir

Busque una línea similar a la siguiente:

Group : "admin.example.com."

Para ver los nombres de principales del grupo, utilice el comando:


nisgrpadm -l groupname

Por ejemplo, este comando muestra los nombres de principales del grupo admin.example.com:

nisgrpadm -l admin.example.com

El nombre del sistema servidor debe aparecer como miembro explícito del grupo o estar incluido como miembro implícito de él. Si es necesario, agregue el nombre del sistema servidor al grupo mediante el comando nisgrpadm.

Por ejemplo, para agregar el servidor de nombres pacific al grupo admin.example.com , utilice el siguiente comando:


nisgrpadm -a admin.example.com pacific.example.com

Para más información consulte la página de comando man nisgrpadm(1).

Problema:

El servidor DHCP no tiene credencuales de Estándar de cifrado de datos (DES) válidas en la tabla cred de NIS+.

Solución:

En caso de problema de credenciales, un mensaje de error indica que el usuario no dispone de credenciales DES en el servicio de nombres NIS+.

Utilice el comando nisaddcred para agregar credenciales de seguridad para un sistema servidor DHCP.

En el ejemplo siguiente se muestra la forma de agregar credenciales DES para el sistema mercury en el dominio example.com:


nisaddcred -p unix.mercury@example.com \
-P mercury.example.com. DES example.com.

El comando solicita la contraseña de usuario root, necesaria para generar una clave secreta cifrada.

Para más información consulte la página de comando man nisaddcred(1M).

Errores de asignación de dirección IP en DHCP

Cuando un cliente intenta obtener o verificar una dirección IP, es posible que se registren problemas en syslog o en la salida del modo de depuración del servidor. En la siguiente lista de mensajes de error comunes se indican las posibles causas y las soluciones.


No existe la tabla de red dhcp n.n.n.n para la red DHCP del cliente

Causa:

Un cliente solicita una dirección IP específica o intenta ampliar un permiso para su dirección IP actual. El servidor DHCP no puede encontrar la tabla de red DHCP para esa dirección.

Solución:

Es posible que la tabla de red DHCP se haya eliminado por error. Se puede recrear la tabla de red agregando la red de nuevo mediante DHCP Manager o mediante el comando dhcpconfig.


Respuesta de ICMP ECHO al candidato de OFFER: n.n.n.n, desactivando

Causa:

La dirección IP que se iba a ofrecer a un cliente DHCP ya se está utilizando. Este problema puede surgir si hay más de un servidor DHCP propietario de la dirección. También puede ocurrir si se ha configurado manualmente una dirección para un cliente de red no DHCP.

Solución:

Determine el verdadero propietario de la dirección. Corrija la base de datos del servidor DHCP o la configuración de red del host.


Respuesta de ICMP ECHO al candidato de OFFER: n.n.n.n. No hay registro de red dhcp correspondiente.

Causa:

La dirección IP que se iba a ofrecer a un cliente DHCP no tiene un registro en una tabla de red. Este error indica que el registro de la dirección IP se eliminó de la tabla de red DHCP después de seleccionar la dirección. Este error solo puede suceder durante el breve intervalo antes de terminar de comprobar la dirección duplicada.

Solución:

Utilice DHCP Manager o el comando pntadm para ver la tabla de red DHCP. Si falta la dirección IP, créela con DHCP Manager eligiendo Crear en el menú Edición de la tabla Dirección. También puede crear la dirección IP con el comando pntadm.


Registro de red DHCP para n.n.n.n no disponible, solicitud ignorada.

Causa:

El registro de la dirección IP solicitada no está en la tabla de red DHCP, de modo que el servidor abandona la solicitud.

Solución:

Utilice DHCP Manager o el comando pntadm para ver la tabla de red DHCP. Si falta la dirección IP, créela con DHCP Manager eligiendo Crear en el menú Edición de la tabla Dirección. También puede crear la dirección IP con el comando pntadm.


n.n.n.n actualmente marcada como no utilizable.

Causa:

La dirección IP solicitada no se puede ofrecer porque se ha marcado como no utilizable en la tabla de red.

Solución:

Utilice DHCP Manager o el comando pntadm para marcar la dirección como utilizable.


n.n.n.n se ha asignado manualmente. No se asignará ninguna dirección dinámica.

Causa:

Se ha asignado manualmente una dirección al ID de cliente, y se ha marcado la dirección como no utilizable. El servidor no puede asignar a este cliente una dirección distinta.

Solución:

Utilice DHCP Manager o el comando pntadm para hacer que la dirección sea utilizable, o asigne manualmente al cliente una dirección distinta.


La asignación manual (n.n.n.n, ID de cliente) tiene otros n registros. Debería tener 0.

Causa:

Se ha asignado manualmente más de una dirección IP al cliente con el ID especificado. Solo se debe asignar una dirección por cliente. El servidor selecciona la última dirección asignada que encuentra en la tabla de red.

Solución:

Utilice DHCP Manager o el comando pntadm para modificar direcciones IP y eliminar las asignaciones manuales adicionales.


No hay más direcciones IP en la red n.n.n.n.

Causa:

Se han asignado todas las direcciones IP actualmente gestionadas por DHCP en la red especificada.

Solución:

Utilice DHCP Manager o el comando pntadm para crear nuevas direcciones IP para esta red.


El permiso del cliente: ID_cliente en n.n.n.n ha caducado.

Causa:

El permiso no era negociable y ha caducado.

Solución:

El cliente deberá iniciar automáticamente el protocolo para obtener un nuevo permiso.


Ha caducado la oferta para el cliente: n.n.n.n

Causa:

El servidor ha hecho una oferta de dirección IP al cliente, pero el cliente ha tardado demasiado en responder y la oferta ha caducado.

Solución:

El cliente deberá emitir automáticamente otro mensaje de descubrimiento. Si este mensaje caduca también, aumente el tiempo de caducidad de ofertas del servidor DHCP. En el Administrador de DHCP, elija Modify en el menú Service.


El permiso del cliente: ID_cliente le falta la opción de IP solicitada.

Causa:

La solicitud del cliente no especificaba la dirección IP ofrecida, de modo que el servidor DHCP ha hecho caso omiso de la solicitud. Este problema puede presentarse si se utiliza un cliente DHCP de otro fabricante que no sea compatible con el protocolo DHCP actualizado, RFC 2131.

Solución:

Actualice el software cliente.


El permiso del cliente: ID_cliente está intentando renovar n.n.n.n, una dirección IP a la que no ha dado permiso.

Causa:

La dirección IP de este cliente en la tabla de red DHCP no coincide con la dirección IP especificada en su solicitud de renovación. El servidor DHCP no renueva el permiso. Este problema se puede presentar al borrar un registro del cliente mientras este está aún utilizando la dirección IP.

Solución:

Utilice DHCP Manager o el comando pntadm para examinar la table de red y corregir el registro del cliente en caso necesario. El ID del cliente debe estar vinculado a la dirección IP especificada. Si no está vinculado a ella, edite las propiedades de la dirección para agregar el ID del cliente.


El permiso del cliente: ID_cliente está intentando verificar la dirección no registrada: n.n.n.n, ignorada.

Causa:

El cliente especificado no se ha registrado en la tabla de red DHCP con esta dirección, de modo que este servidor DHCP hace caso omiso de la solicitud.

Es posible que otro servidor DHCP de la red haya asignado la dirección al cliente. Sin embargo, puede que haya eliminado también el registro del cliente mientras este aún estaba utilizando la dirección IP.

Solución:

Utilice DHCP Manager o el comando pntadm para examinar la tabla de red de este servidor y otros servidores DHCP de la red. Efectúe las correcciones necesarias.

También puede no hacer nada y permitir que el permiso caduque. El cliente solicitará automáticamente un nuevo permiso de dirección.

Si quiere que el cliente obtenga un nuevo permiso inmediatamente, reinicie el protocolo DHCP en el cliente mediante los comandos siguientes:


ifconfig interface dhcp release
ifconfig interface dhcp start

Solución de problemas de configuración del cliente DHCP

Los problemas que pueden aparecen con un cliente DHCP pertenecen a alguna de las siguientes categorías:

Problemas de comunicación con el servidor DHCP

En esta sección se describen los problemas que se pueden presentar al agregar clientes DHCP a la red.

Después de activar el software cliente y reiniciar el sistema, el cliente intentará conectar con el servidor DHCP para obtener su configuración de red. Si el cliente no puede acceder al servidor, es posible que se muestren mensajes de error similares a los siguientes:


DHCP or BOOTP server not responding 

    Antes de poder determinar el problema, deberá reunir información de diagnóstico del cliente y del servidor. Para recopilar esta información, efectúe las siguientes tareas:

  1. Cómo ejejcutar el cliente DHCP en modo de depuración

  2. Cómo ejecutar el servidor DHCP en modo de depuración

  3. Cómo utilizar snoop para supervisar el tráfico DHCP en la red

Puede llevar a cabo estos procesos de forma independiente o simultánea.

La información recogida puede ayudarle a determinar si el problema es del cliente, del servidor o de un agente de reenvío. Esto le permitirá hallar una solución.

ProcedureCómo ejejcutar el cliente DHCP en modo de depuración

Si no es un cliente DHCP de Oracle Solaris, consulte la documentación del cliente para obtener información sobre cómo ejecutarlo en modo de depuración.

Si tiene un cliente DHCP de Oracle Solaris, siga estos pasos.

  1. Asígnese los privilegios de superusuario en el sistema del cliente DHCP.

  2. Finalice el daemon del cliente DHCP.


    # pkill -x dhcpagent
    
  3. Reinicie el daemon en modo de depuración.


    # /sbin/dhcpagent -d1 -f &
    

    La opción -d pone el cliente DHCP en modo de depuración con detalle de nivel 1. La opción -f hace que la salida se envíe a la consola en lugar de a syslog.

  4. Configure la interfaz para que inicie la negociación DHCP.


    # ifconfig interface dhcp start
    

    Sustituya interfaz por el nombre de la interfaz de red del cliente, por ejemplo ge0.

    Cuando se ejcuta en modo de depuración, el daemon del cliente muestra mensajes en pantalla mientras atiende las solicitudes de DHCP. Consulte Salida del cliente DHCP en modo de depuración para obtener información sobre la salida del cliente en dicho modo.

ProcedureCómo ejecutar el servidor DHCP en modo de depuración

  1. Conviértase en superusuario en el sistema del servidor.

  2. Detenga temporalmente el servidor DHCP.


    # svcadm disable -t svc:/network/dhcp-server
    

    También puede utilizar DHCP Manager o dhcpconfig para detener el servidor.

  3. Reinicie el daemon en modo de depuración.


    # /usr/lib/inet/in.dhcpd -d -v
    

    Deberá utilizar también las opciones de línea de comandos de in.dhcpd que utiliza normalmente al ejecutar el daemon. Por ejemplo, si ejecuta el daemon como agente de reenvío BOOTP, incluya la opción -r en el comando in.dhcpd -d -v.

    Cuando se ejecuta en modo de depuración, el daemon muestra mensajes en pantalla mientras procesa las solicitudes de DHCP o BOOTP. Consulte Salida del servidor DHCP en modo de depuración para obtener información sobre la depuración del servidor.

ProcedureCómo utilizar snoop para supervisar el tráfico DHCP en la red

  1. Asígnese los privilegios de superusuario en el sistema del servidor DHCP.

  2. Inicie snoop para empezar a rastrear el tráfico de red que pasa por la interfaz de red del servidor.


    # /usr/sbin/snoop -d interface -o snoop-output-filename udp port 67 or udp port 68
    

    Por ejemplo, escriba el comando siguiente:


    #  /usr/sbin/snoop -d hme0 -o /tmp/snoop.output udp port 67 or udp port 68
    

    snoop sigue supervisando la interfaz hasta que detenga snoop pulsando Control-C cuando ya tenga la información que necesita.

  3. Inicie el sistema cliente o reinicie dhcpagent en él.

    En Cómo ejejcutar el cliente DHCP en modo de depuración se indca cómo reiniciar dhcpagent.

  4. En el sistema servidor, utilice snoop para mostrar el archivo de salida con el contenido de los paquetes de red:


    # /usr/sbin/snoop -i snoop-output-filename -x0 -v
    

    Por ejemplo, escriba el comando siguiente:

    # /usr/sbin/snoop -i /tmp/snoop.output -x0 -v
    
Véase también

ConsulteSalida de snoop en DHCP para obtener información de interpretación de la salida.

Salida del cliente DHCP en modo de depuración

En el ejemplo siguiente se muestra una salida normal cuando un cliente DHCP en modo de depuración envía su solicitud DHCP y recibe su información de configuración de un servidor DHCP.


Ejemplo 17–1 Salida normal del cliente DHCP en modo de depuración


/sbin/dhcpagent: debug: set_packet_filter: set filter 0x27fc8 (DHCP filter) 
/sbin/dhcpagent: debug: init_ifs: initted interface hme0 
/sbin/dhcpagent: debug: insert_ifs: hme0: sdumax 1500, optmax 1260, hwtype 1, hwlen 6 
/sbin/dhcpagent: debug: insert_ifs: inserted interface hme0 
/sbin/dhcpagent: debug: register_acknak: registered acknak id 5 
/sbin/dhcpagent: debug: unregister_acknak: unregistered acknak id 5 
/sbin/dhcpagent: debug: set_packet_filter: set filter 0x26018 (ARP reply filter)
/sbin/dhcpagent: info: setting IP netmask on hme0 to 255.255.192.0 
/sbin/dhcpagent: info: setting IP address on hme0 to 10.23.3.233 
/sbin/dhcpagent: info: setting broadcast address on hme0 to 10.23.63.255 
/sbin/dhcpagent: info: added default router 10.23.0.1 on hme0 
/sbin/dhcpagent: debug: set_packet_filter: set filter 0x28054 (blackhole filter) 
/sbin/dhcpagent: debug: configure_if: bound ifsp->if_sock_ip_fd 
/sbin/dhcpagent: info: hme0 acquired lease, expires Tue Aug 10 16:18:33 2006 
/sbin/dhcpagent: info: hme0 begins renewal at Tue Aug 10 15:49:44 2006 
/sbin/dhcpagent: info: hme0 begins rebinding at Tue Aug 10 16:11:03 2006

Si el cliente no puede acceder al servidor DHCP, es posible que la salida del modo de depuración sea similar a este ejemplo.


Ejemplo 17–2 Salida del cliente DHCP en modo de depuración que indica que hay algún problema


/sbin/dhcpagent: debug: set_packet_filter: set filter 0x27fc8 (DHCP filter)
/sbin/dhcpagent: debug: init_ifs: initted interface hme0 
/sbin/dhcpagent: debug: select_best: no valid OFFER/BOOTP reply
/sbin/dhcpagent: debug: select_best: no valid OFFER/BOOTP reply
/sbin/dhcpagent: debug: select_best: no valid OFFER/BOOTP reply
 

Si se muestra este mensaje, la solicitud del cliente no ha llegado al servidor o el servidor no puede enviar una respuesta al cliente. Ejecute snoop en el servidor según se describe en Cómo utilizar snoop para supervisar el tráfico DHCP en la red para determinar si los paquetes del cliente han llegado al servidor.

Salida del servidor DHCP en modo de depuración

Una salida normal del servidor en modo de depuración contiene información de configuración del servidor y, a continuación, información acerca de cada una de las interfaces de red a medida que el daemon se inicia. Tras el inicio del daemon, la salida del modo de depuración contiene información acerca de las solicitudes procesadas por el daemon. El Ejemplo 17–3 muestra la salida del modo de depuración de un servidor DHCP que se acaba de iniciar. El servidor amplía el permiso para un cliente que utiliza una dirección propiedad de otro servidor DHCP que no responde.


Ejemplo 17–3 Salida normal de un servidor DHCP en modo de depuración


Daemon Version: 3.1  
Maximum relay hops: 4  
Transaction logging to console enabled.  
Run mode is: DHCP Server Mode.  
Datastore: nisplus  
Path: org_dir.dhcp.test..:dhcp.test..:$ 
DHCP offer TTL: 10  
Ethers compatibility enabled.  
BOOTP compatibility enabled.  
ICMP validation timeout: 1000 milliseconds, Attempts: 2.  
Monitor (0005/hme0) started...  
Thread Id: 0005 - Monitoring Interface: hme0 *****  
MTU: 1500      Type: DLPI  
Broadcast: 10.21.255.255 
Netmask: 255.255.0.0  
Address: 10.21.0.2  
Monitor (0006/nf0) started...  
Thread Id: 0006 - Monitoring Interface: nf0 *****  
MTU: 4352      Type: DLPI  
Broadcast: 10.22.255.255  
Netmask: 255.255.0.0  
Address: 10.22.0.1  
Monitor (0007/qfe0) started...  
Thread Id: 0007 - Monitoring Interface: qfe0 *****  
MTU: 1500      Type: DLPI   
Broadcast: 10.23.63.255  
Netmask: 255.255.192.0  
Address: 10.23.0.1  
Read 33 entries from DHCP macro database on Tue Aug 10 15:10:27 2006 
Datagram received on network device: qfe0  
Client: 0800201DBA3A is requesting verification of address owned by 10.21.0.4 
Datagram received on network device: qfe0  
Client: 0800201DBA3A is requesting verification of address owned by 10.21.0.4  
Datagram received on network device: qfe0  
Client: 0800201DBA3A is requesting verification of address owned by 10.21.0.4  
Datagram received on network device: qfe0  
Client: 0800201DBA3A maps to IP: 10.23.3.233  
Unicasting datagram to 10.23.3.233 address.  
Adding ARP entry: 10.23.3.233 == 0800201DBA3A  
DHCP EXTEND 0934312543 0934316143 10.23.3.233 10.21.0.2 
          0800201DBA3A SUNW.Ultra-5_10 0800201DBA3A

El Ejemplo 17–4 muestra la salida del modo de depuración de un daemon DHCP que se inicia como agente de reenvío BOOTP. El agente reenvía solicitudes de un cliente a un servidor DHCP, y reenvía las respuestas del servidor al cliente.


Ejemplo 17–4 Salida normal de agente de reenvío BOOTP en modo de depuración


Relay destination: 10.21.0.4 (blue-servr2)     network: 10.21.0.0  
Daemon Version: 3.1  
Maximum relay hops: 4  
Transaction logging to console enabled.  
Run mode is: Relay Agent Mode.  
Monitor (0005/hme0) started...  
Thread Id: 0005 - Monitoring Interface: hme0 *****  
MTU: 1500      Type: DLPI  
Broadcast: 10.21.255.255  
Netmask: 255.255.0.0  
Address: 10.21.0.2  
Monitor (0006/nf0) started...  
Thread Id: 0006 - Monitoring Interface: nf0 *****  
MTU: 4352      Type: DLPI  
Broadcast: 10.22.255.255  
Netmask: 255.255.0.0  
Address: 10.22.0.1  
Monitor (0007/qfe0) started...  
Thread Id: 0007 - Monitoring Interface: qfe0 *****  
MTU: 1500      Type: DLPI  
Broadcast: 10.23.63.255  
Netmask: 255.255.192.0  
Address: 10.23.0.1  
Relaying request 0800201DBA3A to 10.21.0.4, server port.  
BOOTP RELAY-SRVR 0934297685 0000000000 0.0.0.0 10.21.0.4 0800201DBA3A 
N/A 0800201DBA3A  
Packet received from relay agent: 10.23.0.1  
Relaying reply to client 0800201DBA3A  
Unicasting datagram to 10.23.3.233 address.  
Adding ARP entry: 10.23.3.233 == 0800201DBA3A  
BOOTP RELAY-CLNT 0934297688 0000000000 10.23.0.1 10.23.3.233 0800201DBA3A 
N/A 0800201DBA3A  
Relaying request 0800201DBA3A to 10.21.0.4, server port.  
BOOTP RELAY-SRVR 0934297689 0000000000 0.0.0.0 10.21.0.4 0800201DBA3A 
N/A 0800201DBA3A  
Packet received from relay agent: 10.23.0.1  
Relaying reply to client 0800201DBA3A  
Unicasting datagram to 10.23.3.233 address.  
Adding ARP entry: 10.23.3.233 == 0800201DBA3A 
 

Si hay algún problema con DHCP, la salida del modo de depuracuión puede contener advertencias o mensajes de error. Utilice la siguiente lista de mensajes de error del servidor DHCP para encontrar soluciones.


Respuesta de ICMP ECHO al candidato de OFFER: dirección_ip desactivando

Causa:

Antes de que el servidor DHCP ofrezca una dirección IP a un cliente, el servidor envía un ping a la dirección para comprobar que no se está utilizando. Si algún cliente responde, la dirección se está utilizando.

Solución:

Asegúrese de que las direcciones configuradas no se están utilizando. Puede utilizar para ello el comando ping. Para más información consulte la página de comando manping(1M).


No hay más direcciones IP en la red dirección_red.

Causa:

No hay direcciones IP disponibles en la tabla de red DHCP asociada con la red del cliente.

Solución:

Cree más direcciones IP mediante DHCP Manager o el comando pntadm. Si el daemon de DHCP está supervisando varias subredes, compruebe que las direcciones adicionales son para la subred en la que se encuentra el cliente. Para más información consulte Cómo agregar direcciones IP al servicio DHCP.


No hay mas direcciones IP para la red dirección_red cuando se ejcuta el daemon de DHCP en modo de compatibilidad con BOOTP.

Causa:

BOOTP no utiliza tiempos de permiso, de modo que el servidor DHCP busca direcciones libres con el indicador BOOTP activado para asignar a clientes BOOTP.

Solución:

Utilice DHCP Manager para asignar direcciones BOOTP. Para más información consulte Clientes BOOTP con el servicio DHCP (mapa de tareas).


Solicitud de acceso a base de datos por red inexistente: nombre_base_datos en almacén de datos: almacén_datos.

Causa:

Durante la configuración del servidor DHCP no se ha creado una tabla de red DHCP para una subred.

Solución:

Utilice DHCP Manager o el comando pntadm para crear la tabla de red DHCP y nuevas direcciones IP. Consulte Cómo agregar redes DHCP.


No existe la tabla de red DHCP nombre_tabla para la red del cliente DHCP.

Causa:

Durante la configuración del servidor DHCP no se ha creado una tabla de red DHCP para una subred.

Solución:

Utilice DHCP Manager o el comando pntadm para crear la tabla de red DHCP y nuevas direcciones IP. Consulte Cómo agregar redes DHCP.


El cliente utiliza una cookie de BOOTP no compatible con RFC1048.

Causa:

Un dispositivo de la red está intentando acceder a una implementación incompatible de BOOTP.

Solución:

Haga caso omiso de este mensaje a menos que tenga necesidad de configurar el dispositivo. Si quiere que el dispositivo sea compatible, consulte Clientes BOOTP con el servicio DHCP (mapa de tareas) para más información.

Salida de snoop en DHCP

En la salida de snoop podrá ver los paquetes intercambiados entre el sistema cliente DHCP y el sistema servidor DHCP. La dirección IP de cada sistema está indicada en el paquete. También se incluyen las direcciones IP de los enrutadores o agentes de reenvío que se encuentran en la ruta del paquete. Si los sistemas no intercambian paquetes, es posible que el sistema cliente no pueda ponerse en contacto con el sistema servidor. El problema se encuentra en un nivel inferior.

Para evaluar la salida de snoop deberá saber cuál es el comportamiento esperado. Deberá saber, por ejemplo, si la solicitud debe pasar por un agente de reenvío BOOTP. También deberá saber las direcciones MAC e IP de los sistemas implicados par poder determinar si se trata de los valores esperados. Si hay más de una interfaz de red, deberá conocer también las direcciones de las interfaces de red.

En el ejemplo siguiente se muestra una salida normal de snoop para un mensaje de reconocimiento (ACK) de DHCP enviado desde el servidor en blue-servr2 a un cliente cuya dirección MAC es 8:0:20:8e:f3:7e . En el mensaje, el servidor asigna al cliente la dirección IP 192.168.252.6 y el nombre de host white-6. El mensaje incluye también diversas opciones de red estándar y varias opciones de cliente específicas del proveedor.


Ejemplo 17–5 Ejemplo de salida de snoop para un paquete


ETHER:  ----- Ether Header ----- 
ETHER:   
ETHER:  Packet 26 arrived at 14:43:19.14 
ETHER:  Packet size = 540 bytes 
ETHER:  Destination = 8:0:20:8e:f3:7e, Sun 
ETHER:  Source      = 8:0:20:1e:31:c1, Sun 
ETHER:  Ethertype = 0800 (IP) 
ETHER:  
IP:   ----- IP Header ----- 
IP:    
IP:   Version = 4 
IP:   Header length = 20 bytes 
IP:   Type of service = 0x00 
IP:         xxx. .... = 0 (precedence) 
IP:         ...0 .... = normal delay 
IP:         .... 0... = normal throughput 
IP:         .... .0.. = normal reliability 
IP:   Total length = 526 bytes 
IP:   Identification = 64667 
IP:   Flags = 0x4 IP:         .1.. .... = do not fragment 
IP:         ..0. .... = last fragment 
IP:   Fragment offset = 0 bytes 
IP:   Time to live = 254 seconds/hops 
IP:   Protocol = 17 (UDP) 
IP:   Header checksum = 157a 
IP:   Source address = 10.21.0.4, blue-servr2 
IP:   Destination address = 192.168.252.6, white-6 
IP:   No options 
IP:   UDP:  ----- UDP Header ----- 
UDP:   
UDP:  Source port = 67 
UDP:  Destination port = 68 (BOOTPC) 
UDP:  Length = 506  
UDP:  Checksum = 5D4C  
UDP:  
DHCP: ----- Dynamic Host Configuration Protocol ----- 
DHCP:  
DHCP: Hardware address type (htype) =  1 (Ethernet (10Mb)) 
DHCP: Hardware address length (hlen) = 6 octets 
DHCP: Relay agent hops = 0 
DHCP: Transaction ID = 0x2e210f17 
DHCP: Time since boot = 0 seconds 
DHCP: Flags = 0x0000 
DHCP: Client address (ciaddr) = 0.0.0.0 
DHCP: Your client address (yiaddr) = 192.168.252.6 
DHCP: Next server address (siaddr) = 10.21.0.2 
DHCP: Relay agent address (giaddr) = 0.0.0.0 
DHCP: Client hardware address (chaddr) = 08:00:20:11:E0:1B 
DHCP:  
DHCP: ----- (Options) field options ----- 
DHCP:  
DHCP: Message type = DHCPACK 
DHCP: DHCP Server Identifier = 10.21.0.4 
DHCP: Subnet Mask = 255.255.255.0 
DHCP: Router at = 192.168.252.1 
DHCP: Broadcast Address = 192.168.252.255 
DHCP: NISPLUS Domainname = dhcp.test 
DHCP: IP Address Lease Time = 3600 seconds 
DHCP: UTC Time Offset = -14400 seconds 
DHCP: RFC868 Time Servers at = 10.21.0.4 
DHCP: DNS Domain Name = sem.example.com 
DHCP: DNS Servers at = 10.21.0.1 
DHCP: Client Hostname = white-6 
DHCP: Vendor-specific Options (166 total octets): 
DHCP:   (02) 04 octets  0x8194AE1B (unprintable) 
DHCP:   (03) 08 octets  "pacific" 
DHCP:   (10) 04 octets  0x8194AE1B (unprintable) 
DHCP:   (11) 08 octets  "pacific" 
DHCP:   (15) 05 octets  "xterm" 
DHCP:   (04) 53 octets  "/export/s2/base.s2s/latest/Solaris_8/Tools/Boot" 
DHCP:   (12) 32 octets  "/export/s2/base.s2s/latest" 
DHCP:   (07) 27 octets  "/platform/sun4u/kernel/unix" 
DHCP:   (08) 07 octets  "EST5EDT" 
  0: 0800 208e f37e 0800 201e 31c1 0800 4500    .. .ó~.. .1...E.
 16: 020e fc9b 4000 fe11 157a ac15 0004 c0a8    ....@....z......           
 32: fc06 0043 0044 01fa 5d4c 0201 0600 2e21    ...C.D..]L.....!           
 48: 0f17 0000 0000 0000 0000 c0a8 fc06 ac15    ................           
 64: 0002 0000 0000 0800 2011 e01b 0000 0000    ........ .......           
 80: 0000 0000 0000 0000 0000 0000 0000 0000    ................           
 96: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
112: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
128: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
144: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
160: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
176: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
192: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
208: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
224: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
240: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
256: 0000 0000 0000 0000 0000 0000 0000 0000    ................          
272: 0000 0000 0000 6382 5363 3501 0536 04ac    ......c.Sc5..6..          
288: 1500 0401 04ff ffff 0003 04c0 a8fc 011c    ................          
304: 04c0 a8fc ff40 0964 6863 702e 7465 7374    .....@.dhcp.test          
320: 3304 0000 0e10 0204 ffff c7c0 0404 ac15    3...............          
336: 0004 0f10 736e 742e 6561 7374 2e73 756e    ....sem.example.          
352: 2e63 6f6d 0604 ac15 0001 0c07 7768 6974    com.........whit          
368: 652d 362b a602 0481 94ae 1b03 0861 746c    e-6+.........pac          
384: 616e 7469 630a 0481 94ae 1b0b 0861 746c    ific.........pac          
400: 616e 7469 630f 0578 7465 726d 0435 2f65    ific...xterm.5/e          
416: 7870 6f72 742f 7332 382f 6261 7365 2e73    xport/sx2/bcvf.s          
432: 3238 735f 776f 732f 6c61 7465 7374 2f53    2xs_btf/latest/S          
448: 6f6c 6172 6973 5f38 2f54 6f6f 6c73 2f42    olaris_x/Tools/B          
464: 6f6f 740c 202f 6578 706f 7274 2f73 3238    oot. /export/s2x          
480: 2f62 6173 652e 7332 3873 5f77 6f73 2f6c    /bcvf.s2xs_btf/l         
496: 6174 6573 7407 1b2f 706c 6174 666f 726d    atest../platform          
512: 2f73 756e 346d 2f6b 6572 6e65 6c2f 756e    /sun4u/kernel/un          
528: 6978 0807 4553 5435 4544 54ff              ix..EST5EDT.  

Problemas por información de configuración DHCP incorrecta

Si un cliente DHCP recibe información de configuración de red incorrecta, examine los datos del servidor DHCP. Deberá examinar los valores de las opciones en las macros que el servidor DHCP procesa para este cliente. Información incorrecta puede ser, por ejemplo, un nombre de dominio NIS o una dirección IP de enrutador erróneos.

Utilice las siguientes pautas generales para determinar el origen de la información incorrecta:

Problemas con el nombre de host proporcionado por el cliente DHCP

En esta sección se describen los posibles problemas con clientes DHCP que proporcionan sus propios nombres de host para registrarse con DNS.

El cliente DHCP no solicita un nombre de host

Si su cliente no es un cliente DHCP de Oracle Solaris, consulte la documentación para determinar la forma de configurar el cliente para que solicite un nombre de host. Para los clientes DHCP de Oracle Solaris, consulte Cómo activar un cliente DHCPv4 de Oracle Solaris para que solicite un nombre de host específico.

El cliente DHCP no obtiene el nombre de host solicitado

En la lista siguiente se describen los problemas que puede experimentar un cliente para obtener el nombre de host solicitado, y las soluciones que se sugieren.

Problema:

El cliente ha aceptado una oferta de un servidor DHCP que no emite actualizaciones de DNS.

Solución:

Si el cliente tiene disponibles dos servidores DHCP, ambos se deben configurar para proporcionar actualizaciones de DNS. Consulte Habilitación de las actualizaciones DNS dinámicas por parte del servidor DHCP para obtener información sobre la configuración del servidor DHCP y del servidor DNS.

Para determinar si el servidor DHCP está configurado para proporcionar actualizaciones de DNS:

  1. Determine la dirección IP del servidor DHCP del cliente. En el sistema cliente, utilice snoop u otra aplicación para capturar paquetes de red. Consulte Cómo utilizar snoop para supervisar el tráfico DHCP en la red y efectúe el procedimiento en el cliente en lugar de hacerlo en el servidor. En la salida de snoop, busque el identificador del servidor DHCP para obtener la dirección IP del servidor.

  2. Inicie sesión en el sistema servidor DHCP para comprobar que esté configurado para efectuar actualizaciones de DNS. Escriba el siguiente comando como superusuario:

    dhcpconfig -P

    Si aparece UPDATE_TIMEOUT como parámetro de servidor, el servidor DHCP está configurado para efectuar actualizaciones de DNS.

  3. En el servidor DNS, examine el archivo /etc/named.conf. Busque la palabta clave allow-update en la sección zone del dominio apropiado. Si el servidor permite que el servidor DHCP efectúe actualizaciones de DNS, la dirección IP del servidor DHCP aparecerá en la palabra clave allow-update.

Problema:

El cliente utiliza la opción FQDN para especificar el nombre de host. Actualmente Oracle Solaris DHCP no es compatible con FQDN porque no es una opción oficial del protocolo DHCP.

Solución:

En el servidor, utilice snoop u otra aplicación para capturar paquetes de red. Consulte Cómo utilizar snoop para supervisar el tráfico DHCP en la red En la salida de snoop, busque la opción FQDN en un paquete del cliente.

Configure el cliente para que especifique el nombre de host con la opción Hostname. Hostname tiene el código de opción 12. Consulte la documentación de cliente para obtener instrucciones.

Para un cliente DHCP de Oracle Solaris, consulte Cómo activar un cliente DHCPv4 de Oracle Solaris para que solicite un nombre de host específico.

Problema:

El servidor DHCP que efectúa una oferta de dirección al cliente no conoce el dominio DNS de este.

Solución:

En el servidor DHCP, busque la opción DNSdmain con un valor válido. Configure la opción DNSdmain con el dominio DNS correcto en una macro procesada para este cliente. DNSdmain suele estar incluida en la macro de red. Consulte Modificación de macros DHCP para obtener información sobre cómo cambiar los valores de las opciones de una macro.

Problema:

El nombre de host solicitado por el cliente corresponde a una dirección IP no gestionada por el servidor DHCP. El servidor DHCP de Oracle Solaris no efectúa actualizaciones de DNS para direcciones IP que no gestiona.

Solución:

Examinesyslog y busque uno de los siguientes mensajes del servidor DHCP:

Configure el cliente para que solicite un nombre distinto. Consulte Cómo activar un cliente DHCPv4 de Oracle Solaris para que solicite un nombre de host específico. Elija un nombre asignado a una de las direcciones gestionadas por el servidor DHCP. Puede acceder a las asignaciones de direcciones en la ficha Direcciones de DHCP Manager. También puede elegir una dirección que no esté asignada a ninguna dirección IP.

Problema:

El nombre de host solicitado por el cliente corresponde a una dirección IP no disponible actualmente. Es posible que la dirección se esté utilizando, se haya asignado a otro cliente o se haya ofrecido a otro cliente.

Solución:

Examinesyslog y busque el siguiente mensaje del servidor DHCP: ICMP ECHO reply to OFFER candidate: n.n.n.n.

Configure el cliente para que elija un nombre que corresponda a una dirección IP distinta. También puede recuperar la dirección del cliente que la está utilizando.

Problema:

El servidor DNS no está configurado para aceptar actualizaciones del servidor DHCP.

Solución:

Examine el archivo /etc/named.conf del servidor DNS. Busque la dirección IP del servidor DHCP con la palabra clave allow-update en la sección zone apropiada del dominio del servidor DHCP. Si no encuentra la dirección IP, el servidor DNS no está configurado para aceptar actualizaciones del servidor DHCP.

Consulte Cómo activar la actualización de DNS dinámica para los clientes DHCP para obtener información sobre la configuración del servidor DNS.

Si el servidor DHCP tiene varias interfaces, quizá deba configurar el servidor DNS para que acepte actualizaciones de todas las direcciones del servidor DHCP. Active el modo de depuración en el servidor DNS para ver si le están llegando las actualizaciones. Si el servidor DNS ha recibido solicitudes de actualización, examine la salida del modo de depuración para determinar por qué no se han producido las actualizaciones. Consulte la página de comando man in.named.1M para obtener información sobre el modo de depuración de DNS.

Problema:

Es posible que las actualizaciones de DNS no se hayan completado en el tiempo asignado. Los servidores DHCP no devuelven nombres de host a los clientes si las actualizaciones de DNS no se han completado antes del límite de tiempo configurado. Sin embargo, los intentos de completar las actualizaciones de DNS no se interrumpen.

Solución:

Utilice el comando nslookup para determinar si las actualizaciones se han completado satisfactoriamente. Consulte la página de comando man nslookup(1M).

Por ejemplo, supongamos que el dominio DNS es hills.example.org y la dirección IP del servidor DNS es 10.76.178.11. El nombre de host que el cliente desea registrar es cathedral. Puede utilizar el comando siguiente para determinar si cathedral se ha registrado con ese servidor DNS:

nslookup cathedral.hills.example.org 10.76.178.11

Si las actualizaciones se han efectuado satisfactoriamente, pero no en el tiempo asignado, deberá aumentar el tiempo. Consulte Cómo activar la actualización de DNS dinámica para los clientes DHCP. En este procedimiento deberá aumentar el número de segundos durante los que se debe esperar una respuesta del servidor DNS antes de que se agote el tiempo.