Como configurar o systemd-networkd no Linux para Ethernet com fio

O systemd-networkd é o gerenciador de rede integrado do systemd para configurar links Ethernet, endereços, rotas, bridges, VLANs e outros dispositivos de rede. Para uma conexão cabeada básica, a configuração é simples: identifique a interface, crie um .networkarquivo, certifique-se de que nenhum outro gerenciador possua a mesma interface, inicie o systemd-networkd systemd-networkde verifique o resultado.

Este guia utiliza DHCP em uma interface Ethernet cabeada. Se você estiver conectado à máquina via SSH, utilize um console local ou gerenciamento fora de banda antes de trocar de gerenciador de rede, pois a transição pode interromper temporariamente a conexão.

1. Verifique sua interface Ethernet e o gerenciador de rede atual.

Comece listando os links que o systemd conhece:

networkctl list

Procure pela interface com fio, geralmente chamada de algo como enp3s0`interface1` eno1, `interface2` ou `interface3` eth0. Você também pode executar `interface3` ip link. Não copie o nome da interface de exemplo cegamente.

Terminal Linux exibindo o comando `networkctl list` com a interface Ethernet `enp3s0` destacada.

Em seguida, verifique se o NetworkManager está ativo:

systemctl status NetworkManager

O NetworkManager e o systemd-networkd podem coexistir quando gerenciam interfaces diferentes , mas você não deve permitir que ambos gerenciem o mesmo link Ethernet. A documentação atual do systemd.network explica como .networkos arquivos correspondem às interfaces e como o networkd determina a propriedade.

O terminal Linux verifica o NetworkManager e exibe o comando para desativá-lo antes de passar a interface para o systemd-networkd.

2. Crie um perfil de rede DHCP.

Os perfis de administrador local devem ser armazenados em /etc/systemd/network/. Crie o diretório, caso ele ainda não exista, e edite um arquivo como 20-wired.network:

sudo mkdir -p /etc/systemd/network
sudo nano /etc/systemd/network/20-wired.network

Para uma conexão Ethernet normal que recebe seu endereço do seu roteador ou servidor DHCP, use:

[Match]
Name=enp3s0

[Network]
DHCP=yes

Substitua enp3s0pela sua interface real. Os arquivos devem terminar em .network. Quando vários arquivos correspondem a um link, o systemd-networkd usa o primeiro arquivo correspondente em ordem alfanumérica, portanto, um nome específico como 20-wired.networké mais fácil de entender do que um nome genérico.

O editor Nano exibe um perfil Ethernet do systemd-networkd com o nome "Match Name enp3s0" e DHCP ativado.

Opcional: use um endereço IPv4 estático.

Se a máquina precisar de um endereço fixo, substitua DHCP=yespelos valores apropriados para sua rede:

[Match]
Name=enp3s0

[Network]
Address=192.168.1.50/24
Gateway=192.168.1.1
DNS=1.1.1.1
DNS=9.9.9.9

Não reutilize esses endereços de exemplo a menos que correspondam à sua sub-rede. Consulte os documentos de referência oficiais do systemd.network para obter mais informações sobre opções de roteamento avançadas.DHCP=Address=Gateway=DNS=

3. Habilitar systemd-networkd

Assim que o perfil estiver pronto, habilite o networkd e inicie-o imediatamente:

sudo systemctl enable --now systemd-networkd

Se outro serviço estiver gerenciando essa mesma interface Ethernet, realize a transferência a partir de um console local. Para um host que esteja migrando completamente do NetworkManager, você pode pará-lo e desativá-lo com:

sudo systemctl disable --now NetworkManager

Não desative o NetworkManager se ainda precisar dele para Wi-Fi ou outras interfaces. systemd-networkdEle configura a rede IP, mas a autenticação Wi-Fi normalmente requer um componente separado, como o iwd ou o wpa_supplicant.

No terminal Linux, é possível habilitar o systemd-networkd com o comando `systemctl enable --now`.

4. Configure o DNS com systemd-resolved, se necessário.

systemd-resolvedNão é um requisito para o próprio networkd, mas integra-se bem com ele e pode usar servidores DNS aprendidos via DHCP. Se sua distribuição ainda não estiver usando outro resolvedor, habilite-o:

sudo systemctl enable --now systemd-resolved

A documentação do systemd-resolved recomenda a vinculação /etc/resolv.confao seu arquivo stub quando o resolved for o resolvedor do sistema. Verifique primeiro:

readlink -f /etc/resolv.conf

Se você deseja intencionalmente que o systemd-resolved forneça resolv.conf, use:

sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

Não substitua /etc/resolv.confse a sua distribuição ou outra ferramenta de DNS estiver gerenciando-o intencionalmente.

Terminal Linux habilitando systemd-resolved, vinculando resolv.conf ao resolvedor stub e verificando o status do resolvectl.

5. Recarregue a configuração e reconfigure a interface.

Após editar um .networkarquivo, recarregue a configuração do networkd. Em seguida, você poderá reconfigurar explicitamente o link de destino:

sudo networkctl reload
sudo networkctl reconfigure enp3s0

Substitua ` enp3s0<nome_da_interface>` pelo nome da sua interface. O manual oficial do networkctl documenta ambos os comandos. Um `networkctl reset` systemctl restart systemd-networkdtambém reinicia o serviço, mas networkctlgeralmente é a opção mais adequada.

Terminal Linux exibindo um perfil systemd-networkd seguido pelos comandos networkctl reload e reconfigure.

6. Verifique se o systemd-networkd está funcionando.

Verifique o estado da interface:

networkctl status enp3s0

Para uma conexão DHCP saudável, você deve ver o link configurado com um endereço IP, um gateway padrão e, geralmente, informações de DNS.

A saída do comando `networkctl status` mostra que a interface enp3s0 está configurada, roteável e com um endereço IPv4, gateway e servidor DNS atribuídos.

Em seguida, confirme o roteamento e a conectividade:

ip route
ping -c 3 1.1.1.1

Se o ping de IP funcionar, mas os sites ou nomes de host não forem resolvidos, teste o DNS resolvectl query example.comusando o systemd-resolved. Se a interface permanecer como "sem nome de domínio unmanaged", verifique novamente o [Match]nome e certifique-se de que outro gerenciador de rede não esteja reivindicando o mesmo dispositivo.

Terminal Linux verificando systemd-networkd com networkctl status, ip route e resultados de ping bem-sucedidos

Para configurações avançadas, como bridges, bonds, VLANs, túneis ou dispositivos virtuais, consulte a documentação oficial do serviço systemd-networkd e as referências systemd.netdevrelacionadas systemd.link.

Deixar um comentário

Como configurar um servidor Resilio Sync no Linux

Como configurar um servidor Resilio Sync no Linux

Instale o Resilio Sync a partir do repositório oficial do Linux, habilite o serviço do sistema, configure a interface web local e compartilhe pastas com as permissões corretas.

Como transferir arquivos de e para um contêiner Docker

Como transferir arquivos de e para um contêiner Docker

Use o comando `docker cp` para copiar arquivos e pastas para dentro ou para fora de um contêiner Docker, incluindo contêineres parados. Aprenda dicas sobre caminhos, diretórios, permissões e armazenamento.

Como fazer o Lapce funcionar no Linux: Instalar e abrir um projeto

Como fazer o Lapce funcionar no Linux: Instalar e abrir um projeto

Instale o Lapce no Linux com o Flatpak ou use um pacote oficial compatível para Arch, Debian, Ubuntu ou Fedora. Em seguida, abra o editor e seu projeto.

Como executar um servidor Ampache no Ubuntu Server

Como executar um servidor Ampache no Ubuntu Server

Instale o Ampache 8 no Ubuntu Server 26.04 com Apache, PHP 8.5 e MariaDB, depois crie um catálogo de músicas e proteja o streaming remoto com HTTPS.

Como criar uma ISO personalizada do Ubuntu com o Cubic

Como criar uma ISO personalizada do Ubuntu com o Cubic

Transforme uma imagem oficial do Ubuntu em um instalador reutilizável com o Cubic. Verifique a ISO de origem, adicione pacotes e configurações, gere a imagem e grave-a em um pendrive.

Como executar programas do Ubuntu no Fedora Linux com o Distrobox

Como executar programas do Ubuntu no Fedora Linux com o Distrobox

Configure um ambiente Ubuntu Distrobox no Fedora para instalar pacotes APT, executar ferramentas de linha de comando e iniciar aplicativos gráficos compatíveis a partir do menu de aplicativos do Fedora.

Como instalar o Tuxedo OS no seu PC

Como instalar o Tuxedo OS no seu PC

Baixe a versão atual da ISO do TUXEDO OS, verifique-a, crie um USB inicializável e instale o sistema seguindo as instruções claras sobre a Inicialização Segura e as opções de disco.

Como criar máquinas virtuais no Ubuntu Server com o Cockpit

Como criar máquinas virtuais no Ubuntu Server com o Cockpit

Instale o Cockpit e seu complemento Machines no Ubuntu Server, escolha uma imagem ISO, atribua recursos à máquina virtual e conclua a configuração do sistema operacional no seu navegador.

Como configurar uma montagem NFS em um servidor Linux com o Cockpit

Como configurar uma montagem NFS em um servidor Linux com o Cockpit

Monte uma exportação NFS existente a partir da página de Armazenamento do Cockpit, escolha um caminho local e as opções de inicialização ou somente leitura e, em seguida, verifique o compartilhamento no Linux.

Como usar o gerenciador de pacotes Nala no Ubuntu

Como usar o gerenciador de pacotes Nala no Ubuntu

Instale o Nala a partir dos repositórios do Ubuntu e, em seguida, use-o para pesquisar, instalar, remover e atualizar pacotes com resumos de transações claros.