HISTÓRIA ------------------------------------------------- -------------

HISTÓRIA ------------------------------------------------- -------------

Eu tenho uma caixa Linux com um IP estático configurado que parece estar ok. O endereço IP estático funciona por algumas horas e depois retorna com (o que parece ser) qualquer coisa que o DHCP lhe diga para usar.

Aqui está meu /etc/network/interfaces

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 10.0.0.101
netmask 255.255.255.0
network 10.0.0.0
broadcast 10.0.0.255
gateway 10.0.0.254

Alguma ideia?

Responder1

Tive o mesmo problema no Ubuntu Server, mas acho que consegui resolver. Quando reinicio a rede, o dhclient3 ainda está em execução. Olhando do htop, tem algum “eth0” nos argumentos, então suspeitei que ainda estava procurando por renovações de dhcp para eth0. Não consegui remover o dhcp-client com o apt-get, então executei:

sudo kill $(ps -aux | grep dhc | grep eth0 | awk '{print $2}')

AVISO: Este código pode matar outras coisas no seu servidor! Vá com calma e substitua “eth0″ pelo nome da interface para a qual você configurou um IP estático! Alternativamente, mate dhclient OU dhclient3 para sua interface através do htop.

Responder2

Eu tive o mesmo problema. O daemon dhclient é uma loucura. As verificações de sanidade precisam de trabalho. Deveria ser algo assim:

  • Descubra informações de locação existentes (/var/lib/dhcp/*)
  • Valide todas as interfaces para configuração DHCP (/etc/network/interfaces)
  • Se uma interface estiver configurada estaticamente, limpe as informações de concessão de DHCP e ignore a interface durante a execução.
  • Se uma interface não estiver configurada estaticamente e tiver informações de concessão existentes, renove adequadamente.
  • Se uma interface não estiver configurada estaticamente e não tiver informações de concessão existentes, descubra adequadamente.

HISTÓRIA ------------------------------------------------- -------------

Enquanto o problema estava em andamento, testemunhei /var/log/syslog ser preenchido com a seguinte linha:

May  3 06:25:36 xxxxxx dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67

O processo dhclient estava sendo executado em segundo plano, conforme confirmado com 'ps aux | grep dhc'

Tendo confirmado a configuração correta do IP estático para eth0 em '/etc/network/interfaces', reiniciei o serviço de rede. Depois que o serviço de rede foi reiniciado, o IP estático foi mantido até que a concessão atingisse a meia-vida, momento em que o dhclient renovou o endereço atribuído anteriormente pelo DHCP, que foi recebido na configuração inicial do sistema. Esta informação é mantida em '/var/lib/dhcp/*'.

Esse comportamento foi testemunhado em três sistemas nos quais tenho trabalhado nos últimos dias. Informação do sistema:

# cat /etc/issue.net
Debian GNU/Linux 7
# cat /proc/version
Linux version 3.2.0-4-amd64 ([email protected]) (gcc version 4.6.3 (Debian 4.6.3-14) ) #1 SMP Debian 3.2.68-1+deb7u1
# dhclient -version
Internet Systems Consortium DHCP Client 4.2.2

RESOLUÇÃO ------------------------------------------------- ----------

Nota: Execute como root ou adicione sudo a cada comando.

# dhclient -r
# dhclient -x
# rm /var/lib/dhcp/* 
# shutdown -r 0

Resultado: O processo dhclient não foi iniciado automaticamente com o sistema, 'ifconfig' mostra que eth0 foi configurado corretamente com o IP estático, o syslog está livre de spam de DHCP e a alteração é persistente através de várias reinicializações do sistema.

CUIDADO: Meus sistemas dependem de um endereço IP atribuído estaticamente para funcionar corretamente. Se você estiver aplicando essa correção a um laptop, provavelmente interromperá a conectividade wi-fi.

informação relacionada