Consórcio ISC lançamento do servidor DHCP , que substitui o clássico ISC DHCP. Os códigos-fonte do projeto sob licença , em vez da licença ISC License anteriormente utilizada para o ISC DHCP.
O servidor DHCP Kea é baseado nas tecnologias BIND 10 e com uma arquitetura modular, que divide a funcionalidade em diferentes processos manipuladores. O produto inclui uma implementação completa do servidor com suporte para os protocolos DHCPv4 e DHCPv6, sendo capaz de substituir o ISC DHCP. O Kea possui mecanismos integrados para atualização dinâmica de zonas DNS (Dynamic DNS), suporta mecanismos de descoberta de servidores, atribuição de endereços, atualizações e reconexões, atendimento a consultas informativas, reserva de endereços para hosts e inicialização PXE. Na implementação do DHCPv6, existe ainda a possibilidade de delegação de prefixos. Para interação com aplicativos externos, é fornecida uma API especial. A configuração pode ser atualizada em tempo real sem a necessidade de reiniciar o servidor.
As informações sobre endereços alocados e parâmetros de clientes podem ser armazenadas em diferentes tipos de armazenamentos — atualmente, são fornecidos backends para armazenamento em arquivos CSV, bancos de dados MySQL, Apache Cassandra e PostgreSQL. Os parâmetros de reserva para hosts podem ser especificados em um arquivo de configuração no formato JSON ou em uma tabela no MySQL e PostgreSQL. Inclui a ferramenta perfdhcp para medir o desempenho do servidor DHCP e componentes para coleta de estatísticas. O Kea demonstra um bom desempenho; por exemplo, ao usar o backend MySQL, o servidor pode realizar 1000 atribuições de endereços por segundo (cerca de 4000 pacotes por segundo), e ao usar o backend memfile, o desempenho atinge 7500 atribuições por segundo.
Principais no Kea 1.6:
- Implementado o backend de configuração (CB, Configuration Backend), permitindo gerenciar centralmente as configurações de vários servidores DHCPv4 e DHCPv6. O backend pode ser usado para armazenar a maioria das configurações do Kea, incluindo parâmetros globais, informações sobre redes compartilhadas, sub-redes, opções, pools e definições de opções. Em vez de armazenar todas essas configurações em um arquivo de configuração local, elas agora podem ser colocadas em um banco de dados externo. É possível definir, por meio do CB, não todas, mas apenas parte das configurações, sobrepondo parâmetros de um banco de dados externo e arquivos de configuração locais (por exemplo, as configurações das interfaces de rede podem permanecer nos arquivos locais).
Até o momento, apenas o MySQL é suportado como banco de dados para o armazenamento de configurações (o MySQL, PostgreSQL e Cassandra podem ser usados para armazenar registros de atribuição de endereços (leases), enquanto o MySQL e o PostgreSQL são usados para a reserva de hosts). A configuração no banco de dados pode ser alterada tanto por meio de acesso direto ao banco de dados quanto por meio de bibliotecas de camadas específicas, que fornecem um conjunto padrão de comandos para o gerenciamento da configuração, como adicionar e remover parâmetros, vinculações, opções DHCP e sub-redes;
- Adicionado um novo tipo de manipuladores "DROP" (todos os pacotes relacionados à classe DROP são descartados de imediato), que pode ser usado para descartar tráfego indesejado, como certos tipos de mensagens DHCP;
- Novos parâmetros max-lease-time e min-lease-time foram adicionados, permitindo definir o tempo de vida da atribuição de um endereço ao cliente (lease) não como um valor fixo, mas como um intervalo permitido;
- Melhorada a compatibilidade com dispositivos que não seguem totalmente os padrões para DHCP. Para contornar problemas, o Kea agora envia informações sobre o tipo de mensagem DHCPv4 no início da lista de opções, processa diferentes representações de nomes de hosts, reconhece a transmissão de nomes de hosts vazios e permite a definição de subopções com códigos de 0 a 255;
- Para o daemon DDNS, foi adicionado um socket de controle separado, através do qual comandos podem ser transmitidos diretamente e alterações podem ser feitas na configuração. Os seguintes comandos são suportados: build-report, config-get, config-reload, config-set, config-test, config-write, list-commands, shutdown e version-get;
- Corrigidos (CVE-2019-6472, CVE-2019-6473, CVE-2019-6474), que podem ser usados para causar negação de serviço (provocar falha em manipuladores de servidor DHCPv4 e DHCPv6) ao enviar solicitações com opções e valores incorretos. O maior perigo é representado pelo problema , que, se utilizada para vinculações de armazenamento memfile, resulta na impossibilidade de reiniciar o processo do servidor automaticamente, portanto, para restaurar a operação, é necessária a intervenção manual do administrador (limpeza do banco de dados de vinculações).
Fonte: opennet.ru
