Como configurar o dhclient no CentOS para obter o IP de um servidor DHCP específico

3

Eu tenho uma situação onde eu posso lançar imagens do CentOS 6.6 em uma sub-rede, de modo que as instâncias da VM obtenham seus endereços IP do gateway virtual da sub-rede. Agora esse gateway ficou instável e eu não tenho acesso para consertá-lo, então eu configurei meu próprio servidor DHCP nesta sub-rede.

Portanto, agora há dois servidores DHCP nessa sub-rede e minhas VMs estão recebendo endereços IP aleatórios, às vezes de um servidor DHCP e, às vezes, de outro. Minha pergunta é como eu posso configurar o cliente dhcp em minhas VMs para que elas façam solicitações de DHCP apenas para o meu servidor DHCP, em vez de para o servidor defeituoso? man dhcp.conf não foi muito útil.

    
por xkcd 28.07.2015 / 18:30

2 respostas

7

No CentOS 7 isso pode ser feito criando o arquivo /etc/dhcp/dhclient.conf e adicionando uma linha como

reject 192.168.56.0/24;

para rejeitar ofertas DHCP de um servidor ou outro (ou, neste exemplo, de todos os servidores DHCP em uma sub-rede específica).

Para filtrar as ofertas DHCP apenas em uma interface específica, coloque a diretiva reject dentro de um bloco interface :

interface "eth0" {
    reject 192.168.56.0/24;
}

Observe que o nome da interface (aqui, eth0 ) deve ser colocado entre aspas, ao contrário do exemplo mostrado na man page de dhclient.conf .

Em todos os casos, execute systemctl restart network.service como o superusuário para que as alterações entrem em vigor.

No CentOS 6.7 as mesmas instruções funcionam, no entanto

  • Cada interface usa um arquivo de configuração separado para o dhclient. No exemplo acima, o arquivo ao qual a regra reject seria adicionada seria /etc/dhcp/dhclient-eth0.conf (e claramente não haveria necessidade de usar um bloco interface ).
  • O comando para reinicializar as interfaces de rede do sistema é service network restart , que deve ser chamado novamente como o superusuário.
por 16.12.2015 / 17:57
4

O DHCP funciona por meio de uma solicitação multicast para um endereço IP. Qual obtém um endereço IP do primeiro servidor DHCP para responder. Não há nenhuma maneira que eu saiba para forçar o cliente a obter um endereço DHCP de um servidor específico.

Na verdade, a execução de dois servidores DHCP que não estão cientes um do outro está solicitando o tipo de problema que você está enfrentando. Você precisa fazer com que o defeito seja desligado ou consertado.

    
por 28.07.2015 / 18:34