DHCP Dynamic Host Configutation Protocol Charles Felipe Oliveira Viegas Douglas Xavier T. de Oliveira SUMÁRIO • INTRODUÇÃO • PROBLEMA • TERMOS USADOS • OBJETIVOS GERAIS • TIPOS DE CONFIGURAÇÃO • ATRIBUIÇÃO DINÂMICA • OBTENÇÃO DE MÚLTIPLOS ENDEREÇOS • TIPOS DE MENSAGENS DHCP • ESTADOS DE AQUISIÇÃO DE ENDEREÇOS • FORMATO DA MENSAGEM DHCP • CONSIDERAÇÕES • CONCLUSÃO INTRODUÇÃO • Para o perfeito funcionamento de um computador ligado a uma rede TCP/IP, não apenas precisa-se configurar o seu endereço IP, mas também uma série de outros parâmetros de rede. Um cliente DHCP busca encontrar um ou mais servidores DHCP que possam fornecer os parâmetros desejados para que sua máquina possa ser automaticamente configurada. Embora não seja o único parâmetro indispensável, o endereço IP é, sem dúvida, o mais importante deles, assim como o mais peculiar, posto que um determinado endereço não deve ser utilizado por mais de um cliente ao mesmo tempo. • O DHCP é um protocolo que assiste e resolve a atribuição endereços IP´s, usado com TCP/IP. Num paradigma Cliente/Servidor, permite que um servidor de DHCP assine o endereço IP a um cliente sem qualquer tipo de intervenção manual. PROBLEMA • Dificuldade em gerenciar redes com muitos hosts. • Problemas de comunicação são resultantes de informações incorretas. • Sobrecarga na administração da rede. TERMOS USADOS • BOOTP (Bootstrap Protocol) - Protocolo padronizado pelo IAB (Internet Activities Board), que permite a configuração automática de parâmetros de redes de um sistema, porém sem a capacidade de alocar dinamicamente estes parâmetros, como faz o DHCP. • Relay Agents - É um host ou um roteador capaz de receber pacotes dos clientes ou servidores DHCP de sua subrede e repassar para outra subrede. • ARP Echo Request - Protocolo usado pelo cliente DHCP, antes de aceitar as configurações, para descobrir se o endereço IP oferecido já está sendo usado. OBJETIVOS GERAIS • Preferência à política: Permite que um cliente tenha seu IP estático, sem que isso interfira a atribuição para outros que utilizem endereço IP dinâmico. • Um host não deve requerer nenhuma configuração manual. • Ao requisitar um endereço IP, o host deve estar preparado para receber resposta de vários servidores. • Um servidor pode prover endereços IP´s, para outras subredes através de roteadores e relay agents. • DHCP deve prover serviço para clientes BOOTP. • Garantir que um endereço IP não esteja em uso por mais de um host. • O servidor deve guardar a configuração do host através dos reboots, e sempre que possível, atribuir estes mesmos parâmetros. • Permitir que novos hosts sejam integrados na rede sem qualquer configuração manual. • Uma mensagem DHCP oferece além do endereço de rede outras configurações, tais como, máscara de sub-rede, DNS, gateway padrão. TIPOS DE CONFIGURAÇÃO • Configuração manual - O administrador de rede pode configurar um determinado endereço para um determinado host. • Configuração automática - O administrador permite que um servidor DHCP atribua um endereço permanente quando um computador conecta-se pela primeira vez na rede. • Configuração dinâmica - O servidor “empresta” um endereço a um host, por um tempo limitado. ATRIBUIÇÃO DINÂMICA • Para utilizar o DHCP, um host torna-se um cliente difundindo uma mensagem para todos os servidores. Em seguida, o host reúne ofertas de servidores, seleciona uma delas e verifica a aceitação com o servidor. • Um servidor DHCP deve possuir um escopo de endereços IP’s que o restringe a atribuir somente endereços incluídos nesta faixa. • Atribuição dinâmica é temporária. • O DHCP não especifica uma constante fixa para o período de alocação. O protocolo permite que um cliente solicite um tempo de alocação específico e que um servidor informe ao cliente quanto tempo de alocação lhe será concedido. OBTENÇÃO DE MÚLTIPLOS ENDEREÇOS • Uma mensagem DHCP só fornece informações sobre uma interface de cada vez, ou seja um computador com várias interfaces ( Multi-Homed ) deve tratar cada uma delas separadamente. TIPOS DE MENSAGENS DHCP • DHCPDISCOVER - Cliente envia um broadcast para localizar um servidor disponível. • DHCPOFFER - Servidor para cliente em resposta ao DHCPDISCOVER oferecendo os parâmetros de configuração. • DHCPREQUEST - Cliente requer os parâmetros oferecidos de um servidor e implicitamente nega a oferta de outros servidores. Também usado para solicitar uma reinicialização e uma relocação. • DHCPACK - Servidor para cliente. Parâmetros de configuração incluindo o endereço IP alocado. •DHCPNACK - Servidor para cliente indicando que o endereço solicitado está incorreto ou o tempo de alocação expirou. •DHCPDECLINE - Cliente para servidor. Indicando que o endereço de rede já está em uso. • DHCPRELEASE - Cliente para servidor. Liberando o endereço de rede e cancelando o tempo de alocação •DHCPINFORM - Cliente para servidor. Perguntando apenas por configurações locais; cliente já tem externamente configurado o endereço de rede. ESTADOS DE AQUISIÇÃO DE ENDEREÇOS • INICIALIZA • SELECIONA • SOLICITA • LIMITE • RENOVA • VINCULA NOVAMENTE FORMATO DA MENSAGEM DHCP Campo Op Htype Hlen Hops Xid Bytes 1 1 1 1 4 Secs 2 Flags Ciaddr 2 4 Yiaddr Siaddr 4 4 Giaddr Chaddr Sname File Options 4 16 64 128 var Descrição Tipo da mensagem 1 = BOOTREQUEST, 2 = BOOTREPLY Tipo de endereço de Hardware '1' = 10mb ethernet. Tamanho de endereço de Hardware '6' for 10mb ethernet. O cliente atribui zero opcionalmente usado pelos relay agents. Identificador de transação, um número aleatório atribuído pelo cliente. Usado para associar mensagens e respostas entre um cliente e um servidor. Atribuído pelo cliente, segundos decorridos desde o início da aquisição do endereço ou a renovação do processo. Flags. Endereço IP do cliente apenas informado se o cliente estiver nos estados de limite, renova ou vincula novamente. 'seu' Endereço IP (cliente). Endereço IP do servidor para ser usado no próximo passo do processo retornado em: DHCPOFFER, DHCPACK pelo servidor. Endereço IP do Relay agent. Endereço de hardware do cliente. Nome opcional do servidor. Nome do arquivo de inicialização. Parâmetros opcionais. PARÂMETROS DO CAMPO OPTIONS Request IP address IP address lease time Use file/sname fields DHCP message type Parameter request list Message Client identifier Class identifier Server identifier Maximum message size All others DHCP NO WINDOWS NT SERVER QUANDO NÃO É INDICADO O USO DO PROTOCOLO. • Para máquinas que são referenciadas pelos seus endereços IP’s, e não pelos seus nomes, como os roteadores, servidores DNS. •A alocação dinâmica pode também inviabilizar os esquemas de segurança que baseiam-se em permitir ou coibir o acesso a determinados recursos através da identificação do endereço IP. CONSIDERAÇÕES • O DHCP usa o UDP como protocolo de transporte. • O UDP por sua vez não provê bons recursos de segurança. • Uma forma do DHCP implementar recursos de segurança é guardar, para os clientes que tem permissão, uma identificação única . Permitindo que somente esses clientes tenham seus parâmetros configurados. • Facilidade para uso de computadores portáteis. CONCLUSÃO • A automação da configuração de máquinas ligadas a uma rede TCP/IP pode ser implantada utilizando-se o DHCP. Aqui, como em qualquer outro processo de automação, é preciso que a configuração desse serviço seja feita de forma apropriada `a rede em questão, e que não leve a comprometer seu funcionamento e sua segurança.