Arquitectura de Redes Dynamic Host Configuration Protocol DHCP Arq. de Redes - Pedro Brandão - 2004 1 Objectivo Configuração automática de endereço (e outros parâmetros de rede) de uma máquina. Sucessor do BOOTstrap Protocol (BOOTP) Desvantagens BOOTP: { { { Configuração estática de identificador da máquina para parâmetros a configurar. Existe a necessidade de configuração dinâmica das máquinas. Existe a necessidade de reutilizar endereços IPs para diferentes máquinas. RFC 2131 - Dynamic Host Configuration Protocol RFC 2132 - DHCP Options and BOOTP Vendor Extensions Arq. de Redes - Pedro Brandão - 2004 2 Atribuição de Endereços I Configuração manual – como no BOOTP, onde o endereço da máquina está registado na configuração do DHCP, com os parâmetros necessários. Configuração automática – quando uma máquina se liga pela primeira vez é-lhe atribuído um endereço. A partir desse momento, ser-lhe-á atribuído sempre o mesmo. Configuração dinâmica – existe uma ‘pool’ de endereços que são atribuídos aleatoriamentente as máquinas por um período de tempo configurável. Arq. de Redes - Pedro Brandão - 2004 3 Endereços II Endereços são ‘alugados’ por tempo limitado, definido pelo servidor. Durante esse período o endereço não é alugado a mais nenhuma máquina. Antes do término do aluguer o cliente deve requerer a extensão do tempo caso ainda necessite do endereço. Arq. de Redes - Pedro Brandão - 2004 4 Funcionamento Broadcast do pedido e broadcast da resposta, pois ainda não é possível a resolução ARP. Terminal liga-se a uma rede, utiliza DHCP para obter um endereço IP, e configura softwareTCP/IP para utilizar esse endereço Administrador da rede fornece um conjunto de endereços IP ao servidor para este gerir Cliente DHCP negoceia utilização de um endereço através da troca de mensagens com servidor Servidor fornece endereço ao cliente e este vê se pode aceitar o endereço Assim que cliente aceita o endereço, pode utilizá-lo para comunicação Permite a existência de autoconfiguração Arq. de Redes - Pedro Brandão - 2004 5 Relays Relay Agents – reenviam o pedido para servidores. Reenviam a resposta para o cliente. Terminais com múltiplos interfaces devem requisitar endereços em todas as interfaces. { { Devido a relay agents podem receber várias respostas. O identificador do cliente é directamente relacionado com a interface, logo o problema é mitigado. Servidor DHCP envia resposta por identificador. Arq. de Redes - Pedro Brandão - 2004 6 Formato Mensagem 0 8 Código 16 24 Tipo HW Comprimento HW ID da transacção Segundos 31 hops Flags Endereço IP do Cliente Endereço do Destinatário Endereço IP do Servidor Endereço do Relay Endereço HW do cliente Nome do Servidor Ficheiro de boot (128 bytes) Opções (variável) Código: 1 ÆRequest; 2 Æ Reply Tipo HW: – Por exemplo, Ethernet(1) ou IEEE802 (6). Comprimento HW – Comprimento do endereço de Hardware. Hops – O cliente coloca este campo a 0. Cada router que entrega a mensagem a outro servidor incrementa-o. ID da Transacção – Identificador para a mensagem enviada. A resposta terá este valor. Segundos – Indicação do cliente, de quantos segundos já decorreram desde que iniciou a aquisição ou renovação. Flags – bit mais significativo – Indicação de Broadcast. Outros campos reservados para uso futuro (a zero) End. IP do Cliente – Preenchido pelo Cliente com o seu end. IP ou 0.0.0.0; Endereço do Destinatário – end. IP do cliente se campo anterior a 0. End. IP do Servidor – Preenchido pelo Servidor. End. HW do Cliente – Preenchido pelo Cliente. End. Relay – end. quando existem relays. Fich. De Boot – Na resposta (DHCPOFFER), o servidor preenche este campo com o “ path” para o ficheiro de Boot. Arq. de Redes - Pedro Brandão - 2004 7 Mensagens DHCPDISCOVER – broadcast do cliente para descobrir servidores; DHCPOFFER – resposta dos servidores ao DISCOVER, oferencendo a possibilidade de parâmetros de configuração; DHCPREQUEST – mensagem do cliente para { { { Pedir parâmetros de conf. e declinando implicitamente os outros servidores Confirmação da correcção do endereço já alocado (após reboot) Extensão do aluguer DHCPACK – envio do servidor para o cliente com os parâmetros de configuração; DHCPNAK – do servidor para o cliente indicando que os dados do cliente são errados ou que o ‘aluguer’ expirou; DHCPDECLINE – do cliente para o servidor indicando que o endereço já está a ser usado; DHCPRELEASE – do cliente para o servidor libertando o endereço alugado; DHCPINFORM – do cliente para o servidor pedindo parâmetros de configuração local; cliente já tem endereço configurado externamente. Arq. de Redes - Pedro Brandão - 2004 8 Estados INITREBOOT DHCPNAK/ halt network DHCPNAK, lease expired/ halt network INIT DHCPNAK/ -/ DHCPREQUESTRESTART -/ DHCPDISCOVER DHCPOFFER/ Collect replies DHCPACK not accept./ DHCPDECLINE DHCPNAK/ Discar offer REBOOTING SELECTING Select offer/ Send DHCPREQUEST • Evento / envio de mensagem • T1 e T2 dados pelo servidor ou 50% e 87,5% do tempo total de aluguer REQUESTING REBINDING DHCPOFFER/ Discard DHCPACK/ Record lease, set timers DHCPACK/ T1 and T2 Record lease, set timers T1 and T2 T2 expires/ DHCPREQUEST broadcast DHCPACK/ Record lease, set timers T1 and T2 BOUND DHCPACK, DHCPOFFER, DHCPNAK/ Discard DHCPACK/ Record lease, set timers T1 and T2 RENEWING T1 expires/ DHCPREQUEST to leasing server Arq. de Redes - Pedro Brandão - 2004 9 DNS e DHCP Opção 1: não envio de nome (pode haver software que necessite do nome). Opção 2: envio do nome, que pode ser diferente de cada pedido/resposta. Sendo o mapeamento IPÙnome estático. Opção 3: envio sempre do mesmo nome, havendo necessidade de integração com DNS para actualização da resolução (RFC 2136 - Dynamic Updates in the Domain Name System (DNS UPDATE)) Arq. de Redes - Pedro Brandão - 2004 10