DHCP: Dynamic Host Configuration Protocol
DHCP - Dynamic Host Configuration Protocol Subrede 2 BOOTP SERVIDOR DHCP Subrede 2 CLIENTES DHCP BOOTP
DHCP - Dynamic Host Configuration Protocol Baseado no protocolo BOOTP (bootstrap protocol), criado em 1985 Número limitado de parâmetros configuráveis Incluía um processo de carga da imagem para boot via TFTP (Trivial FTP) Renovação de endereças apenas com reinicialização do sisetma Estendido a partir de 1993 pelo IETF: RFC 1533, 1534, 1541 e 1542. Mais parâmetros de configuração do cliente Não faz mais carga de imagem Renovação de endereços sem reinicialização
Configuração do DHCP subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.2 192.168.0.100; default-lease-time 86400; option routers 192.168.0.1; option ip-forwarding off; option broadcast-address 192.168.0.255; option subnet-mask 255.255.255.0; option domain-name-servers 192.168.0.101; option nntp-server 192.168.0.102; option netbios-name-servers 192.168.0.103; host laser-printer { hardware ethernet 08:00:2b:4c:59:23; fixed-address 192.168.0.222; } }
Opções DHCP range: faixa de IPs que será distribuída default-lease-time: tempo em segundos que o computador poderá ficar com o endereço IP sem solicitar renovação. option routers: indica o gateway padrão do rede. option ip-forwarding: define se o cliente terá ou não roteamento habilitado. option broadcast-address: define o endereço de broadcast para subrede. option subnet-mask: indica a máscara de subrede que será utilizada pelo cliente. option domain-name-servers: indica a máscara de subrede que será utilizada pelo cliente. option nntp-server: indica o servidor nntp (relógio) da rede. option netbios-name-servers: indica o servidor de nomes NetBIOS (WINS) da rede.
Exemplo: dhcp.conf shared-network name { option domain-name "test.redhat.com"; option domain-name-servers ns1.redhat.com, ns2.redhat.com; option routers 192.168.1.254; more parameters for EXAMPLE shared-network } subnet 192.168.1.0 netmask 255.255.255.0 { parameters for subnet range 192.168.1.1 192.168.1.31; } subnet 192.168.1.32 netmask 255.255.255.0 { parameters for subnet range 192.168.1.33 192.168.1.63; }
Exemplo: dhcp.conf group { option routers 192.168.1.254; option subnet-mask 255.255.255.0; option domain-name "example.com"; option domain-name-servers 192.168.1.1; option time-offset -18000; # Eastern Standard Time } host apex { option host-name "apex.example.com"; hardware ethernet 00:A0:78:8E:9E:AA; fixed-address 192.168.1.4; } host raleigh { option host-name "raleigh.example.com"; hardware ethernet 00:A1:DD:74:C3:F2; fixed-address 192.168.1.6; }
Processo de Atribuição: Novo IP Cliente DHCP Dhcpdiscover Dhcpoffer 200.17.98.1 Dhcprequest 200.17.98.1 subrede 192.168.0.0 255.255.255.0 72 horas 200.17.98.1 200.17.98.254 Dhcpack 200.17.98.1 Todas as mensagens são enviadas em broadcast... Dhcprelease 200.17.98.1 Servidor DHCP
DHCP 1) O cliente envia a mensagem Dhcpdiscover em broadcast. O endereço IP de origem do pacote é 0.0.0.0 pois o cliente ainda não tem um endereço IP. 2) Quando o servidor recebe o pacote, ele seleciona um endereço IP disponível na sua lista e oferece ao cliente. O servidor responde ao cliente com a mensagem Dhcpoffer 3) Quando o cliente recebe a oferta ele pode: aceitar enviando a mensagem Dhcprequest (incluindo o IP) em broadcast recusar enviando a mensagem Dhcpdecline em broadcast 4) Quando o servidor recebe o Dhcprequest ele pode: confirmar para o cliente com a mensagem Dhcpack recusar, se o endereço foi usado por outro, com a mensagem Dhcpnack 5) O cliente pode liberar um endereço com a mensagem Dhcprelease.
Renovação Um cliente DHCP pode renovar seu IP indefinidamente. A renovação acontece automaticamente quando metade do tempo de leasing é atingido Na renovação, o cliente envia a mensagem Dhcprequest com o endereço IP antigo ao invés do Dhcpdiscover. Se o pedido for negado, então o cliente envia um Dhcpdiscover, e tenta conseguir um novo endereço seguindo o procedimento descrito anteriormente. Ele perde seu IP se ficar desligado por um longo período e o endereço for atribuído a outro computador. 72 horas é o padrão de leasing de muitas implementações de DHCP. Um leasing bem mais curto deve ser usado para computadores que se ligam temporariamente na rede (notebooks via rede wireless, por exemplo).
Processo de Atribuição: Renovação Cliente DHCP Dhcprequest 200.17.98.1 Dhcpack 200.17.98.1 OU Dhcpnack subrede 192.168.0.0 255.255.255.0 72 horas 200.17.98.1 200.17.98.254 Todas as mensagens são enviadas em broadcast Dhcpdiscover Servidor DHCP
DHCP: DHCP Discover
DHCP em Redes Segmentadas Como o DHCP funciona em broadcast, um cliente não consegue localizar um servidor DHCP que esteja do outro lado de um roteador. Para permitir o funcionamento do DHCP em redes segmentas, foi definido um mecanismo complementar denominado agente relay (RFC1542). O agente relay é um software que roda em um roteador ou computador (existe implementações do agente relay para sistemas operacionais, como o Linux). O agente relay é configurado para escutar mensagens BOOTP em broadcast e propagá-las em unicast para um roteador DHCP especifico.
Agente Relay DHCP/BOOTP DhcpDiscover subrede 3 endereço pertence a subrede 3 Agente Relay 2 eth0 eth1 DhcpDiscover DhcpDiscover eth0 1 eth1 subrede 2 Roteador com servidor DHCP configurado com três subredes
Conclusão DHCP - Dynamic Host Configuration Protocol