Versão recente do Ubuntu e Debian (stretch) trazem um novo esquema de nomeação de interfaces de rede.
Agora, ao atualizar de um sistema que usa nomes de estilo antigo como "eth0", eu gostaria de saber antes de inicializar qual será o novo nome.
Como posso fazer isso? Existe uma invocação mágica do "systemd" que posso usar para editar o / etc / network / interface antes da inicialização (e subsequentemente perdendo a conectividade da rede)?
linux-networking
systemd
debian-stretch
Ralf Hildebrandt
fonte
fonte
Respostas:
Existem dois esquemas diferentes disponíveis: biosdevname vs nome previsível da interface de rede.
biosdevname
Biosdevname parece ser o padrão no ubuntu. É ativado instalando o pacote biosdevname.
O nome do biosdev de uma interface pode ser encontrado com:
Nomes previsíveis da interface de rede
Eu acredito que este é o padrão no trecho Debian, mas precisa ser explicitamente ativado na atualização de versões anteriores.
O nome previsível para eth0 pode ser encontrado com:
fonte
/etc/udev/rules.d/70-persistent-net.rules
. O link fornecerá um guia de migração, se você desejar mudar para o novo esquema de nomenclatura.Aparentemente, o novo esquema é chamado de "nomes previsíveis da interface de rede", mas não estou encontrando muita documentação sobre como realmente prever o nome. Tudo o que eu encontrei sobre ele basicamente aponta para esse comentário do código-fonte (que por sua vez aponta para o primeiro link). A partir do comentário, não está claro como saber qual esquema de endereçamento o udev usará para o nome do dispositivo de rede.
Pelo primeiro link, você pode desativá-lo e usar os nomes tradicionais adicionando
net.ifnames=0
na linha de comando do kernel no Grub. De acordo com este comentário , pode ser necessário se você planeja criar uma interface marcada para VLAN, pois a extensão adicionada tornará o nome da interface muito longo.Caso contrário, talvez seja melhor refazer a pergunta para explicar o que você está tentando fazer com o nome (por exemplo, configure a interface através de um arquivo ansible ou algo semelhante)
fonte
Não tenho certeza se esse ainda é o caso das versões atualizadas, mas em meus sistemas antigos consegui criar um arquivo vazio
/etc/udev/rules.d/80-net-name-slot.rules
e desabilitaria o recurso de nomenclatura "previsível". Você também pode criar sua própria regra e nomear as interfaces sozinho, com base no endereço mac ou nas conexões PCI / USB.fonte
Esta documentação pode ajudar um pouco. Consulte a seção "O que exatamente mudou na v197?". Sim, eu sei que isso tem um valor um pouco limitado, mas pode dar a você um caminho para mais pesquisas.
fonte