Como posso mostrar os nomes eth0 antigos e também renomear as interfaces de rede no debian 9 stretch?


12

Eu gostaria de fazer 2 coisas:

1) Reverta as interfaces para o antigo nome clássico: eth0 em vez de ens33.

2) Renomeie as interfaces da maneira que desejo, para que, por exemplo, eu possa chamar a interface eth0 como wan0 ou atribuir eth1, eth2 e assim por diante no endereço mac desejado.

Respostas:


21

Supondo que você acabou de instalar o seu debian 9 stretch.

1) Para reverter os nomes antigos para as interfaces, faça:

nano /etc/default/grub

edite a linha GRUB_CMDLINE_LINUX=""paraGRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

então inicie um grub-mkconfig para aplicar as alterações dentro do gerenciador de inicialização

grub-mkconfig -o /boot/grub/grub.cfg

Você precisa de uma reinicialização depois disso.


2) Para renomear as interfaces, use:

  • Para apenas uma modificação temporária, dê uma olhada na resposta @xhienne.

  • Para uma modificação permanente:

Comece criando / editando o arquivo /etc/udev/rules.d/70-persistent-net.rules .

nano /etc/udev/rules.d/70-persistent-net.rules

E insira linhas internas como:

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# interface with MAC address "00:0c:30:50:48:ab" will be assigned "eth1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:ab", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

Se você deseja atribuir, por exemplo, um nome como wan0 a eth0, pode usar o meu exemplo:

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="wan0"

Após a próxima reinicialização ou usando a rede de serviço, você deverá ver as alterações aplicadas.


EXTRA: Lembre - se de que, após todas essas modificações, você deverá editar seu arquivo / etc / network / interfaces, substituindo os nomes das interfaces antigas pelas novas!


EXTRA: Se você deseja saber qual endereço MAC suas interfaces têm, basta fazer um

ip addr show

e procure no link / seção.


Onde essas informações podem ser encontradas na documentação oficial do Linux?
precisa saber é o seguinte

5

Para a pergunta 1), consulte a resposta do usuário3450548 . Para a pergunta 2), você pode fornecer qualquer nome com o qual deseja uma interface iproute2:

ip link set ens33 down           # Else you will get "Device or resource busy"
ip link set ens33 name eth0

1
Oh legal, no entanto, isso não é apenas uma mudança temporária até a próxima reinicialização?
user3450548

Sim. É claro que você pode adicionar isso em um script de inicialização, mas sua resposta é melhor se você quiser algo permanente. Eu não percebi que você estava respondendo sua própria pergunta (você pode aceitá-la então) e a adicionei se você (ou qualquer outra pessoa) gostaria de alterar temporariamente o nome para fins de teste.
Xhienne 6/10

Obrigado, este é um bom complemento, vou apontar a solução temporária para a sua resposta aswell :)
user3450548

0

Crie o arquivo abaixo, se não houver

nano /etc/udev/rules.d/70-persistent-net.rules

adicione abaixo da linha

# interface with MAC address "00:0c:30:50:48:a1" will be assigned "eth0"
# KERNEL=="enp3s0" is debians current interface name
# NAME="eth0" is a new ethernet interface name
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:30:50:48:a1", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="enp3s0", NAME="eth0"

0

Encontrei uma maneira muito fácil alterando apenas /etc/network/interfaces:

rename enp3s0=wan0

Então

service networking restart

para reiniciar o serviço de rede.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.