4 votos

Hay una forma oficial para detectar un servidor DHCP existente?

Estoy planeando una nueva característica de nuestro producto para el apoyo de una LAN. Desde el montaje será realizado por relativamente gente no técnica (para los barcos) yo estaba pensando que sería útil para detectar automáticamente si hemos necesitado de un servidor DHCP o no, dependiendo de uno ya estaba en la red. Hay una forma oficial de comprobar si ya existe un servidor DHCP (o más de uno) en la red?

Usamos Linux Embebido en el producto.

10voto

Tom H Puntos 6181

fedora parece tener el siguiente paquete en los repositorios "dhcp_probe"

Descripción : dhcp_probe intenta descubrir DHCP y BootP servidores en una directamente conectado a la red Ethernet. Un administrador de red puede el uso de esta herramienta para localizar DHCP no autorizados y servidores BootP.


Se parece a la man dhcp_probe tiene algunos buenos consejos para DHCP estrategia de descubrimiento que podría ser digno de una mirada, incluso si usted decide ir para la elaboración de los paquetes a sí mismo.

PAQUETE DE SABORES
No hay un único paquete de solicitud es probable que provoque una respuesta de cada posible BootP y DHCP server. Algunos puede que los servidores única respuesta a cualquiera de BootP o DHCP, pero no tanto. Algunos servidores pueden ser configurados para que solo responder a un conjunto pequeño de clientes conocidos. Algunos servidores DHCP sólo proporcionará arrienda a un pequeño conjunto de conoce a los clientes, pero puede estar dispuesto a responder (negativamente) a los clientes desconocidos que solicitar una renovación de la concesión de en una inadecuada dirección IP. Por lo tanto, dhcp_probe envía realmente no uno, sino cinco sabor diferente los paquetes de solicitud, con la esperanza de provocar respuestas de una amplia variedad de servidores desconocidos.

$ rpm -qil dhcp_probe
Name        : dhcp_probe
Version     : 1.3.0
Release     : 8.fc15
Architecture: x86_64
Install Date: Mon 30 Apr 2012 12:20:46 AM BST
Group       : System Environment/Daemons
Size        : 133600
License     : GPLv2+ and MIT
Signature   : RSA/SHA256, Thu 28 Jul 2011 11:45:40 AM BST, Key ID 067f00b6a82ba4b7
Source RPM  : dhcp_probe-1.3.0-8.fc15.src.rpm
Build Date  : Tue 08 Feb 2011 01:58:57 PM GMT
Build Host  : x86-18.phx2.fedoraproject.org
Relocations : (not relocatable)
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : http://www.net.princeton.edu/software/dhcp_probe/
Summary     : Tool for discover DHCP and BootP servers
Description :
dhcp_probe attempts to discover DHCP and BootP servers on a directly-attached
Ethernet network. A network administrator can use this tool to locate
unauthorized DHCP and BootP servers.
/etc/dhcp_probe.cf
/etc/rc.d/init.d/dhcp_probe
/usr/sbin/dhcp_probe
/usr/share/doc/dhcp_probe-1.3.0
/usr/share/doc/dhcp_probe-1.3.0/AUTHORS
/usr/share/doc/dhcp_probe-1.3.0/COPYING
/usr/share/doc/dhcp_probe-1.3.0/COPYING.GPL
/usr/share/doc/dhcp_probe-1.3.0/COPYING.LIB
/usr/share/doc/dhcp_probe-1.3.0/NEWS
/usr/share/doc/dhcp_probe-1.3.0/README
/usr/share/doc/dhcp_probe-1.3.0/TODO
/usr/share/man/man5/dhcp_probe.cf.5.gz
/usr/share/man/man8/dhcp_probe.8.gz

8voto

Russ Wheeler Puntos 173

No confundamos la palabra "oficial" con el concepto de "método generalmente aceptado".

Un método generalmente aceptado sería cuestión de un paquete DHCPDiscover y busca una respuesta.

4voto

mulaz Puntos 7774

Si usted tiene "dhcpcd" instalado, puede usar la opción "-T" de la flag, para obtener la "prueba" de modo, que sólo se hace eco de la configuración, pero en realidad no establecer la dirección IP y la puerta de enlace.

dhcpcd -T

y el resultado:

emily ~ # dhcpcd -T wlan0
dhcpcd[6205]: version 5.2.12 starting
dhcpcd[6205]: wlan0: broadcasting for a lease
dhcpcd[6205]: wlan0: offered 192.168.2.194 from 192.168.2.1
interface=wlan0
pid=6205
reason=TEST
skip_hooks=lookup-hostname
new_broadcast_address=192.168.2.255
new_dhcp_lease_time=86400
new_dhcp_message_type=2
new_dhcp_server_identifier=192.168.2.1
new_domain_name_servers='192.168.2.1 193.189.160.13 193.189.160.23'
new_ip_address=192.168.2.194
new_network_number=192.168.2.0
new_routers=192.168.2.1
new_subnet_cidr=24
new_subnet_mask=255.255.255.0

1voto

Magellan Puntos 3691

Usted puede hacer sus propios DHCPDISCOVER para ver si hay algo ahí fuera está configurado para responder, pero si el servidor DHCP está bloqueado a los detalles específicos MACS usted no puede obtener una respuesta.

En teoría podría hacer un puerto UDP scan para UDP67 y UDP68, pero no estoy tan seguro de que es una gran idea ya que es más probable para ser marcado como, posiblemente, el comportamiento malicioso.

Hablando en general, los productos que no son de la red de equipos no deben oferta de DHCP. Se hace un real sysadmin el trabajo más difícil, especialmente si tiene una tendencia a activar por defecto, si pierde su configuración.

Eso es una cosa que siempre me volvía loca acerca de la vieja de mierda Hawking Ethernet a USB "servidor de impresión" de las cajas convertidoras.

-1voto

Robin Gill Puntos 2305

Enviar una solicitud de DHCP y esperar a ver si consigues una oferta de DHCP.

Más burdas método - la creación de un NIC por lo que recives una dirección IP a través de DHCP, a continuación, compruebe después de un período, ya que recibe una dirección APIPA. Si se recibe una dirección APIPA es poco probable que haya un servidor DHCP existente conectado a la red en cuestión.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X