Resolvendo problemas na troca de IPs do VMWare em máquinas virtuais no Debian Linux
Boa tarde a todos, resolvi escrever esta dica por ter tido um problema ao alterar o IP do servidor VMWare e de suas máquinas virtuais. Configurei um servidor de máquinas virtuais para poder hospedar os sites da empresa em que trabalho. No total foram criadas três máquinas virtuais, sendo elas: WWW, DNS primário e DNS secundário.
Bom, depois de tudo criado e configurado, recebi a notícia de que meu range de IPs iria mudar, ou seja, tive que reconfigurar todos os IPs, inclusive dos arquivos de DNS. Para minha surpresa, ao reiniciar as máquinas virtuais, percebi que as interfaces de rede eth0 não mais estavam sendo reconhecidas e o mais estranho é que uma eth1 tinha aparecido. Tentei subir a interface de rede eth0 na marra e obtive a seguinte mensagem de erro:
SIOCSIFADDR: No such device
No Google encontrei apenas algumas referências, mas foi o suficiente para poder resolver meu problema e acredito que de muitos também.
A solução é a exclusão de três arquivos, que são automaticamente recriados ao dar boot, simples assim. Vamos lá!
No Debian Linux estes arquivos se encontram em /etc/udev e /etc/udev/rules.d, não sei se em outras distribuições o caminho é o mesmo ou se quer existem estes arquivos.
O primeiro passo é acessar a pasta /etc/udev:
# cd /etc/udev
Remova o arquivo persistent-net-generator.rules:
# rm persistent-net-generator.rules
Remova os arquivos z25_persistent-net.rules e z45_persistent-net-generator.rules:
# cd rules.d
# rm z25_persistent-net.rules
# rm z45_persistent-net-generator.rules
Reinicie a máquina virtual:
# shutdown -r now
Feito isso, ao reiniciar a máquina virtual o problema será resolvido, fiz isso em minhas três máquinas virtuais e resolveu.
Sei que a dica é pequena, porém me ajudou muito, estava até pensando em reinstalar tudo. Espero ter ajudado.
[1] Comentário enviado por TheHawk em 03/11/2008 - 12:45h
Olá renato, o problema ai não foi bem pela troca de ips.... trabalho com VMWare aqui no provedor e já passei por isso.... o problema é que cada vez que você reinicia uma maquina virtual o mac da placa de rede virtual muda.... (Padrão do VMWare).. e como esses linux mais recentes usando udev quando o mac muda, é como se fosse uma nova placa de rede... com isso vai aparecer a eth1.... e a eth0 some... solução para isso...
Edite o arquivo /etc/udev/rules.d/75-network-devices.rules (Ou outro arquivo com network dentro de rules) e onde tem:
KERNEL=="eth?", ATTR{address}=="00:0c:29:58:b3:07", NAME="eth0" <- Comente seu mac antigo
KERNEL=="eth?", ATTR{address}=="00:0c:29:e9:ab:f0", NAME="eth1"
e onde tem o mac novo mude o nome da interface pra eth0 e reinicie o sistema virtual... com isso a nova placa será reconhecida com eth0... mas a solução definita pra esse problema é editar a configuração da maquina virtual para que ela fique com o mac fixo, pra isso pare sua maquina virtual e acesse a pasta onde está armazenada a sua maquina virtual e edite um arquivo com extensão .vmx (essa é a configuração da maquina virtual), vc vai encontrar as 3 linhas abaixo:
apague essas 3 linhas e adicione apenas linha abaixo:
ethernet0.address = "00:50:56:3F:00:52"
Salve o arquivo e pronto... pode iniciar a maquina... seu mac será sempre o mac que vc setou ai nessa linha... agora a dica: mude APENAS os 4 digitos finais do mac, ou seja.. o mac tem que ser sempre 00:50:56:3F:XX:XX, vc só pode mudar esse final, senão o vmware não aceita... é isso, espero ter ajudado e até mais.
[2] Comentário enviado por reng.unip em 10/11/2008 - 12:05h
Antes de mais nada, muito obrigado por comentar minha dica, fico muito honrado com isso. Você disse "o problema é que cada vez que você reinicia uma maquina virtual o mac da placa de rede virtual muda", antes de implementar meus servidores virtuais, reiniciei inúmeras vezes, inclusive o VMware, porém o fato apenas ocorreu quando eu troquei os IP´s, todos eles, inclusive do VMware. Muito obrigado mais uma vez por comentar e tentar me ajudar, acredito que todos crescemos com isso.
[3] Comentário enviado por lefigo em 08/12/2008 - 20:24h
Aproveitando os comentários,estou com um problema: tenho na minha máquina hospedeira o
Linux Debian e rodando no VMware o Windows 2000. Minha conexão com a internet é uma bridge e recebe os IPs
por DHCP. Só tenho 1 placa de rede nessa máquina (conectada à internet). Como faço para que o Windows acesse
a internet? Obrigado!
[4] Comentário enviado por reng.unip em 12/12/2008 - 16:04h
Beleza? Vamos a resposta.
O Windows é uma VM correto? Se sim ele também deve receber as configurações de rede pelo servidor DHCP da rede. Verifique se ele as recebe, veja se o DNS, IP, mascara de rede e gateway estão ok na VM Windows 2000.
Se tudo isso estiver configurado, é para funcionar.