Oferta DHCP ya enviada a mi dirección IP local

2

Ingresé estos comandos en la Terminal para liberar mi dirección IP local actual y asignar una nueva:

sudo ipconfig set en0 BOOTP
sudo ipconfig set en0 DHCP

Esta es la captura de pantalla de los paquetes DHCP en Wireshark:

ingrese la descripción de la imagen aquí

Según el libro que estoy leyendo, el mensaje de oferta de DHCP debe transmitirse al 255.255.255.255. Ese no es el caso y estoy confundido de cómo el enrutador ya conoce mi dirección, incluso antes de que me diera el nombre. 192.168.1.5 es de hecho mi antigua dirección. ¿Almacena mi dirección MAC y la asigna a la antigua dirección IP que me dio? ¿Es posible forzar al enrutador (en realidad cualquier servidor DHCP) para que me dé una nueva IP diferente?

sanjihan
fuente

Respuestas:

1

Bueno, el servidor DHCP obtiene su dirección MAC de la solicitud DHCP. Puede incluir la dirección IP ofrecida en el encabezado IP del paquete de respuesta (así como en la carga útil de DHCP), ya que es solo la dirección MAC la que realmente recibe la entrega en el destino correcto.

Actualización (WIkipedia)

Cuando un servidor DHCP recibe un mensaje DHCPDISCOVER de un cliente, que es una solicitud de arrendamiento de dirección IP, el servidor reserva una dirección IP para el cliente y hace una oferta de arrendamiento enviando un mensaje DHCPOFFER al cliente. Este mensaje contiene la dirección MAC del cliente, la dirección IP que ofrece el servidor, la máscara de subred, la duración del arrendamiento y la dirección IP del servidor DHCP que realiza la oferta.

Solicitud

Heres una solicitud (DESCUBRIMIENTO DHCP) de las muestras de Wireshark

ingrese la descripción de la imagen aquí

Tenga en cuenta que proviene de 00: 0b: 82: 01: fc: 42 y va a ff: ff: ff: ff: ff: ff (dirección de transmisión)

Tenga en cuenta también que RFC relevante dice

  1. El cliente difunde un mensaje DHCPDISCOVER en su subred física local. El mensaje DHCPDISCOVER PUEDE incluir opciones que sugieran valores para la dirección de red y la duración del arrendamiento. Los agentes de retransmisión BOOTP pueden pasar el mensaje a servidores DHCP que no estén en la misma subred física.

El cliente puede preguntarle al servidor DHCP si puede, por favor, bastante, con las cerezas en la parte superior, asignarle la dirección IP que usó ayer antes de apagarlo. El servidor DHCP puede considerar permitir esto si esa dirección no se ha asignado a otro cliente.

Respuesta

Aquí está la respuesta (OFERTA DHCP)

ingrese la descripción de la imagen aquí

Tenga en cuenta que la fuente es 00: 08: 74: AD: F1: 9B y el destino es 00: 0b: 82: 01: fc: 42

Como todo esto es LAN local, el contenido de los campos de dirección en el encabezado de IP no es relevante. Solo se utilizan los campos de dirección en el encabezado de Ethernet para llevar el paquete a donde debe ir.

RedGrittyBrick
fuente
gracias, pero lo que no entiendo es cómo el servidor DHCP envía la oferta directamente a 192.168.1.5. No sabe cuál es mi dirección, porque todavía no me ha dado derecho. Debería enviarse a 255.255.255.25,5 porque todavía no he aceptado la nueva IP. Vea el tercer destino del paquete en la imagen.
sanjihan
@sanjihan. El servidor DHCP conoce la dirección MAC del cliente. Eso es todo lo que se necesita para abordar la respuesta. No necesita ni utiliza direcciones IP en la capa de red.
RedGrittyBrick
Entonces, ¿cómo surgió 192.168.1.5 como destino, si solo miraba a los MAC?
sanjihan
@sanjihan: el servidor DHCP obtuvo esa dirección IP del siguiente número disponible en su grupo de DHCP, o de su lista de reservas o de la solicitud de DHCP. Ese es el objetivo de DHCP: el servidor asigna una dirección IP al cliente y le envía esa información. --- ¿ESTÁ CIERTO que comprende completamente la diferencia en el uso de las direcciones MAC y las direcciones IP?
RedGrittyBrick
@sanjihan: Aquí es donde estás confundido, dices "No entiendo, así es como el servidor DHCP envía la oferta directamente a 192.168.1.5" - El servidor no hace eso (a pesar de las apariencias). Lo que el servidor realmente hace es enviar la oferta a (algo así como) 00: 0b: 82: 01: fc: 42, no a 192.168.1.5. - ¡recuerda cómo funciona el direccionamiento en una LAN Ethernet!
RedGrittyBrick