Configure Endereços IP Estáticos Usando NetworkManager no RHEL/CentOS
Configure um IP estático persistente no RHEL ou CentOS com `nmcli`, incluindo gateway, DNS, ativação e verificações de reversão.
Configure Endereços IP Estáticos Usando NetworkManager no RHEL/CentOS
A rede é uma das primeiras coisas que você precisa acertar em um servidor. No RHEL e CentOS, o NetworkManager pode configurar um endereço IP estático persistente sem editar manualmente os arquivos de interface, o que é mais seguro nas versões mais recentes do Enterprise Linux.
Este guia aborda os comandos nmcli para definir um endereço, gateway e servidores DNS, ativar o perfil e verificar se a alteração sobrevive a uma reinicialização.
Entendendo o NetworkManager e o nmcli
Antes de mergulhar nas etapas de configuração, vamos esclarecer os componentes principais que usaremos:
O que é o NetworkManager?
O NetworkManager é um daemon que gerencia as configurações de rede, facilitando o gerenciamento de conexões de rede. Ele pode gerenciar vários tipos de conexão, incluindo Ethernet, Wi-Fi, banda larga móvel e VPNs. Ele detecta e configura automaticamente os dispositivos de rede e tenta manter uma conexão de rede ativa, alternando entre as conexões disponíveis conforme necessário. Para servidores, ele garante que suas interfaces de rede sejam configuradas corretamente e persistam após as reinicializações.
O que é nmcli?
nmcli é o cliente de linha de comando para o NetworkManager. Ele permite controlar o NetworkManager e configurar conexões de rede a partir do terminal. É particularmente útil em ambientes de servidor headless onde uma interface gráfica não está disponível. Os comandos nmcli são intuitivos e fornecem uma maneira robusta de interagir com toda a gama de recursos do NetworkManager, desde exibir o status do dispositivo de rede até criar e modificar perfis de conexão complexos.
Pré-requisitos
Para seguir este guia, certifique-se de ter:
- Privilégios de Root: Você precisará de acesso
sudoou estar logado como usuário root para fazer alterações na configuração de rede. - Informações do Sistema: O endereço IP estático, máscara de sub-rede (ou notação CIDR), gateway padrão e endereços IP do servidor DNS que você pretende usar.
- Interface de Rede Identificada: Conhecimento do nome da interface de rede (por exemplo,
enp0s3,eth0) que você deseja configurar. Abordaremos como encontrar isso.
Configuração Passo a Passo de um Endereço IP Estático
Aqui está como configurar um endereço IP estático usando nmcli.
Passo 1: Identifique Sua Interface de Rede
Primeiro, você precisa saber o nome da interface de rede que deseja configurar. Você pode listar todos os dispositivos de rede ativos e seus status usando nmcli device ou nmcli device status:
nmcli device status
Exemplo de Saída:
DEVICE TYPE STATE CONNECTION
enp0s3 ethernet connected System enp0s3
lo loopback unmanaged --
Neste exemplo, enp0s3 é nossa interface Ethernet. Anote o nome da sua interface.
Passo 2: Crie um Novo Perfil de Conexão de Rede
Geralmente é uma boa prática criar um novo perfil de conexão para sua configuração de IP estático, em vez de modificar diretamente um gerenciado por DHCP, especialmente se você pode querer reverter facilmente. Um perfil de conexão armazena todas as configurações para uma conexão de rede específica.
Para criar um novo perfil de conexão Ethernet, use o comando nmcli connection add. Você especificará o tipo de conexão, um nome de conexão descritivo (con-name) e o nome da interface (ifname).
sudo nmcli connection add type ethernet con-name my-static-eth ifname enp0s3
type ethernet: Especifica uma conexão Ethernet.con-name my-static-eth: Atribui um nome a este novo perfil de conexão. Escolha algo descritivo.ifname enp0s3: Vincula este perfil de conexão à interface de rede físicaenp0s3.
Alternativa: Modificando um Perfil Existente
Se você preferir modificar uma conexão existente (por exemplo, System enp0s3 da saída nmcli device status), você usaria nmcli connection modify com seu con-name existente.
sudo nmcli connection modify "System enp0s3" # substitua pelo nome da sua conexão
Nota: Para simplificar e clareza, este guia assumirá que você criou um novo perfil de conexão chamado my-static-eth.
Passo 3: Configure as Configurações IPv4 (IP, Gateway, DNS)
Agora, vamos configurar o endereço IP estático, gateway e servidores DNS para nosso perfil de conexão my-static-eth. É crucial definir o método IPv4 como manual para desabilitar o DHCP.
Configurando o Endereço IP e Gateway
Use as propriedades ipv4.addresses e ipv4.gateway. O endereço IP deve estar em notação CIDR (por exemplo, 192.168.1.100/24).
sudo nmcli connection modify my-static-eth ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1
ipv4.addresses 192.168.1.100/24: Define o endereço IP estático como192.168.1.100com uma máscara de sub-rede de 24 bits (255.255.255.0).ipv4.gateway 192.168.1.1: Define o gateway padrão para a rede.
Configurando Servidores DNS
Especifique um ou mais endereços IP do servidor DNS. Separe vários endereços com vírgulas.
sudo nmcli connection modify my-static-eth ipv4.dns "1.1.1.1,8.8.8.8"
Se sua organização executa DNS interno, use esses IPs de resolvedor. Por exemplo, um servidor privado pode usar 192.168.1.10 e 192.168.1.11.
Desabilitar DHCP para IPv4
Defina o método IPv4 como manual; caso contrário, o NetworkManager ainda pode tentar DHCP para este perfil.
sudo nmcli connection modify my-static-eth ipv4.method manual
Se o servidor não deve usar IPv6 nesta conexão, desabilite-o explicitamente:
sudo nmcli connection modify my-static-eth ipv6.method disabled
Faça isso apenas quando sua rede não depender de IPv6.
Passo 4: Ative o Perfil Estático
Ative a nova conexão. Se você estiver trabalhando via SSH, execute isso a partir do acesso ao console ou agende uma reversão antes de alterar a interface ativa.
sudo nmcli connection up my-static-eth
Se um perfil DHCP antigo ainda estiver ativo na mesma interface, desative-o após confirmar que o perfil estático funciona:
sudo nmcli connection down "System enp0s3"
Substitua "System enp0s3" pelo nome real da conexão antiga de nmcli connection show.
Passo 5: Verifique o Endereço, Rota e DNS
Verifique a conexão ativa:
nmcli connection show --active
Confirme o endereço IP:
ip addr show enp0s3
Confirme a rota padrão:
ip route
Você deve ver uma rota semelhante a:
default via 192.168.1.1 dev enp0s3
Verifique as configurações de DNS gerenciadas pelo NetworkManager:
nmcli device show enp0s3 | grep DNS
Em seguida, teste a conectividade real:
ping -c 3 192.168.1.1
ping -c 3 1.1.1.1
getent hosts example.com
O primeiro comando verifica o gateway, o segundo verifica a conectividade IP de saída e o terceiro verifica a resolução DNS.
Alterações Remotas Mais Seguras
Alterações de IP estático podem desconectar sua sessão SSH se você digitar o endereço ou gateway errado. Antes de aplicar o perfil remotamente, mantenha uma segunda sessão aberta e considere agendar uma reversão:
sudo shutdown -r +5 "Reinicialização para reversão de rede"
Se o novo IP estático funcionar, cancele a reinicialização:
sudo shutdown -c
Em sistemas onde uma reinicialização não é aceitável, crie um trabalho at temporário ou use acesso ao console fora de banda para que você possa se recuperar se a rota estiver errada.
Conclusão
Use perfis de conexão nmcli para configuração de IP estático persistente no RHEL e CentOS. O conjunto mínimo de trabalho é ipv4.addresses, ipv4.gateway, ipv4.dns e ipv4.method manual; o fluxo de trabalho mais seguro é ativar o perfil, verificar o comportamento da rota e DNS, e então remover ou desabilitar o perfil DHCP antigo somente depois que o servidor estiver acessível em seu novo endereço.