Mudando a ordem das NICs eth0 e eth1.

Você monta um servidor que terá mais de uma placa de rede, geralmente você não se importa quem será eth0, eth1 ou ethX, certo ?
Errado !
Veja quando isso é um problema :

  • Em muitas situações desejamos inverter a ordem das placas de redes utilizadas como eth0 e eth1, as vezes usando uma placa de menor velocidade como eth0 e a de maior velocidade como eth1, mas o sistema pensa diferente e numera a eth0 como a outra placa.
  • A placa (NIC) eth0 pifou, você a substitui e agora ela se chama eth2 ? Ué, não era para continuar eth0 ?
  • Problemas sinistros com placas eth0 e eth1 trocando de lugar a cada boot ? Putz grilla !

Para evitar alguns problemas, sistemas baseados em Debian (Ubuntu incluso) tem arquivos especiais que amarram o eth0, eth1, etc2,…ethX por seu Mac Address (endereço físico de rede ou apenas Mac), assim se você abrir o computador e efetuar troca placas de rede de lugar entre seus slots, a ordem dessas interfaces não alterará, a eth0 de antes continuará sendo a mesma NIC, idem a eth1.

Isso é muito engenhoso porque com servidores Windows já tive problemas cabeludos com servidores que possuem multiplas placas de rede.

Se você precisa alterar a ordem de sua placa de rede, execute primeiramente na linha de comando o seguinte comando :

$ifconfig

O comando acima listará as placas de rede que você possui, anote o mac de suas placas.

Agora anote qual mac será eth0 e qual será eth1, depois disso edite o arquivo /etc/udev/rules.d/70-persistent-net.rules :

# PCI device 0x103c:0x1031 (hp100)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:09:ec:6d:1b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x11ab:0x4320 (skge)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:13:d4:7a:88:39", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

O arquivo acima determina qual mac será eth0 e eth1, notou ?

O que você faz a seguir, onde está eth0 ou eth1 você pode simplesmente trocar por eth1 e eth0 e assim mudar a ordem, certificando-se porém que o Mac Address corresponda exatamente a placa desejada. Muito cuidado para não deixar duas eth0 ou duas eth1.

Você pode aproveitar a ocasião e documentar o mesmo arquivo adicionando comentários porque preferiu eth0 assim e eth1 assado.

Ou fazer como eu, embora não seja necessário, eu também mudo as linhas de lugar para que a ordem do texto reflita a ordem alfabetica eth0 primeiro e depois eth1.

Será que já quebrou a cabeça antes com alto tão fácil ? Eu já, não era fácil na época…

Anúncios
  1. #1 por Victor em 8 \08\UTC junho \08\UTC 2010 - 23:53

    Aconteceu isso no meu servidor. Uma das minhas placas de rede queimou e, quando coloquei a nova, mudou de eth1 para eth2. Não sabia que era tão fácil fazer essa troca. Tive que abrir diversos arquivos de configuração que utilizavam eth1 para modificar para eth2. Obrigado!

  2. #2 por Monica S. em 17 \17\UTC junho \17\UTC 2010 - 15:06

    Hi, I’m very interested in Linux but Im a Super Newbie and I’m having trouble deciding on the right distribution for me (Havent you heard this a million times?) anyway here is my problem, I need a distribution that can switch between reading and writing in English and Japanese (Japanese Language Support) with out restarting the operating system.

%d blogueiros gostam disto: