Pesquisa de site

Configure a rede no AlmaLinux 8, CentOS 8 ou Rocky Linux 8 com o comando nmcli (20 exemplos)


Nesta página

  1. Pré-requisitos
  2. 1. Verifique o status do NetworkManager
  3. 2. Verifique todos os dispositivos disponíveis
  4. 3. Verifique a conexão ativa
  5. 4. Exibir informações sobre a conexão Ethernet
  6. 5. Alterar a diretiva \Conectar automaticamente
  7. 6. Alterar Diretiva BOOTPROTO de Conexão de Rede
  8. 7. Desativar endereço IPv6 com nmcli
  9. 8. Adicionar servidor DNS à conexão existente
  10. 9. Remova o servidor DNS da conexão existente
  11. 10. Adicionar/editar conexão interativamente
  12. 11. Monitorar atividade de conexão
  13. 12. Crie uma nova conexão com IP estático
  14. 13. Criar uma nova conexão com DHCP
  15. 14. Ative uma nova conexão
  16. 15. Desativar uma conexão
  17. 16. Excluir uma conexão
  18. 17. Alterar nome do host com nmcli
  19. 18. Alterar a Diretiva DEFROUTE
  20. 19. Reinicie a conexão Ethernet
  21. 20. ajuda nmcli
  22. Conclusão

O nmcli é uma ferramenta de linha de comando que pode ser usada para controlar o NetworkManager. Esta ferramenta irá ajudá-lo a exibir o status do dispositivo de rede, criar, editar, ativar/desativar, excluir conexões de rede e também solucionar problemas de rede em seu sistema Linux. É muito útil para servidores e máquinas sem cabeça para controlar as conexões de todo o sistema.

Neste tutorial, mostraremos como usar o comando nmcli para controlar as conexões de rede com exemplos.

Pré-requisitos

  • Um servidor rodando AlmaLinux 8, CentOS 8 ou Rocky Linux 8.
  • Uma senha root é configurada em seu servidor.

1. Verifique o status do NetworkManager

Para verificar se o Network Manager está em execução ou não, use o seguinte comando:

nmcli -t -f RUNNING general

Você deve ver a seguinte saída:

running

Para obter um status geral, execute o seguinte comando:

nmcli general

Você deve ver a seguinte saída:

STATE      CONNECTIVITY  WIFI-HW  WIFI     WWAN-HW  WWAN    
connected  full          enabled  enabled  enabled  enabled 

2. Verifique todos os dispositivos disponíveis

Você pode exibir todos os dispositivos disponíveis em seu sistema, execute o seguinte comando:

nmcli dev status

Você deve ver a seguinte saída:

DEVICE  TYPE      STATE      CONNECTION  
eth0    ethernet  connected  System eth0 
eth1    ethernet  connected  System eth1 
lo      loopback  unmanaged  --      

3. Verifique a conexão ativa

Para listar todas as conexões ativas em seu sistema, execute o seguinte comando:

nmcli con show

Você deve obter a seguinte saída:

NAME         UUID                                  TYPE      DEVICE 
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
System eth1  9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  eth1

4. Exibir informações sobre a conexão Ethernet

Você pode exibir as informações resumidas sobre a conexão ethernet usando o seguinte comando:

nmcli con show "System eth0"

Você deve obter a seguinte saída:

connection.id:                          System eth0
connection.uuid:                        5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
connection.stable-id:                   --
connection.type:                        802-3-ethernet
connection.interface-name:              eth0
connection.autoconnect:                 yes
connection.autoconnect-priority:        0
connection.autoconnect-retries:         -1 (default)
connection.multi-connect:               0 (default)
connection.auth-retries:                -1
connection.timestamp:                   1588217245
connection.read-only:                   no
connection.permissions:                 --
connection.zone:                        --
connection.master:                      --
connection.slave-type:                  --
connection.autoconnect-slaves:          -1 (default)
connection.secondaries:                 --
connection.gateway-ping-timeout:        0
connection.metered:                     unknown
cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep BOOTPROTO
BOOTPROTO=dhcp

5. Alterar a diretiva “Conectar automaticamente”

Por padrão, todas as conexões ethernet serão conectadas automaticamente. Você pode desativá-lo com o seguinte comando:

nmcli con mod "System eth1" connection.autoconnect no

Você pode verificar as alterações com o seguinte comando:

cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep ONBOOT

Você deve ver a seguinte saída:

ONBOOT=no

6. Alterar a diretiva BOOTPROTO de conexão de rede

Você pode alterar a diretiva BOOTPROTO da conexão ethernet de estática para DHCP usando o seguinte comando:

nmcli con mod "System eth1" ipv4.method auto

Agora você pode verificar as alterações com o seguinte comando:

cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep BOOTPROTO

Você deve ver a seguinte saída:

BOOTPROTO=dhcp

Para alterar a diretiva BOOTPROTO da conexão ethernet estática para DHCP para estática usando o seguinte comando:

nmcli con mod "System eth1" ipv4.method manual ipv4.address 192.168.0.10/24 ipv4.gateway 192.168.0.1

7. Desative o endereço IPv6 com nmcli

Por padrão, as conexões IPv6 e IPv4 são habilitadas no CentOS 8. Você pode desabilitar a conexão IPv6 com o seguinte comando:

nmcli con mod "System eth1" ipv6.method ignore

8. Adicionar servidor DNS à conexão existente

Para adicionar um novo servidor DNS a uma conexão existente com o seguinte comando:

nmcli con mod "System eth1" ipv4.dns 8.8.4.4

Você pode verificar as alterações com o seguinte comando:

cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep DNS

Saída:

DNS1=8.8.4.4

Você também pode anexar um novo servidor DNS usando a opção +ipv4.dns:

nmcli con mod "System eth1" +ipv4.dns 4.4.4.4

9. Remova o servidor DNS da conexão existente

Para remover o único servidor DNS da conexão, execute o seguinte comando:

nmcli con mod "System eth1" -ipv4.dns 8.8.4.4

Para remover os vários servidores DNS da conexão, execute o seguinte comando:

nmcli con mod "System eth1" -ipv4.dns 8.8.4.4,8.8.2.2

10. Adicionar/editar conexão interativamente

Você também pode criar uma nova conexão ou editar uma conexão existente usando um editor interativo.

Por exemplo, edite uma conexão existente, execute o seguinte comando:

nmcli con edit "System eth1"

Você deve ver a seguinte saída:

===| nmcli interactive connection editor |===

Editing existing '802-3-ethernet' connection: 'System eth1'

Type 'help' or '?' for available commands.
Type 'print' to show all the connection properties.
Type 'describe [.]' for detailed property description.

You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, sriov, ethtool, match, ipv4, ipv6, tc, proxy
nmcli> 

Agora, exiba um endereço IP existente, execute o seguinte comando:

nmcli> print ipv4.address

Saída:

ipv4.addresses: 192.168.0.10/32

Para definir um novo endereço IP, execute o seguinte comando:

nmcli> set ipv4.address 192.168.0.11

Você pode verificar e salvar a conexão com o seguinte comando:

nmcli> verify

Saída:

Verify connection: OK
nmcli> save

Saída:

Connection 'System eth1' (9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04) successfully updated.

Agora você pode verificar a conexão salva com o seguinte comando:

cat /etc/sysconfig/network-scripts/ifcfg-eth1 | grep IPADDR

Você deve ver a seguinte saída:

IPADDR=192.168.0.10
IPADDR1=192.168.0.11

11. Monitore a atividade de conexão

Você também pode monitorar a atividade do NetworkManager usando o nmcli, como mudanças no estado da conexão, perfis, dispositivos, etc.

Após modificar a conexão ethernet, execute o seguinte comando para monitorá-la:

nmcli con monitor "System eth1"

12. Crie uma nova conexão com IP estático

Você também pode criar uma nova conexão Ethernet estática com nmcli. Por exemplo, crie uma nova conexão ethernet chamada eth2, IP 192.168.0.12/24, Gateway 192.168.0.1, \onboot=yes\ executando o seguinte comando:

nmcli con add con-name eth2 type ethernet ifname eth2 ipv4.method manual ipv4.address 192.168.0.15/24 ipv4.gateway 192.168.0.1

Você deve ver a seguinte saída:

Connection 'eth2' (cefb3f7d-424c-42f8-b4e8-ed54e7dcb880) successfully added.

Agora, verifique a conexão com o seguinte comando:

nmcli con

Saída:

NAME         UUID                                  TYPE      DEVICE 
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
System eth1  9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  eth1   
eth2         cefb3f7d-424c-42f8-b4e8-ed54e7dcb880  ethernet  eth2 

13. Crie uma nova conexão com DHCP

Você também pode criar uma nova conexão DHCP com nmcli. Por exemplo, crie uma nova conexão ethernet DHCP chamada eth3 com o seguinte comando:

nmcli con add con-name eth3 type ethernet ifname eth3 ipv4.method auto

Você deve ver a seguinte saída:

Connection 'eth3' (ff54dbd6-255d-4935-abc8-73773bef5b55) successfully added.

14. Ative uma nova conexão

Para ativar a nova conexão ethernet eth2, execute o seguinte comando:

nmcli con up eth2

Você deve ver a seguinte saída:

Connection successfully activated

Agora você pode verificar a conexão ativa com o seguinte comando:

nmcli con show --active

Você deve ver a seguinte saída:

Saída:

NAME         UUID                                  TYPE      DEVICE 
System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  ethernet  eth0   
System eth1  9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04  ethernet  eth1   
eth2         cefb3f7d-424c-42f8-b4e8-ed54e7dcb880  ethernet  eth2 

15. Desative uma conexão

Para desativar a conexão eth2, execute o seguinte comando:

nmcli con down eth2

16. Excluir uma conexão

Você também pode excluir uma conexão ethernet específica com nmcli.

Por exemplo, para excluir uma conexão eth2, execute o seguinte comando:

nmcli con del eth2

Você deve ver a seguinte saída:

Connection 'eth2' (cefb3f7d-424c-42f8-b4e8-ed54e7dcb880) successfully deleted.

17. Altere o nome do host com nmcli

Para encontrar o nome do host atual do seu sistema, execute o seguinte comando:

nmcli general hostname

Você deve ver a seguinte saída:

centos8

Em seguida, altere o nome do host de centos8 para Linux usando o seguinte comando:

nmcli general hostname linux

Em seguida, verifique o nome do host com o seguinte comando:

nmcli general hostname

Você deve ver a seguinte saída:

linux

18. Alterar a Diretiva DEFROUTE

A diretiva DEFROUTE é usada para desabilitar e habilitar o gateway padrão de sua conexão ethernet.

Para habilitar a diretiva DEFROUTE para eth2 execute o seguinte comando:

nmcli con mod "System eth2" ipv4.never-default yes

19. Reinicie a conexão Ethernet

Você pode reiniciar ou recarregar sua conexão ethernet com o seguinte comando:

nmcli con reload

20. ajuda nmcli

Para obter mais informações sobre o comando nmcli, execute o seguinte comando:

nmcli --help

Você deve ver a seguinte saída:

Usage: nmcli [OPTIONS] OBJECT { COMMAND | help }

OPTIONS
  -a, --ask                                ask for missing parameters
  -c, --colors auto|yes|no                 whether to use colors in output
  -e, --escape yes|no                      escape columns separators in values
  -f, --fields <field,...>|all|common      specify fields to output
  -g, --get-values <field,...>|all|common  shortcut for -m tabular -t -f
  -h, --help                               print this help
  -m, --mode tabular|multiline             output mode
  -o, --overview                           overview mode
  -p, --pretty                             pretty output
  -s, --show-secrets                       allow displaying passwords
  -t, --terse                              terse output
  -v, --version                            show program version
  -w, --wait                      set timeout waiting for finishing operations

OBJECT
  g[eneral]       NetworkManager's general status and operations
  n[etworking]    overall networking control
  r[adio]         NetworkManager radio switches
  c[onnection]    NetworkManager's connections
  d[evice]        devices managed by NetworkManager
  a[gent]         NetworkManager secret agent or polkit agent
  m[onitor]       monitor NetworkManager changes

Conclusão

No guia acima, aprendemos como usar o nmcli para gerenciar e controlar conexões ethernet em clones RHEL 8 como AlmaLinux, centOS ou Rocky Linux. Espero que agora você possa adicionar, editar ou criar facilmente uma nova conexão com o nmcli. Sinta-se à vontade para me perguntar se tiver alguma dúvida.

Artigos relacionados: