21

Click here to load reader

Trabalho DHCP

Embed Size (px)

Citation preview

Page 1: Trabalho DHCP

IFPA

Trabalho de redes

Alunos:Carlos

Jhoni

Luis Angelo

Pedro Henrique

Page 2: Trabalho DHCP

Introdução:

O DHCP ("Dynamic Host Configuration Protocol" ou "protocolo de configuração dinâmica de endereços de rede") permite que todos os micros da rede recebam suas configurações de rede automaticamente a partir de um servidor central, sem que você precise ficar configurando os endereços manualmente em cada um.

O protocolo DHCP trabalha de uma forma bastante interessante. Inicialmente, a estação não sabe quem é, não possui um endereço IP e não sabe sequer qual é o endereço do servidor DHCP da rede. Ela manda, então, um pacote de broadcast endereçado ao IP "255.255.255.255", que é transmitido pelo switch para todos os micros da rede. O servidor DHCP recebe este pacote e responde com um pacote endereçado ao endereço IP "0.0.0.0", que também é transmitido para todas as estações. Apesar disso, apenas a estação que enviou a solicitação lerá o pacote, pois ele é endereçado ao endereço MAC da placa de rede. Como vimos na introdução, quando uma estação recebe um pacote destinado a um endereço MAC diferente do seu, ela ignora a transmissão. Dentro do pacote enviado pelo servidor DHCP estão especificados o endereço IP, máscara, gateway e servidores DNS que serão usados pela estação.

DNS é a sigla para Domain Name Server que significa Servidor de Nomes de Dominio. Basicamente ele transforma um "nome" de dominio (por exemplo boadica.com.br), num endereço IP que é o endereço REAL do dominio (por exemplo 200.155.22.13). Esses servidores possuem então uma série de tabelas, ligando "nomes de domínios" a "endereços IP". Quando um nome não é encontrado ali, ele pergunta para um "outro" servidor se ele sabe o endereço, recebe a informação e atualiza sua propria tabela para novos acessos. Este é o funcionamento "básico" de como funciona "nomes de domínios" na internet.

Porém, ao mesmo tempo em que é simples, também é um componente fácil de ser mal utilizado, seja porque foi configurado para não ser atualizado com muita frequencia, ou está com a tabela corrompida, ou sofreu algum ataque de hacker que alterou suas tabelas etc., por isso, é sempre interessante no caso de verificar que algum site não está sendo acessado, se o problema é realmente no site, ou no servidor de nomes que está sendo utilizado.

Dynamic Host Configuration Protocol

O DHCP, Dynamic Host Configuration Protocol (Protocolo de configuração dinâmica de host), é um protocolo de serviço TCP/IP que oferece configuração dinâmica de terminais, com concessão de endereços IP de host, Máscara de sub-rede, Default Gateway (Gateway Padrão), Número IP de um ou mais servidores DNS, Número IP de um ou mais servidores WINS e Sufixos de pesquisa do DNS. Este protocolo é o sucessor do BOOTP que, embora mais simples, tornou-se limitado para as exigências atuais. O DHCP surgiu como padrão em Outubro de 1993. O RFC 2131 contém as especificações mais atuais (março de 1997). O último standard para a especificação do DHCP sobre IPv6 (DHCPv6) foi publicado a Julho de 2003 como RFC 3315.

Resumidamente, o DHCP opera da seguinte forma:

Page 3: Trabalho DHCP

Um cliente envia um pacote UDP em broadcast (destinado a todas as máquinas) com um pedido DHCP

Os servidores DHCP que capturarem este pacote irão responder (se o cliente se enquadrar numa série de critérios — ver abaixo) com um pacote com configurações onde constará, pelo menos, um endereço IP, uma máscara de rede e outros dados opcionais winks , como o gateway, servidores de DNS, etc.

O DHCP usa um modelo cliente-servidor, no qual o servidor DHCP mantém o gerenciamento centralizado dos endereços IP usados na rede.

Page 4: Trabalho DHCP

Termos Utilizados no DCHP

Servidor DHCP: É um servidor com o Windows 2000 Server ou com o Windows Server 2003, onde foi instalado e configurado o serviço DHCP. Após a instalação de um servidor DHCP ele tem que ser autorizado no Active Directory, antes que ele possa, efetivamente, atender a requisições de clientes. O procedimento de autorização no Active Directory é uma medida de segurança, para evitar que servidores DHCP sejam introduzidos na rede sem o conhecimento do administrador. O servidor DHCP não pode ser instalado em um computador com o Windows 2000 Professional, Windows XP Professional ou Windows Vista.

Cliente DHCP: É qualquer dispositivo de rede capaz de obter as configurações do TCP/IP a partir de um servidor DHCP. Por exemplo, uma estação de trabalho com o Windows 95/98/Me, Windows NT Workstation 4.0, Windows 2000 Professional, Windows XP, Windows Vista, uma impressora com placa de rede habilitada ao DHCP e assim por diante.

Escopo: Um escopo é o intervalo consecutivo completo de endereços IP possíveis para uma rede (por exemplo, a faixa de 10.10.10.100 a 10.10.10.150, na rede 10.10.10.0/255.255.255.0). Em geral, os escopos definem uma única sub-rede física , na rede na qual serão oferecidos serviços DHCP. Os escopos também fornecem o método principal para que o servidor gerencie a distribuição e atribuição de endereços IP e outros parâmetros de configuração para clientes na rede, tais como o Default Gateway, Servidor DNS e assim por diante..

Superescopo: Um superescopo é um agrupamento administrativo de escopos que pode ser usado para oferecer suporte a várias sub-redes IP lógicas na mesma sub-rede física. Os superescopos contêm somente uma lista de escopos associados ou escopos filho que podem ser ativados em conjunto. Os superescopos não são usados para configurar outros detalhes sobre o uso de escopo. Para configurar a maioria das propriedades usadas em um superescopo, você precisa configurar propriedades de cada escopo associado, individualmente. Por exemplo, se todos os computadores devem receber o mesmo número IP de Default Gateway, este número tem que ser configurado em cada escopo, individualmente. Não tem como fazer esta configuração no Superescopo e todos os escopos (que compõem o Superescopo), herdarem estas configurações.

Intervalo de exclusão: Um intervalo de exclusão é uma seqüência limitada de endereços IP dentro de um escopo, excluído dos endereços que são fornecidos pelo DHCP. Os intervalos de exclusão asseguram que quaisquer endereços nesses intervalos não são oferecidos pelo servidor para clientes DHCP na sua rede. Por exemplo, dentro da faixa 10.10.10.100 a 10.10.10.150, na rede 10.10.10.0/255.255.255.0 de um determinado escopo, você pode criar uma faixa de exclusão de 10.10.10.120 a 10.10.10.130. Os endereços da faixa de exclusão não serão utilizados pelo servidor DHCP para configurar os clientes DHCP.

Pool de endereços: Após definir um escopo DHCP e aplicar intervalos de exclusão, os endereços remanescentes formam o pool de endereços disponíveis dentro do escopo. Endereços em pool são qualificados para atribuição dinâmica pelo servidor para clientes DHCP na sua rede. No nosso exemplo, onde temos o escopo com a faixa 10.10.10.100 a

Page 5: Trabalho DHCP

10.10.10.150, com uma faixa de exclusão de 10.10.10.120 a 10.10.10.130, o nosso pool de endereços é formado pelos endereços de 10.10.10.100 a 10.10.10.119, mais os endereços de 10.10.10.131 a 10.10.10.150.

Concessão': Uma concessão é um período de tempo especificado por um servidor DHCP durante o qual um computador cliente pode usar um endereço IP que ele recebeu do servidor DHCP (diz-se atribuído pelo servidor DHCP). Uma concessão está ativa quando ela está sendo utilizada pelo cliente. Geralmente, o cliente precisa renovar sua atribuição de concessão de endereço com o servidor antes que ela expire. Uma concessão torna-se inativa quando ela expira ou é excluída no servidor. A duração de uma concessão determina quando ela irá expirar e com que freqüência o cliente precisa renová-la no servidor.

Reserva: Você usa uma reserva para criar uma concessão de endereço permanente pelo servidor DHCP. As reservas asseguram que um dispositivo de hardware especificado na sub-rede sempre pode usar o mesmo endereço IP. A reserva é criada associada ao endereço de Hardware da placa de rede, conhecido como MAC-Address. No servidor DHCP você cria uma reserva, associando um endereço IP com um endereço MAC. Quando o computador (com o endereço MAC para o qual existe uma reserva) é inicializado, ele entre em contato com o servidor DHCP. O servidor DHCP verifica que existe uma reserva para aquele MAC-Address e configura o computador com o endereço IP associado ao Mac-address. Caso haja algum problema na placa de rede do computador e a placa tenha que ser substituída, mudará o MAC-Address e a reserva anterior terá que ser excluída e uma nova reserva terá que ser criada, utilzando, agora, o novo Mac-Address.

Tipos de opção: Tipos de opção são outros parâmetros de configuração do cliente que um servidor DHCP pode atribuir aos clientes. Por exemplo, algumas opções usadas com freqúência incluem endereços IP para gateways padrão (roteadores), servidores WINS (Windows Internet Name System) e servidores DNS (Domain Name System). Geralmente, esses tipos de opção são ativados e configurados para cada escopo. O console de Administração do serviço DHCP também permite a você configurar tipos de opção padrão que são usados por todos os escopos adicionados e configurados no servidor. A maioria das opções é predefinida através da RFC 2132, mas você pode usar o console DHCP para definir e adicionar tipos de opção personalizados, se necessário.

Critérios de atribuição de IPs

O DHCP oferece três tipos de alocação de endereços IP:x

Atribuição manual - Onde existe uma tabela de associação entre o Endereço MAC do cliente (que será comparado através do pacote broadcast recebido) e o endereço IP (e dados restantes) a fornecer. Esta associação é feita manualmente pelo administrador de rede; por conseguinte, apenas os clientes cujo MAC consta nesta lista poderão receber configurações desse servidor;

Atribuição automática - Onde o cliente obtém um endereço de um espaço de endereços possíveis, especificado pelo administrador. Geralmente não existe vínculo entre os vários MAC habilitados a esse espaço de endereços;

Page 6: Trabalho DHCP

Atribuição dinâmica - O único método que dispõe a reutilização dinâmica dos endereços. O administrador disponibiliza um espaço de endereços possíveis, e cada cliente terá o software TCP/IP da sua interface de rede configurados para requisitar um endereço por DHCP assim que a máquina arranque. A alocação utiliza um mecanismo de aluguel do endereço, caracterizado por um tempo de vida. Após a máquina se desligar, o tempo de vida naturalmente irá expirar, e da próxima vez que o cliente se conectar, o endereço provavelmente será outro.

Algumas implementações do software servidor de DHCP permitem ainda a atualização dinâmica dos servidores de DNS para que cada cliente disponha também de um DNS. Este mecanismo utiliza o protocolo de atualização do DNS especificado no RFC 2136.

Detalhes técnicos

DHCP descoberta

Transmite o cliente de mensagens na sub-rede física para descobrir os servidores DHCP disponíveis. Os administradores de rede podem configurar um roteador local para encaminhar pacotes DHCP a um servidor DHCP de uma sub-rede diferente. Este cliente implementação cria um User Datagram Protocol pacote (UDP), com o destino de difusão de 255.255.255.255 ou o endereço de broadcast de sub-rede específica. Um cliente DHCP também pode solicitar o seu último endereço IP conhecido (no exemplo abaixo, 192.168.1.100). Se o cliente permanece conectado a uma rede IP para o qual este é válido, o servidor pode satisfazer o pedido. Caso contrário, ele depende se o servidor está configurado como autoridade ou não. Um servidor com autoridade irá negar o pedido, fazendo com que o cliente pedir um novo endereço IP imediatamente. Um servidor não-autorizada simplesmente ignora o pedido, levando a um limite de tempo dependente da implementação para o cliente a desistir do pedido e pedir um novo endereço IP..

DHCP oferta

Quando um servidor DHCP recebe um pedido de concessão de IP de um cliente, ele reserva um endereço IP para o cliente e estende-se uma oferta de concessão IP através do envio de uma mensagem DHCPOFFER para o cliente. Esta mensagem contém o endereço do cliente MAC, o endereço IP que o servidor está oferecendo, a máscara de sub-rede, a duração da concessão, bem como o endereço IP do servidor de DHCP fazer a oferta. O servidor determina a configuração com base no endereço do cliente hardware como especificado no campo chaddr (endereço de hardware do cliente). Aqui o servidor, 192.168.1.1, especifica o endereço IP no campo yiaddr (seu endereço IP).

DHCP pedido

Em resposta aos pedidos de oferta de cliente do servidor. O cliente responde DHCPRequest, unicast para o servidor, solicitando o endereço oferecido. Um cliente pode receber ofertas de vários servidores DHCP, mas vai aceitar apenas uma oferta DHCP. Com base no campo ID da transação no pedido, os servidores são informados cuja oferta o cliente aceitou. Quando outros servidores DHCP receber esta mensagem, eles retiram quaisquer ofertas que eles poderiam ter feito para o cliente e retornar o

Page 7: Trabalho DHCP

endereço oferecido ao pool de endereços disponíveis. Em alguns casos, DHCP mensagem de pedido é transmitido, em vez de ser unicast para um servidor DHCP particular, porque o cliente DHCP ainda não recebeu um endereço IP. Além disso, esta mensagem de uma forma pode deixar todos os outros servidores DHCP saber que um outro servidor será fornecer o endereço IP sem perder qualquer um dos servidores com uma série de mensagens unicast.

DHCP de confirmação

Quando o servidor DHCP recebe a mensagem DHCPREQUEST do cliente, o processo de configuração entra em sua fase final. A fase de reconhecimento envolve o envio de um pacote DHCPACK para o cliente. Este pacote inclui a duração da concessão e qualquer outras informações de configuração que o cliente pode ter solicitado. Neste ponto, o processo de configuração de IP é concluída. O protocolo prevê que o cliente DHCP para configurar sua interface de rede com os parâmetros negociados.

DHCP informações

Um cliente DHCP pode solicitar mais informações do que o servidor enviou com o DHCPOFFER original. O cliente também pode solicitar dados repetidos para uma determinada aplicação. Por exemplo, os navegadores usam DHCP Informar para obter as configurações de proxy web via WPAD. Estas consultas não causam o servidor DHCP para atualizar o tempo de expiração IP em seu banco de dados.

DHCP liberando

O cliente envia uma solicitação ao servidor DHCP para liberar a informação e o cliente DHCP desativa seu endereço IP. Como dispositivos de cliente geralmente não sabem quando os usuários podem desligue-os da rede, o protocolo não obriga o envio de Lançamento DHCP.

Cliente parâmetros de configuração no DHCP

Um servidor DHCP pode fornecer parâmetros de configuração opcionais para o cliente. RFC 2132 descreve as opções disponíveis DHCP definidas pelo Internet Assigned Numbers Authority (IANA) - PARÂMETROS DHCP e BOOTP. Um cliente DHCP pode selecionar, manipular e substituir os parâmetros fornecidos por um servidor DHCP. [3]

Identificação do fornecedor

Existe uma opção para identificar o fornecedor e funcionalidade de um cliente DHCP. A informação é uma seqüência de comprimento variável de caracteres ou octetos que tem um significado especificado pelo fornecedor do cliente DHCP. Um método que um cliente DHCP pode utilizar para se comunicar com o servidor que está usando um certo tipo de hardware ou de firmware é definir um valor em seus pedidos de DHCP chamado de classe de fornecedor Identifier (VCI) (Opção 60). Este método permite a um servidor DHCP para diferenciar entre os dois tipos de máquinas de cliente e processar os pedidos

Page 8: Trabalho DHCP

provenientes dos dois tipos de modems de forma adequada. Alguns tipos de set-top boxes também definir a VCI (Opção 60) para informar o servidor DHCP sobre o tipo de hardware e funcionalidade do dispositivo. O valor que essa opção é definida para dar ao servidor DHCP uma dica sobre as informações necessárias extra que este cliente precisa de uma resposta do DHCP.

Retransmissão DHCP

Em redes pequenas, onde apenas uma sub-rede IP está a ser gerido, os clientes DHCP se comunicar diretamente com os servidores DHCP. No entanto, os servidores DHCP também pode fornecer endereços IP para várias sub-redes. Neste caso, um cliente DHCP que ainda não adquiriu um endereço IP não podem se comunicar diretamente com o servidor DHCP usando o roteamento IP, porque não tem um endereço de IP, nem ele sabe o endereço IP de um roteador. A fim de permitir que os clientes DHCP em sub-redes não directamente servidos por servidores DHCP para se comunicar com servidores DHCP, os agentes de retransmissão DHCP pode ser instalado nesses sub-redes. As transmissões do cliente DHCP no link local, o agente de retransmissão recebe a transmissão e transmite para um ou mais servidores DHCP usando unicast. O agente de retransmissão armazena seu próprio endereço IP no campo GIADDR do pacote DHCP. O servidor DHCP usa o GIADDR para determinar a sub-rede na qual o agente de retransmissão recebeu a transmissão, e atribui um endereço IP na sub-rede. Quando as respostas do servidor DHCP para o cliente, ele envia a resposta para o endereço GIADDR, novamente usando unicast. O agente de retransmissão então retransmite a resposta na rede local.

Confiabilidade

O protocolo DHCP fornece confiabilidade de várias maneiras: renovação periódica, religação e failover. Clientes DHCP são atribuídos locações que duram por algum período de tempo. Os clientes começam a tentar renovar suas concessões uma vez metade do intervalo o arrendamento expirou. Eles fazem isso através do envio de uma mensagem DHCPREQUEST unicast para o servidor DHCP que concedeu o contrato original. Se esse servidor for inativo ou inacessível, ele vai deixar de responder ao DHCPREQUEST. No entanto, o DHCPREQUEST será repetido pelo cliente ao longo do tempo, [especificar], para quando o servidor DHCP volta-se ou torna-se acessível novamente, o cliente DHCP vai conseguir entrar em contato com ela, e renovar o seu contrato. Se o servidor DHCP está inacessível por um período prolongado de tempo, [especificar] o cliente DHCP tentará religar, transmitindo sua DHCPREQUEST vez de unicasting-lo. Porque ele é transmitido, a mensagem vai chegar DHCPREQUEST todos os servidores DHCP disponíveis. Se algum outro servidor DHCP é capaz de renovar a concessão, ele vai fazê-lo neste momento.

A fim de religação para o trabalho, quando o cliente contatar com êxito um servidor DHCP de backup, o servidor deve ter informações precisas sobre a ligação do cliente. Manter informações vinculativas precisa entre dois servidores é um problema complicado, se os dois servidores são capazes de atualizar o banco de dados mesma locação, deve haver um mecanismo para evitar conflitos entre as atualizações nos servidores independentes. Um padrão para implementação de servidores tolerantes a

Page 9: Trabalho DHCP

falhas DHCP foi desenvolvido na Internet Engineering Task Force. [15] [nota 1]

Se religação falhar, o arrendamento acabará por expirar. Quando a concessão expira, o cliente deve parar de usar o endereço IP concedido a ele em seu contrato. Na época, ele irá reiniciar o processo de DHCP desde o início, transmitindo uma mensagem DHCPDISCOVER. Desde o seu contrato de arrendamento expirou, ele vai aceitar qualquer endereço IP que lhe é oferecido. Uma vez que tem um novo endereço IP, provavelmente a partir de um servidor DHCP diferente, vai mais uma vez ser capaz de usar a rede. No entanto, como seu endereço IP mudou, as conexões em curso será quebrado.

Segurança

A base de protocolo DHCP não inclui qualquer mecanismo de autenticação. Por isso, é vulnerável a uma variedade de ataques. Estes ataques se dividem em três categorias principais:

Servidores DHCP não autorizados fornecimento de informações falsas aos clientes. Clientes não autorizados tenham acesso aos recursos.

Esgotamento dos recursos de clientes ataques maliciosos DHCP.

Porque o cliente não tem como validar a identidade de um servidor DHCP, servidores DHCP não autorizados podem ser operados em redes, prestação de informações incorrectas aos clientes DHCP. Isso pode servir tanto como um ataque de negação de serviço, impedindo o cliente de ter acesso a conectividade de rede. Porque o servidor DHCP fornece o cliente DHCP com endereços IP do servidor, como o endereço IP de um ou mais servidores DNS, um atacante pode convencer um cliente DHCP para fazer pesquisas através de seu DNS seu próprio servidor DNS, e pode, portanto, fornecer suas próprias respostas a consultas DNS do cliente. Por sua vez, permite que o atacante para redirecionar o tráfego de rede através de si, permitindo-lhe escutar as conexões entre os servidores de rede do cliente e ele entra em contato, ou simplesmente para substituir os servidores de rede com o seu próprio. Porque o servidor DHCP não tem nenhum mecanismo seguro para autenticar o cliente, os clientes podem obter acesso não autorizado aos endereços IP de apresentação de credenciais, tais como identificadores do cliente, que pertencem a outros clientes DHCP. Isso também permite que os clientes DHCP para esgotar o DHCP armazenamento de servidor de endereços IP-, apresentando novas credenciais cada vez que ele pede um endereço, o cliente pode consumir todos os endereços IP disponíveis em um link de rede particular, impedindo outros clientes DHCP da obtenção de serviços. DHCP fornece alguns mecanismos para mitigar esses problemas.

O Relé de Agente de Informações extensão protocolo Option (RFC 3046) permite que os operadores de rede para conectar marcas a mensagens DHCP uma vez que estas mensagens chegam na rede de confiança do operador de rede. Esta tag é então usado como um token de autorização para controlar o acesso do cliente aos recursos da rede. Porque o cliente não tem acesso à rede a montante do agente de retransmissão, a falta de autenticação não impede que o operador do servidor DHCP de confiar no token de

Page 10: Trabalho DHCP

autorização.

Outro ramal, autenticação para DHCP mensagens (RFC 3118), fornece um mecanismo para autenticação de mensagens DHCP. Infelizmente RFC 3118 não viu a adopção generalizada por causa dos problemas de gerenciamento de chaves para um grande número de clientes DHCP.

Rede sem DHCP - APIPA

APIPA é a abreviatura de Automatic Private IP Addressing. Esta é uma nova funcionalidade que foi introduzida no Windows 98, está presente no Windows 2000, Windows XP, Windows Vista, Windows 7, Longhorn Server e no Windows Server 2003. Imagine um cliente com o protocolo TCP/IP instalado e configurado para obter as configurações do protocolo TCP/IP a partir de um servidor DHCP. O cliente é inicializado, porém não consegue se comunicar com um servidor DHCP. Neste situação, o Windows, usa o recurso APIPA, e automaticamente atribui um endereço IP da rede 169.254.0.0/255.255.0.0. Este é um dos endereços especiais, reservados para uso em redes internas, ou seja, este não seria um endereço de rede, válido na Internet. A seguir descrevo mais detalhes sobre a funcionalidade APIPA.

Não esqueça: O número de rede usado pelo recurso APIPA é o seguinte: 169.254.0.0/255.255.0.0 Nota: O recurso APIPA é especialmente útil para o caso de uma pequena rede, com 4 ou 5 computadores, onde não existe um servidor disponível. Neste caso você pode configurar todos os computadores para usarem o DHCP. Ao inicializar, os clientes não conseguirão localizar um servidor DHCP (já que não existe nenhum servidor DHCP nesta rede do nosso exemplo). Neste caso o recurso APIPA atribuirá endereços da rede 169.254.0.0/255.255.0.0 para todos os computadores da rede. O resultado final é que todos ficam configurados com endereços IP da mesma rede e poderão se comunicar, compartilhando recursos entre si. É uma boa solução para um rede doméstica ou de um pequeno escritório.

Domain Name SystemO DNS (Domain Name System - Sistema de Nomes de Domínios) é um sistema de gerenciamento de nomes hierárquico e distribuído operando segundo duas definições:

Examinar e atualizar seu banco de dados. Resolver nomes de domínios em endereços de rede (IPs).

O sistema de distribuição de nomes de domínio foi introduzido em 1984, e com ele, os nomes de hosts residentes em um banco de dados pode ser distribuído entre servidores múltiplos, diminuindo assim a carga em qualquer servidor que provê administração no

Page 11: Trabalho DHCP

sistema de nomeação de domínios. Ele baseia-se em nomes hierárquicos e permite a inscrição de vários dados digitados além do nome do host e seu IP. Em virtude do banco de dados de DNS ser distribuído, seu tamanho é ilimitado e o desempenho não degrada tanto quando se adiciona mais servidores nele. Este tipo de servidor usa como porta padrão a 53.

A implementação do DNS-Berkeley, foi desenvolvido originalmente para o sistema operacional BSD UNIX 4.3.

A implementação do Servidor de DNS Microsoft se tornou parte do sistema operacional Windows NT na versão Server 4.0. O DNS passou a ser o serviço de resolução de nomes padrão a partir do Windows 2000 Server como a maioria das implementações de DNS teve suas raízes nas RFCs 882 e 883, e foi atualizado nas RFCs 1034 e 1035.

O servidor DNS traduz nomes para os endereços IP e endereços IP para nomes respectivos, e permitindo a localização de hosts em um domínio determinado. Num sistema livre o serviço é implementado pelo software BIND. Esse serviço geralmente se encontra localizado no servidor DNS primário.

O servidor DNS secundário é uma espécie de cópia de segurança do servidor DNS primário.

Existem 13 servidores DNS raiz no mundo todo e sem eles a Internet não funcionaria. Destes, dez estão localizados nos Estados Unidos da América, um na Ásia e dois na Europa. Para Aumentar a base instalada destes servidores, foram criadas réplicas localizadas por todo o mundo, inclusive no Brasil desde 2003.

Ou seja, os servidores de diretórios responsáveis por prover informações como nomes e endereços das máquinas são normalmente chamados servidores de nomes. Na Internet, os serviços de nomes usado é o DNS, que apresenta uma arquitetura cliente/servidor, podendo envolver vários servidores DNS na resposta a uma consulta.

Visão geral

Um recurso da internet que atualmente, por exemplo um site da Web, pode ser identificado de duas maneiras: pelo seu nome de domínio [1] , por exemplo, “www.wikipedia.org” ou pelo endereço de IP [2] dos equipamento que o hospedam (por exemplo, 208.80.152.130 é o IP associado ao domínio www.wikipedia.org[3]). Endereços de IP são usados pela camada de rede para determinar a localização física e virtual do equipamento. Nomes de domínio, porém, são mais mnemônicos para o usuário e empresas. É então necessário um mecanismo para traduzir um nome de domínio em um endereço IP. Esta é a principal função do DNS.

Hierarquia

Devido ao tamanho da internet, armazenar todos os pares domínio - endereço IP em um único servidor DNS seria inviável, por questões de escalabilidade que incluem:

Page 12: Trabalho DHCP

Confiabilidade: se o único servidor de DNS falhasse, o serviço se tornaria indisponível para o mundo inteiro.

Volume de tráfego: o servidor deveria tratar os pedidos DNS do planeta inteiro.

Distância: grande parte dos usuários estaria muito distante do servidor, onde quer que ele fosse instalado, gerando grandes atrasos para resolver pedidos DNS.

Manutenção do banco de dados: o banco de dados deveria armazenar uma quantidade de dados enorme e teria que ser atualizado com uma frequência muito alta, toda vez que um domínio fosse associado a um endereço IP.

A solução encontrada é fazer do DNS uma base de dados distribuída e hierárquica . Os servidores DNS se dividem nas seguintes categorias:

Servidores raiz

Ver artigo principal: Servidor Raiz

No topo da hierarquia estão os 13 servidores raiz. Um Servidor Raiz (Root Name Server) é um servidor de nome para a zona raiz do DNS (Domain Name System). A sua função é responder diretamente às requisições de registros da zona raiz e responder a outras requisições retornando uma lista dos servidores de nome designados para o domínio de topo apropriado. Os servidores raiz são parte crucial da Internet porque eles são o primeiro passo em traduzir nomes para endereços IP e são usados para comunicação entre hosts.

Servidores de domínio de topo (Top-Level Domain)

Cada domínio é formado por nomes separados por pontos. O nome mais à direita é chamado de domínio de topo. Exemplos de domínios de topo são .com, .org, .net, .edu e .gov.

Cada servidor de domínio de topo conhece os endereços dos servidores autoritativos que pertencem àquele domínio de topo, ou o endereço de algum servidor DNS intermediário que conhece um servidor autoritativo.

Servidores autoritativos

O servidor autoritativo de um domínio possui os registros originais que associam aquele domínio a seu endereço de IP. Toda vez que um domínio adquire um novo endereço, essas informações devem ser adicionadas a pelo menos dois servidores autoritativos [4]. Um deles será o servidor autoritativo principal e o outro, o secundário. Isso é feito para minimizar o risco de, em caso de erros em um servidor DNS, perder todas as informações originais do endereço daquele domínio.

Com essas três classes de servidores, já é possível resolver qualquer requisição DNS. Basta fazer uma requisição a um servidor raiz, que retornará o endereço do servidor de topo responsável. Então repete-se a requisição para o servidor de topo, que retornará o endereço do servidor autoritativo ou algum intermediário. Repete-se a requisição aos servidores intermediários (se houver) até obter o endereço do servidor autoritativo, que finalmente retornará o endereço IP do domínio desejado.

Page 13: Trabalho DHCP

Repare que essa solução não resolve um dos problemas de escalabilidade completamente: os servidores raiz tem que ser acessados uma vez para cada requisição que for feita em toda a internet. Esses servidores também podem estar muito longe do cliente que faz a consulta. Além disso, para resolver cada requisição, são precisas várias consultas, uma para cada servidor na hierarquia entre o raiz e o autoritativo.

Esta forma de resolver consultas é chamada não-recursividade: cada servidor retorna ao cliente (ou ao servidor local requisitante, como explicado adiante) o endereço do próximo servidor no caminho para o autoritativo, e o cliente ou servidor local fica encarregado de fazer as próximas requisições.

Há também o método recursivo: o servidor pode se responsabilizar por fazer a requisição ao próximo servidor, que fará a requisição ao próximo, até chegar ao autoritativo, que retornará o endereço desejado, e esse endereço será retornado para cada servidor no caminho até chegar ao cliente. Esse método faz com que o cliente realize apenas uma consulta e receba diretamente o endereço desejado, porém aumenta a carga dos servidores no caminho. Por isso, servidores podem se recusar a resolver requisições recursivas.

Melhorias de Performance

Dois recursos são usados em conjunto para reduzir a quantidade de requisições que os servidores raiz devem tratar e a quantidade de requisições feitas para resolver cada consulta:

Cache

Toda vez que um servidor retorna o resultado de uma requisição para a qual ele não é autoridade (o que pode acontecer no método de resolução recursivo), ele armazena temporariamente aquele registro. Se, dentro do tempo de vida do registro, alguma requisição igual for feita, ele pode retornar o resultado sem a necessidade de uma nova consulta. Note que isso pode provocar inconsistência, já que se um domínio mudar de endereço durante o tempo de vida do cache, o registro estará desatualizado. Apenas o servidor autoritativo tem a garantia de ter a informação correta. É possível exigir na mensagem de requisição DNS que a resposta seja dada pelo servidor autoritativo.

Servidor Local

Esse tipo de servidor não pertence a hierarquia DNS, mas é fundamental para o seu bom funcionamento. Em vez de fazer requisições a um servidor raiz, cada cliente faz sua requisição a um servidor local, que geralmente fica muito próximo do cliente fisicamente. Ele se encarrega de resolver a requisição. Com o uso de cache, esses servidores podem ter a resposta pronta, ou ao menos conhecer algum servidor mais próximo ao autoritativo que o raiz (por exemplo, o servidor de topo), reduzindo a carga dos servidores raiz.

Page 14: Trabalho DHCP

DNS Reverso

Normalmente o DNS atua resolvendo o nome do domínio de um host qualquer para seu endereço IP correspondente. O DNS Reverso resolve o endereço IP, buscando o nome de domínio associado ao host. Ou seja, quando temos disponível o endereço IP de um host e não sabemos o endereço do domínio(nome dado à máquina ou outro equipamento que acesse uma rede), tentamos resolver o endereço IP através do DNS reverso que procura qual nome de domínio está associado aquele endereço. Os servidores que utilizam o DNS Reverso conseguem verificar a autenticidade de endereços, verificando se o endereço IP atual corresponde ao endereço IP informado pelo servidor DNS. Isto evita que alguém utilize um domínio que não lhe pertence para enviar spam, por exemplo.

Estrutura

Page 15: Trabalho DHCP

Obtenção de nomes de domínio e endereços IP

O espaço de nomes de domínio e endereços IP são recursos críticos para a internet, no sentido que requerem coordenação global. Cada endereço IP deve identificar um único equipamento, de forma que não é possível atribuir endereços IP de maneira descentralizada. Da mesma forma, um nome de domínio deve identificar o conjunto de computadores que o mantém. A organização responsável por atribuir nomes de domínio e endereços IP em nível global é a ICANN