Você já se perguntou por que sua interface de rede no Linux não se chama mais eth0
ou wlan0
, mas algo como enp3s0f0
ou wlp2s0
? Essa transformação — aparentemente confusa — é resultado de uma batalha silenciosa, mas estratégica, travada dentro do Kernel Linux e de suas ferramentas de usuários ao longo da última década. Neste artigo, vamos explorar profundamente por que o Linux mudou a forma como enxerga suas conexões Wi-Fi e Ethernet, revelando os desafios, as motivações técnicas e os benefícios por trás dessa mudança de paradigma sobre como o Linux funciona
Este conteúdo é um guia completo para entender os nomes de interfaces de rede Linux, desde a era dos clássicos eth0
e wlan0
até os modernos enpXsYfZ
e wlpAsB
, passando pelas implicações práticas no gerenciamento de rede Linux em servidores, desktops e ambientes virtualizados.
A era clássica: eth0
, wlan0
e a imprevisibilidade

Durante décadas, as interfaces de rede no Linux eram nomeadas com base na ordem em que os dispositivos eram detectados pelo Kernel. Isso gerava nomes como:
eth0
,eth1
,eth2
– para interfaces Ethernet.wlan0
,wlan1
– para interfaces Wi-Fi.
Essa abordagem, embora simples, apresentava um problema crítico: não era previsível.
O bug da troca de interface
Em servidores com múltiplas placas de rede, era comum após um reboot que a interface eth0
se transformasse em eth1
ou eth2
, mudando totalmente a rota de rede esperada.
Referência: esse bug foi amplamente reportado em ferramentas como Red Hat Bugzilla, Debian BTS e Launchpad do Ubuntu entre 2006 e 2011.
Ferramentas da época: ifconfig
Durante esse período, o comando padrão era ifconfig
, amplamente utilizado por usuários que estavam começando a explorar o terminal Linux para iniciantes.
ifconfig
Saída típica:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.102 netmask 255.255.255.0 broadcast 192.168.0.255
A “batalha” das interfaces de rede começa: A busca por nomes persistentes
Com o crescimento da virtualização, computação em nuvem e provisionamento automático, tornou-se evidente que o Linux precisava de uma forma mais robusta de nomear interfaces.
Soluções parciais: biosdevname
A ferramenta biosdevname
, desenvolvida pela Dell, foi um passo inicial na tentativa de associar nomes às interfaces com base em dados da BIOS. Porém, sua adoção foi limitada e dependia de firmware específico.
A virada: Predictable Network Interface Names
Com o udev
e o advento do systemd
, surgiu uma proposta sólida: usar dados estáveis (como caminho PCI) para gerar nomes fixos e únicos para cada interface.
Essa proposta foi implementada oficialmente no systemd v197 (2012), liderada por Lennart Poettering e Kay Sievers.
“eth0 não é confiável nem escalável. Nomes previsíveis não são bonitos, mas são robustos.”
— Lennart Poettering, em debate de 2014
Quando o systemd introduziu os Predictable Names em 2012 (systemd v197), houve resistência na Linux Kernel Mailing List, veja o debalte completo no LWN.net.
Desvendando os novos nomes de interfaces Linux: enpXsYfZ
e wlpAsB
Os nomes atuais seguem a topologia real do hardware.
Componentes do nome:
en
ouwl
: tipo (Ethernet/Wi-Fi)pX
: número do bus PCIsY
: número do slotfZ
: função (caso a placa tenha múltiplas funções)
Exemplo com ip
:
ip link show
Saída simulada:
3: enp3s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff
Esses nomes são atribuídos dinamicamente pelo udev
com base em regras em:
/lib/udev/rules.d/80-net-setup-link.rules
Nota: Para mais detalhes consulte a documentação oficial.
Como o Linux mudou a forma como enxerga a conexão Wi-Fi e Ethernet
A previsibilidade mudou tudo:
- Scripts automatizados passaram a confiar nos nomes.
- Logs passaram a identificar com precisão qual interface falhou.
- Ambientes como OpenStack e Kubernetes tornaram-se mais estáveis.
“O que quebra scripts não é o novo nome, mas a suposição errada de que eth0
é sempre a primeira placa.”
— Greg Kroah-Hartman, mantenedor do Kernel
Resistência da comunidade e eventos históricos marcantes
Discussões na LKML e reações
A introdução dos nomes previsíveis gerou forte resistência inicial em listas como LKML e fóruns (Arch, Debian, Gentoo). Os argumentos mais comuns eram:
- “Nomes longos demais e ilegíveis.”
- “Rompimento com a tradição de décadas.”
- “Scripts e configurações legadas quebram.”
Apesar disso, distribuições como Fedora, Ubuntu e SUSE adotaram rapidamente o novo padrão.
Já Arch Linux, Slackware e Alpine permitiram que o comportamento fosse opcional, refletindo a diversidade do ecossistema Linux. Essa diversidade reforça o argumento de que o Linux não impõe mudanças, mas oferece ferramentas para cada comunidade decidir como usá-las, o que reflete diretamente na diversidade do ecossistema Linux. No entanto, vale lembrar que o Arch Linux optou por não forçar o uso dos nomes previsíveis no início, conforme a documentação oficial da distribuição.
Casos emblemáticos: OpenStack
No OpenStack, mudanças no nome de interface causavam perda de conectividade em VMs migradas. Com os nomes previsíveis (ensX
, enpXsY
), esse problema foi eliminado, trazendo estabilidade para ambientes de alta disponibilidade, segundo a Red Hat.
Para iniciantes: o que é uma interface de rede?
Uma interface de rede é como a “placa de rede” do seu computador se conecta ao mundo.
eth0
: era o nome genérico da placa de rede com cabo.wlan0
: era o nome do Wi-Fi.
Hoje, chamam-se enp3s0
, wlp2s0
, etc., porque esses nomes representam onde, fisicamente, a placa está conectada — como se cada porta tivesse seu “CEP”.
Gerenciamento de rede Linux: comandos e ferramentas atuais
Comparativo: ifconfig
vs. ip
Função | ifconfig | ip |
---|---|---|
Ver interfaces | ✅ | ✅ (ip a ) |
Atribuir IP | ✅ | ✅ (ip addr add ) |
Mostrar rotas | ❌ | ✅ (ip route ) |
Suporte contínuo | ❌ | ✅ |
Exemplo com nmcli
:
nmcli device status
Saída:
DEVICE TYPE STATE CONNECTION
wlp2s0 wifi connected MinhaRedeWiFi
enp3s0f0 ethernet disconnected --
Exemplo com netplan
(Ubuntu):
network:
version: 2
ethernets:
enp3s0:
dhcp4: true
sudo netplan apply
Como desativar (e por que não é recomendado) os nomes persistentes
Embora possível, desativar os nomes persistentes é desaconselhado.
Como fazer (com GRUB):
sudo nano /etc/default/grub
Adicionar:
net.ifnames=0 biosdevname=0
Atualizar:
sudo update-grub
Reiniciar:
sudo reboot
Essa abordagem quebra a compatibilidade com scripts modernos e logs estruturados.
Benefícios e desafios da nova abordagem de interfaces de rede Linux
Benefícios
- Previsibilidade entre boots.
- Scripts e automações confiáveis.
- Facilidade em ambientes com múltiplas interfaces.
- Depuração facilitada em servidores.
Desafios
- Curva de aprendizado.
- Migração de scripts antigos.
- Memorização menos intuitiva.
O futuro do gerenciamento de rede Linux
O avanço do NetworkManager, systemd-networkd
, Netplan e ferramentas de orquestração (como cloud-init e Ansible) aponta para uma era cada vez mais declarativa e automatizada, onde a previsibilidade é um valor inegociável.
Conclusão
A mudança de nomes de eth0
para enpXsYfZ
pode parecer um capricho técnico, mas foi uma necessidade real para modernizar o gerenciamento de rede Linux. Essa “batalha” das interfaces de rede Linux evidenciou o equilíbrio entre tradição e inovação, garantindo estabilidade em ambientes complexos, escaláveis e automatizados.
Ao mudar a forma como identifica suas conexões Wi-Fi e Ethernet, o Linux reafirmou sua missão: fornecer controle, previsibilidade e robustez a quem administra redes — do desktop à nuvem.