DHCP: sinalizador de transmissão

4

Estou vendo alguns pacotes DHCP através do wireshark. Percebo que na seção bootp, há um sinalizador de transmissão.

No entanto, o IP de destino é 255.255.255.255. Não é suficiente para indicar que é transmitido? Por que a bandeira é necessária?

Obrigado,

lang2

    
por lang2 11.09.2012 / 05:10

2 respostas

5

O sinalizador DHCP tem um objetivo completamente diferente. É definido por um cliente para indicar a um servidor como a resposta deve ser enviada para o cliente. O cliente DHCP envia sua solicitação por difusão, inicialmente, porque não sabe o endereço IP do servidor. No entanto, como o servidor conhece o IP do cliente (ele apenas forneceu um), o servidor pode enviar a resposta de volta por unicast, mesmo que a solicitação tenha sido enviada por difusão. Por RFC2131 :

A client that cannot receive unicast IP datagrams until its protocol software has been configured with an IP address SHOULD set the BROADCAST bit in the 'flags' field to 1 in any DHCPDISCOVER or DHCPREQUEST messages that client sends. The BROADCAST bit will provide a hint to the DHCP server and BOOTP relay agent to broadcast any messages to the client on the client's subnet. A client that can receive unicast IP datagrams before its protocol software has been configured SHOULD clear the BROADCAST bit to 0.

    
por 11.09.2012 / 05:59
0

Estes estão em camadas diferentes na pilha ISO. Um IP de destino de 255.255.255.255 torna o pacote um pacote IP de broadcast no nível de IP. Definir o sinalizador de transmissão dentro do pacote DHCP não faria isso.

O próprio flag pode ser considerado informação para o servidor DHCP - está dizendo ao servidor que ele deve responder por broadcast. Na maioria das vezes, esse é o caso em que o cliente ainda não possui um endereço IP e, portanto, requer uma resposta de difusão, pois ainda não há IP para unicast. O servidor DHCP não deve precisar inspecionar os cabeçalhos dos pacotes para descobrir como responder, cabe ao protocolo dhcp deixar isso claro.

Você pode ter uma solicitação DHCP enviada como um pacote unicast, enviada diretamente para o servidor DHCP - mas o sinalizador de transmissão ainda pode ser definido dentro das sinalizações DHCP para permitir que o servidor dhcp saiba que precisa responder por transmissão, não importa como eram os cabeçalhos.

Em resumo, os cabeçalhos IP e UDP informam às camadas IP e UDP da pilha o que está acontecendo, enquanto o conteúdo DHCP é a camada de aplicativo e permite que o aplicativo DHCP saiba o que está acontecendo.

    
por 11.09.2012 / 05:40

Tags