Mudar o nome da Placa de Rede no Ubuntu 16.04 ou 16.10

Iniciado por bitencourtt, 19 de Janeiro de 2017, 13:00

tópico anterior - próximo tópico

bitencourtt

Pessoal Bom dia, venho até vocês pedir uma ajuda sobre uma questão que era relativamente simples e se tornou complicada apos a atualização do ubuntu. Nas versões anteriores o Ubuntu tinha o arquivo 70-persistent-net.rules que ficava localizado na pasta /etc/udev/rules.d/ e la podiamos fazer as alterações de nome das interfaces de rede, situação esta bem comum, tendo em vista problemas de queima de placa de rede ou ate mesmo mal funcionamento. Pois bem ao instalar o ubuntu 16.04 vi que o nome das interfaces de rede havia mudado, ao invés da velha eth0 e eth1, mudou para enps1 e enps2. Até ai tranquilo editei o arquivo /etc/default/grub, adicionei o comando net.ifnames=0 e tudo ficou bem. Porem minha placa eth1, parou de funcionar, adicionei uma interface de rede nova ela subiu como eth2, porem preciso mudar ela para assumir a função da eth1 pois tenho habilitados serviços coomo servidor DHCP, Firewall e etc, ai que vem meu problema, como fazer isso se já não existe mais o arquivo 70-persistent-net.rules? qual arquivo deve ser alterado? teria que instalar algum componente? Alguem poderia me ajudar? Desde já agradeço.

druidaobelix

Olá "bitencourtt",

Título do tópico todo em maiúsculas (=caixa alta), não vai dar certo.

http://ubuntuforum-br.org/index.php/topic,43147.0.html

8. Não são permitidas mensagens/títulos:

II - Em caixa-alta (maiúsculas) e/ou com excesso de formatação de texto fora do padrão do fórum.

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

druidaobelix

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

bitencourtt

Citação de: druidaobelix online 19 de Janeiro de 2017, 13:29
Olá "bitencourtt",

Título do tópico todo em maiúsculas (=caixa alta), não vai dar certo.

http://ubuntuforum-br.org/index.php/topic,43147.0.html

8. Não são permitidas mensagens/títulos:

II - Em caixa-alta (maiúsculas) e/ou com excesso de formatação de texto fora do padrão do fórum.

Boa tarde Amigo, corrigido o erro na fonte do titulos, Obrigado.

bitencourtt

Citação de: druidaobelix online 19 de Janeiro de 2017, 13:33
Por que net.ifnames=1, não seria net.ifnames=0?

Olha esta configurado net.ifnames=0, como disse, o problema está na indicação da nova placa de rede para exercer a função da que parou de funcionar, antes, bastava apenas alterar o 70-psersistent-net.rules informando que a eth2 passava a ser eth1. Como fazer isso se o arquivo não existe mais? eis o meu problema.

druidaobelix

A referência que tenho nessa questão do biosdevname é essa:

Predictable Network Interface Names

https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/

Bem, o que eles dizem lá é isso:

You create your own manual naming scheme, for example by naming your interfaces "internet0", "dmz0" or "lan0". For that create your own .link files in /etc/systemd/network/, that choose an explicit name or a better naming scheme for one, some, or all of your interfaces. See systemd.link(5) for more information.

O link referenciado é esse:

systemd.link — Network device configuration

https://www.freedesktop.org/software/systemd/man/systemd.link.html

Observe especialmente o exemplo 2 associando MAC e name da interface.

www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

zekkerj

Se eu entendi direito, agora, pra escolher o nome da interface, eu preciso criar um arquivo, por exemplo, "/etc/systemd/network/10-eth0.link", e conteúdo parecido com isto:


[Match]
Path=pci-0000:00:1a.0-*
MACAddress=00:a0:de:63:7a:e6

[Link]
Name=eth0


Confirma?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

druidaobelix

#7
Citação de: zekkerj online 19 de Janeiro de 2017, 16:01
Se eu entendi direito, agora, pra escolher o nome da interface, eu preciso criar um arquivo, por exemplo, "/etc/systemd/network/10-eth0.link", e conteúdo parecido com isto:
[...] Confirma?

Quase isso, na verdade se quiser um Name específico para um MAC específico bastaria usar a seção [Link], para as demais seções, se a seção for vazia (empty) assume o que é o padrão do sistema obtido pelo kernel, porém precisa também desabilitar no kernel o uso automático do biosdevname usando aquele parâmetro net.ifnames=0

Então na essência é isso mesmo cria um arquivo de extensão .link naquele diretório /etc/systemd/network/ cuja execução é léxica.

Num exemplo que usei aqui:

/etc/systemd/network/90-mynetworkcard.link


[Link]
MACAddress=45:87:FC:1C:81:D5
Name=eth7


resulta no nmcli d

Citar
DISPOSITIVO  TIPO      ESTADO           CONEXÃO           
eth7         ethernet  conectado        Conexão cabeada 1


www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

zekkerj

Então o "udev" perdeu controle de vez sobre o nome das interfaces de rede?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

creto

#9
Citação de: zekkerj online 19 de Janeiro de 2017, 23:45
Então o "udev" perdeu controle de vez sobre o nome das interfaces de rede?
Deixa eu meter o bedelho aqui, sim, parece que sim. E são coisas do kernel e módulos que ele nem está conseguindo carregar mais e estão dizendo que as versões 4.9.x veio com um monte de correções, imagina quando ela vier apenas com poucas correções.

Versão do kernel que não carrega nem mais as Realteks imagina ai...
[creto@localhost ~]$ inxi -N
Network:   Card: Realtek RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller
           driver: r8169
[creto@localhost ~]$


T+
A vida, é feito andar de bicicleta, se parar, você cai! (Gabriel Contino)
Blog do Paulo Corrêa Creto