Como gerenciar conexões de rede Linux da linha de comando

O comando nmcli permite que você aproveite o poder do Linux NetworkManager diretamente da linha de comando, tornando-o perfeito para servidores sem ambiente de desktop e administração remota de shell SSH.

O comando nmcli não é novo, foi lançado em 2010. Junto com o comando ip, ele substitui o venerável, mas obsoleto, ifconfig . Velhos hábitos custam a morrer, e muitos administradores de sistema ainda usam ifconfig . Eles já sabem como usá-lo, não há curva de aprendizado e eles só precisam fazer o trabalho. Então, por que aprender outro instrumento?

Bem, eventualmente, o ifconfig será abandonado pelas distribuições, então é uma mudança que está chegando, quer você goste ou não. Mas nmcli tem alguns truques bacanas que o tornam útil para descobrir o que ele tem a oferecer.

Como todos os comandos da CLI, nmcli aceita parâmetros de linha de comando. Os parâmetros são agrupados em três categorias.

Mas observe que você nem sempre precisa de todos os três conjuntos de parâmetros para cada comando. As seções nmcli são:

  • Ajuda – Fornece breves textos de ajuda sobre comandos ncmcli
  • Geral: Recupera o status e a configuração do NetworkManager
  • Net – consulta, habilita ou desabilita conexões de rede
  • Rádio – Verifique, ative ou desative as conexões de rede Wi-Fi
  • Monitor: monitora o NetworkManager e as alterações do estado da conexão de rede
  • Conexão – Manipule interfaces de rede diretamente, incluindo habilitar e desabilitar, adicionar novas conexões e remover conexões existentes.
  • Dispositivo: Altere os parâmetros do dispositivo de rede e conecte ou desconecte um dispositivo de uma conexão existente
  • Secret : Registra o nmcli como um agente secreto do NetworkManager. Como o nmcli faz isso automaticamente, raramente é usado.

índice

  1. Introdução ao nmcli
  2. Entendendo o encanamento
    1. Adicionar conexões de rede
    2. Ajuste as conexões
  3. gerenciamento de dispositivo
    1. Ver detalhes do dispositivo
    2. O editor interativo nmcli
  4. Há muito mais para o homem

Introdução ao nmcli

Vamos garantir que o NetworkManager esteja instalado, em execução e que possamos nos conectar com nmcli . Usaremos a ação de status da seção general .

 estado geral do nmcli

Na verdade, estado é a ação padrão para general, então poderíamos ter deixado essa palavra fora de controle. Mas verificamos nmcli E então NetworkManager – está instalado e operacional. Vamos descobrir mais sobre este computador.

Podemos listar todos os perfis de conexão de rede na memória e no disco usando a ação show da seção de conexão:

 show de conexão nmcli 

A saída é maior que a janela do terminal. Nossos resultados foram:

 NAME UUID TYPE DEVICE Wired connection 1 d2864443-9cee-31ec-ab2e-55e9ebddd53e ethernet enp0s3 ethernet-enp0s8 9aad8efa-3427-4a5c-bef5-270340cd33d0 ethernet enp0s8 ethernet-enp0s9 5bc49cef-bc3d-4832-9073-460b408932b6 ethernet enp0s9

A máquina de teste usada para este artigo está executando uma versão de pré-lançamento do Ubuntu 21.10. Ele possui três adaptadores de rede instalados dentro dele, chamados enp0s3 , enp0s8 e enp0s9 .

Entendendo o encanamento

Uma conexão de rede permite que seu computador se comunique pela rede com outro dispositivo. Internamente, nmcli contém todas as informações sobre uma conexão de rede em um objeto de dados que ele chama de conexão.

Uma conexão nmcli encapsula todas as informações sobre essa conexão, incluindo a camada de enlace de dados e as informações de endereçamento IP. Você pode pensar em nmcli como os detalhes de configuração para conexões de rede do mundo real.

Para alcançar o mundo exterior, uma conexão deve usar um dispositivo de interface de rede, como uma placa de rede. Uma conexão está associada a um dispositivo. Quando um dispositivo está ativo e capaz de receber ou transmitir dados, diz- up que a conexão está active ou ativa. O estado inativo correspondente é, obviamente, chamado de inactive ou down .

Adicionar conexões de rede

Com nmcli você pode criar uma conexão de rede e definir algumas de suas opções de configuração com um único comando. Neste computador de teste, não há conexão enp0s8 , o nome da nossa conexão com fio (ethernet) número 2. Adicionaremos uma conexão a enp0s8 . À medida que fazemos alterações no sistema, precisaremos usar sudo :

 sudo nmcli connection add type ethernet ifname enp0s8 

Este comando usa a seção de ação add connection . Usamos a opção type para solicitar uma conexão ethernet e o ifname (nome da interface) para especificar o dispositivo de interface de rede que queremos usar com essa conexão.

Vamos ver o que aconteceu:

 show de conexão nmcli 

 NAME UUID TYPE DEVICE Wired connection 1 d2864443-9cee-31ec-ab2e-55e9ebddd53e ethernet enp0s3 ethernet-enp0s8 9aad8efa-3427-4a5c-bef5-270340cd33d0 ethernet enp0s8 ethernet-enp0s9 5bc49cef-bc3d-4832-9073-460b408932b6 ethernet enp0s9 ethernet-enp0s8- 1 b874aa09-3a25-4f52-b20b-1b95d9741be9 ethernet--

Nossa nova conexão, ethernet-enp0s8-1 , foi criada. Seu identificador universal exclusivo (UUID) foi atribuído e o tipo de conexão é Ethernet. Agora podemos ativá-lo com o comando up . O comando up deve ser seguido pelo nome da conexão ou seu UUID:

 conexão nmcli ethernet-enp0s8-1 

Vamos verificar nossas conexões ativas mais uma vez:

 nmcli connection show --active 

 NAME UUID TYPE DEVICE Wired connection 1 d2864443-9cee-31ec-ab2e-55e9ebddd53e ethernet enp0s3 ethernet-enp0s8-1 b874aa09-3a25-4f52-b20b-1b95d9741be9 ethernet enp0s8 ethernet-enp0s9 5bc49cef-bc3d-4832-9073-460b408932b6 ethernet enp0s9

Nossa nova conexão ethernet-enp0s8-1 agora está ativa e vinculada ao dispositivo de interface de rede enp0s8 .

Ajuste as conexões

Obviamente, ncmli também permite modificar os parâmetros das conexões existentes. Suponha que você queira alterar uma interface de rede do protocolo DHCP (Dynamic Host Configuration Protocol) para usar um endereço IP estático. Para corresponder à nossa rede, precisamos de um endereço IP fixo de 192.168.1.40 para nossa nova conexão.

Para conseguir isso, é necessário emitir dois comandos. Um para definir o endereço IP e outro para definir o método de conexão para obter um endereço IP no manual:

 conexão nmcli modificar ethernet-enp0s8-1 ipv4.address 192.168.1.40/24
 conexão nmcli modificar ethernet-enp0s8-1 manual do método ipv4. 

O "/24" que fornecemos com o endereço IP é a máscara de sub-rede no Classless Inter-Domain Routing (CIDR). Neste contexto, "/24" significa "255.255.255.0".

As alterações não terão efeito até que a conexão seja "devolvida". Ou seja, desativado e reconectado. O primeiro comando interrompe a conexão e o segundo a restaura.

 conexão nmcli para baixo ethernet-enp0s8-1
 conexão nmcli ethernet-enp0s8-1 

Se você deseja cancelar a alteração e passar de um endereço IP estático para um endereço IP DHCP, use o botão de opção auto em vez de manual .

 conexão nmcli modificar ethernet-enp0s8-1 ipv4.method auto

gerenciamento de dispositivo

O device nmcli contém ações (comandos) que permitem gerenciar as interfaces de rede instaladas em seu computador. Para ver o status de todas as interfaces de rede em seu computador, use:

 status do dispositivo nmcli 

Ver detalhes do dispositivo

Para examinar os detalhes de uma interface de rede, usamos a seção show action of device . Se você não fornecer um nome de dispositivo, os detalhes de todos os dispositivos serão recuperados e exibidos. Você pode rolar para cima e para baixo para revisá-los.

Vamos dar uma olhada em enp0s8 , o dispositivo usado por nossa nova conexão. Podemos verificar se o endereço IP em uso é o endereço que solicitamos anteriormente.

 dispositivo nmcli mostra enp0s8 

 GENERAL.DEVICE: enp0s8 GENERAL.TYPE: ethernet GENERAL.HWADDR: 08:00:27:79:A7:68 GENERAL.MTU: 1500 GENERAL.STAT: 100 (conectado) GENERAL.CONNECTION: ethernet-enp0s8-1 GENERAL.CON -CAMINHO: /org/freedesktop/NetworkManager/ActiveConnection/8 WIRED-PROPERTIES.CARRIER: em IP4.ADDRESS[1]: 192.168.1.40/24 IP4.GATEWAY: -- IP4.ROUTE[1]: dst = 192.168.1.0 /24, nh = 0.0.0.0, mt = 102 IP6.ADDRESS[1]: fe80::3241:457d:cd1c:2436/64 IP6.GATEWAY: -- IP6.ROUTE[1]: dst = fe80::/ 64, nh = ::, mt = 102

Uma tela de informações nmcli é retornada. Alguns dos itens mais úteis são:

  • DEVICE : O nome do dispositivo que estamos examinando.
  • GENRE : O tipo de conexão que este dispositivo usa.
  • HWADDR : O endereço MAC da placa de interface.
  • STATUS – Se este dispositivo tem uma conexão ativa.
  • IP ADDRESS4[1] : Endereço IP e máscara de sub-rede para este dispositivo.
  • CONEXÃO – O nome da conexão usada por este dispositivo.

O editor interativo nmcli

Embora nmcli seja uma ferramenta de linha de comando, ele possui um editor interativo básico. A ação de edição na seção de conexão abre o editor interativo na conexão que você passa na linha de comando:

 edição de conexão nmcli ethernet-enp0s8-1 

Algum texto de ajuda é impresso na tela e você é apresentado com o prompt "nmcli>".

Se você digitar print e pressionar "Enter", o nmcli listará todas as propriedades associadas à conexão. Existem muitos. Você pode percorrê-los para examiná-los.

 imprimir 

Informamos que nossa conexão usa DHCP. Usaremos a configuração "ipv4". Para fazer isso, precisamos "ir" para as configurações de IPv4.

 vá para ipv4 

A propriedade que queremos alterar é method . Queremos defini-lo como automático.

 definir método automático 

Veja a seguinte mensagem:

 Você também deseja limpar 'ipv4.addresses'? [E isso é]:

Se você não remover o endereço IP, na próxima vez que você configurar essa conexão para usar um endereço IP estático, ela usará o que você configurou anteriormente. Se você excluí-lo, precisará definir um novo endereço IP se alterar essa conexão usando um endereço IP estático. Digite "s" ou apenas pressione "Enter" para removê-lo. Digite “no” e pressione “Enter” para mantê-lo.

Precisamos salvar nossas alterações:

 Salve  

Digite "exit" para sair do editor interativo. Se você não quiser sair, digite "back" para retornar ao nível principal e continuar usando o editor.

Há muito mais para o homem

O comando nmcli pode fazer muito mais. Tem muitos parâmetros e opções de linha de comando. Tantos, de fato, que sua página de manual chega a mais de 1200 linhas. Confira-os para ver o que nmcli pode fazer por você.

E, claro, se você gerencia conexões de rede remotamente, não desative a conexão à qual está conectado. Nunca é divertido.

  • O que são permissões de arquivo no Linux e como posso garantir que as minhas sejam seguras?
  • Como redimensionar contêineres do Docker entre servidores usando o Kubernetes

descubra mais conteúdo

O que é um amplificador integrado?

Google Pixel Watch também tem detecção de queda, mas não até o próximo ano

As melhores xícaras de café aquecidas de 2022

Como automatizar seu iPhone com base na hora, atividade ou localização

"Isso deve ter sido antes do meu tempo"

Por que a NASA enviou Snoopy para a Lua? – Revisão Geek

Deixe uma resposta Cancelar resposta

Como conhecer a rede no Linux?

O comando Netstat é usado para examinar conexões de rede , tabelas de roteamento e várias configurações e estatísticas de rede . Ele usa o sinalizador -i para listar as interfaces de rede em seu sistema. Usar o sinalizador -r mostrará a tabela de roteamento. Isso mostra a rota configurada para enviar pacotes de rede .

Como criar uma rede no Linux?

configurar rede no linux

  1. 1 Altere o nome do host.
  2. 2 Faça com que tenha internet do virtualhost.
  3. 3 Renove o IP.
  4. 4 Abra a interface de rede .
  5. 5 Reinicie o serviço de rede .
  6. 6 Configure o proxy no Centos.
  7. 7 Permitir conexões TCP no firewall Centos.

Como são chamadas as interfaces de rede no Linux?

As interfaces de rede no Linux geralmente são chamadas de eth (eth0, eth1, etc.).

Como saber o IP da minha rede no Linux?

Praticamente, o Linux fornece um comando chamado ipy e tem uma opção chamada addr (endereço). Digite ip – espaço – addr. E pressione Enter. Na seção inferior da saída, você encontrará seu endereço IP .

Ir arriba