quarta-feira, 7 de maio de 2008

Rede em VMWare

Esses dias tive problema com uma máquina virtual minha e aqui vai a dica pra ninguém mais patinar como eu patinei :)

Um belo dia, não sei porque cargas d'água, meu VMWare Server disse que haviam sido alteradas algumas coisas na máquina virtual e ele deveria criar um novo USSID para ela. Ok, deixei ele recriar, foi o que me pareceu mais sensato.

Ao iniciar a máquina, me deparei com um pequeno problema: cade minha rede?

Reiniciei o serviço de network e nada, tentei iniciar manualmente e recebi a pérola:
"eth0: ERROR while getting interface flags: no such device"

Tentei, inutilmente, remover e adicionar novamente o módulo da placa com
modprobe -r pcnet32
modprobe pcnet32

Ao readicionar o módulo, recebi uma esperançosa mensagem dizendo que havia um NIC conectado para este módulo. Oba! Mas foi só tentar iniciar a rede para receber novamente a mensagem.

Antes de pensar em desaparecer, tentei googlar (ohh) e encontrei um link maravilhoso do Ubuntu Forums com a solução colocarei ele ao final do post.

O problema: ao recriar o ID interno da minha máquina virtual, o VMWare alterou o endereço MAC da placa. O que não foi legal por parte dele, e era o que estava causando o problema.

A solução: dizer para o SO (Debian etch) esquecer da placa antiga e detectar novamente essa placa.
Como? Aqui está a mágica:

no arquivo/etc/udev/rules.d/XXX-persistent-net.rules estão as atribuições: interface, módulo, MAC. É só encontrar a interface que está apresentando o problema (no meu caso eth0), remover as referências a ela deste arquivo e estamos quase prontos. Na verdade fui um pouco mais radical e comentei todo o arquivo :)

Dica: Aonde diz XXX no nome do arquivo na verdade uma seqüência de números e/ou letras, que muda em cada máquina.

Agora é só reiniciar o serviço de hotplug (pug n' play para os win32) e boom, a mágica está completa:
$ sudo /etc/init.d/udev restart
eth0: Link Up


Ah, também não esqueça de remover e adicionar o módulo a placa novamente, para ele encontrar o novo dispositivo.

Divirta-se!


Fonte: http://ubuntuforums.org/showthread.php?t=255018