Alterne eth0 e eth1 no servidor ubuntu

8

Eu tenho um problema simples. Eu tenho um computador executando o servidor Ubuntu 8.04 LTS com 2 placas de rede. Um na placa-mãe indo para a Internet e uma placa PCI para uma rede interna. Durante a instalação, ele detectou a NIC na placa-mãe como eth1 e a placa PCI como eth0. Eu gostaria deles ao contrário. Especialmente porque a NIC PCI não será usada pelo servidor host, apenas para algumas máquinas virtuais que serão executadas nele.

Portanto, atualmente a máquina inicializa o eth1 (placa-mãe NIC) obtém um IP com dhcp enquanto deixa o eth0 (PCI NIC) sozinho. É exatamente isso que eu quero, exceto eth0 e eth1 para alternar.

Obrigado.

lanrat
fonte

Respostas:

15

Conforme mencionado por tzafrir.net sem muito mais explicações, em sistemas baseados no Debian que incluem Ubuntu, você precisa verificar o /etc/udev/rules.d/70-persistent-net.rulesarquivo e encontrará uma linha semelhante a:

# PCI device 0x14e4:0x170c (b44)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:6d:b1:9e", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Você obviamente encontrará um com NAME = "eth0" e outro com "NAME = eth1", mas cada um terá os respectivos endereços MAC. Você pode simplesmente trocar os NAMEvalores e reiniciar o computador e o sistema irá renomeá-los. Você pode até nomeá-los com algo diferente wanou lannão importa, desde que suas rotas e outras configurações usem os mesmos nomes.

Nos sistemas baseados em RedHat, incluindo o Fedora e o CentOS, isso seria realizado alterando a HWADDRlinha encontrada no /etc/sysconfig/network-scripts/ifcfg-ethXarquivo apropriado .

O objetivo é manter a mesma NIC após a reinicialização que o kernel era conhecido no passado para alterar a ordem em que as placas PCI são endereçadas, que podem trocar a ordem da NIC.

Jeremy Bouse
fonte
11
Obrigado. Eu também precisava editar o / etc / network / interfaces e alterar eth1 para eth0.
lanrat
se tudo o que você queria alterar era qual NIC era eth0, você só precisava alterar o 70-persistent-net.rulesarquivo. Na verdade, esse arquivo é criado pelo udev se ele não existir quando o sistema for inicializado. Agora, se você configurou o interfacesarquivo para contorná-lo usando a NIC correta, também precisaria alterá-lo.
Jeremy Bouse
6

Você pode alterar os nomes dos dois dispositivos sem problemas em /etc/udev/rules.d/70-persistent-net.rules

Tzafrir
fonte