Tutorial de configuração de rede NetPlan para iniciantes

Tutorial de configuração de rede NetPlan para iniciantes

NetPlan é um utilitário desenvolvido pela Canonical, a empresa por trás do Ubuntu. Ele fornece uma abstração de configuração de rede sobre o sistema "back -end" atualmente suportado (ou "renderizador" na terminologia do NetPlan): Networkd e Gerente da rede. Usando o NetPlan, as interfaces de rede física e virtual são configuradas via Yaml arquivos que são traduzidos para configurações compatíveis com o back -end selecionado.

No Ubuntu 20.04 NetPlan substitui o método tradicional de configurar interfaces de rede usando o /etc/rede/interfaces arquivo; O objetivo é tornar as coisas mais fáceis e centralizadas (a maneira antiga de configurar interfaces ainda pode ser usada: verifique nosso artigo sobre como trocar de rede de volta para/etc/network/interfaces no Ubuntu 20.04 fossa focal linux). Neste artigo, aprenderemos os princípios básicos por trás da concessionária e, exatamente como um exemplo, como podemos usá -lo para configurar um endereço IPv4 estático para uma interface de rede.

Neste tutorial, você aprenderá:

  • A estrutura básica dos arquivos de configuração YAML usados ​​pelo NetPlan
  • Como criar uma regra simples para atribuir um IP estático a uma interface de rede
  • Como aplicar configurações usando gerar, tentar e aplicar Subcomando
Tutorial de configuração de rede NetPlan para iniciantes

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Ubuntu 20.04 (fossa focal)
Programas NetPlan (instalado por padrão)
Outro Permissões raiz para modificar arquivos de configuração
Convenções # - requer que os comandos linux -comidos sejam executados com privilégios de raiz diretamente como usuário root ou por uso de sudo comando
$-exige que o Linux-Commands seja executado como um usuário não privilegiado regular

Arquivos de configuração do NetPlan

Existem três locais nos quais os arquivos de configuração do NetPlan podem ser colocados; Em ordem de prioridade, eles são:

  1. /RUN/NETPLAN
  2. /etc/netplan
  3. /lib/netplan
Visão geral do design do NetPlan

Dentro de cada um desses diretórios, as configurações são criadas usando arquivos com o .Yaml extensão que são processados ​​em Lexicográfico ordem, independentemente do diretório em que estão.

A prioridade do diretório tem uma função apenas quando existem arquivos com o mesmo nome: nesses casos, apenas o arquivo contido no diretório com a prioridade mais alta é analisado.

Se um boleano ou escalar O parâmetro é definido em mais de um arquivo de configuração, ele assumirá o valor definido no último arquivo que é analisado; Se os valores forem Sequências, Em vez disso, eles são concatenados.

Os usuários devem colocar suas configurações dentro do /etc/netplan diretório; Por padrão, o único arquivo presente em um novo Ubuntu 20 instalado 20.04 Sistema é /etc/netplan/01-Network-manager-all.Yaml. Na próxima seção, veremos as instruções que ele contém e qual é o significado deles.

O/etc/netplan/01-Network-gerente-all.arquivo yaml

O único arquivo de configuração existente /etc/netplan/ Diretório em um novo Ubuntu 20 instalado.04 Sistema é 01-NETWORK-MANAGE-ALL.Yaml. Vamos dar uma olhada em seu conteúdo:

# Deixe o NetworkManager gerenciar todos os dispositivos nesta rede do sistema: versão: 2 Renderizador: NetworkManager 

Conforme sugerido pelo comentário no arquivo, a configuração deve definir todas as interfaces de rede no sistema a ser gerenciado pelo Gerente da rede renderizador. Podemos observar que as diretivas são recuadas dentro do nó principal, rede. Como estamos lidando com arquivos YAML, o recuo é crucial.

Outras duas palavras -chave que podemos encontrar no arquivo são versão e renderizador: o primeiro especifica a versão de sintaxe em uso, este último o sistema Processo interno (Networkd vs Gerente da rede).

Na próxima seção deste tutorial, criaremos um exemplo de configuração um pouco mais complexo, e nós o usaremos para atribuir um endereço IPv4 estático a uma interface de rede.

Um exemplo de configuração - definindo um endereço IPv4 estático

O arquivo de configuração que vimos acima é bastante básico; Vamos tentar algo um pouco mais complexo e ver como podemos configurar um endereço IPv4 estático usando NetPlan.

A primeira coisa que devemos fazer é criar um novo arquivo de configuração, para ser analisado após o padrão: vamos chamá -lo /etc/netplan/02-static-ip.Yaml. Dentro do arquivo, criamos uma regra para corresponder à interface (s) de rede que queremos configurar: podemos realizar a tarefa usando o corresponder estrofe.

Dentro de corresponder Seção, podemos selecionar uma série de interfaces físicas na base do valor das propriedades especificadas. Para que as configurações sejam aplicadas, todas as propriedades devem ser correspondidas pela regra.

No arquivo de configuração, escrevemos:

# Definir endereço IP estático para ENP1S0 Rede de interface: Versão: 2 Renderizador: NetworkManager Ethernets: ID0: Match: Nome: ENP1S0 DHCP4: False Endereços: - 192.168.122.250/24 Nome -Servers: Endereços: - 192.168.122.1 Gateway4: 192.168.122.1 

Vamos dar uma olhada nas novas instruções que usamos na configuração. Dentro do principal rede Nó, os dispositivos podem ser agrupados por seu tipo:

  • Ethernets
  • wifis
  • pontes


Como em nosso exemplo, lidamos com um dispositivo Ethernet que usamos Ethernets estrofe. Dentro de corresponder Stanza, referenciamos a interface por seu nome: ENP1S0. As regras de correspondência também podem ser baseadas em endereço MAC E, apenas ao usar Networkd como o renderizador, em motorista que é o nome do driver do kernel Linux usado para o (s) dispositivo (s).

Para alcançar a configuração desejada, usamos uma série de diretivas. Como queremos atribuir um endereço estático, desativamos DHCP4 e usou o endereços palavra -chave para associar um endereço IPv4 à interface. Endereço múltiplo pode ser especificado: eles devem ser fornecidos juntamente com a máscara de sub -rede.

Também definimos os endereços do Names Servers na estrofe com o mesmo nome. Finalmente, definimos o endereço IPv4 do gateway que a interface deve usar com o gateway4 palavra -chave.

Simplificando a configuração

A configuração que usamos no exemplo acima pode ser ligeiramente simplificada. Para fazer referência à interface, queremos atribuir o endereço estático a nós usamos o corresponder Stanza, no entanto, poderíamos ter omitido. Como queremos que nossas configurações sejam aplicadas a apenas um dispositivo específico, podemos referenciá -lo diretamente usando seu nome previsível (ENP1S0) como eu ia:

Rede: Versão: 2 Renderizador: NetworkManager Ethernets: ENP1S0: DHCP4: Endereços falsos: - 192.168.122.250/24 Nome -Servers: Endereços: - 192.168.122.1 Gateway4: 192.168.122.1 

Quando o corresponder Stanza é usada, o eu ia (id0 no exemplo anterior) é arbitrário e é usado para fazer referência ao (s) dispositivo (s) configurado (s) de outras seções do arquivo de configuração. Quando o corresponder estrofe é omitida, em vez disso, o eu ia deve corresponder ao nome previsível do dispositivo. Ao trabalhar com dispositivos virtuais, como pontes ou títulos, o eu ia não é usado para fazer referência a uma interface existente, mas representa o nome que deve ser usado quando a interface é criada.

Neste ponto, nossa configuração está pronta; Tudo o que devemos fazer é salvá -lo e testá -lo.

Testando e aplicação de uma configuração de NetPlan

Na seção anterior, vimos como criar uma configuração simples de NetPlan para fornecer um endereço IPv4 estático para uma interface de rede. Agora é hora de testar a configuração, para ver se funciona corretamente. Para atingir nosso objetivo, podemos usar o NetPlan utilidade e o tentar Subcomando.

O tentar Subcomando do NetPlan O utilitário, como o seu nome sugere, é usado para experimentar uma configuração e opcionalmente, role -o de volta se o usuário não o confirmar após um certo período de tempo. O tempo limite padrão é de 120 segundos, mas pode ser alterado usando o --tempo esgotado opção.

Como você pode ver na saída do endereço de IP comando, o endereço IPv4 atual para o ENP1S0 interface é 192.168.122.200:

$ IP Endereço | GREP ENP1S0 2: ENP1S0: MTU 1500 QDISC FQ_Codel UP GRUPO PADRÃO QLEN 1000 INET 192.168.122.200/24 ​​BRD 192.168.122.255 Escopo Global Dinâmico NoprefixRoute ENP1S0 

Vamos aplicar a configuração:

$ sudo netplan tente 

Depois que executamos o comando, o seguinte prompt aparece na tela:

Você quer manter essas configurações? Pressione Enter antes do tempo limite para aceitar as novas alterações de configuração serão revertidas em 120 segundos 

Temos tempo suficiente para muito se o endereço IP da interface foi alterado:

$ IP Endereço | GREP ENP1S0 2: ENP1S0: MTU 1500 QDISC FQ_Codel UP GRUPO PADRÃO QLEN 1000 INET 192.168.122.250/24 BRD 192.168.122.255 Escopo Global Dinâmico NoprefixRoute ENP1S0 


Como podemos ver, o endereço IPv4 mudou conforme o esperado. Nesse caso, no entanto, após o tempo limite expirado, o comando não conseguiu reverter a configuração. Este é um problema conhecido, relatado também na manpra da utilidade. Nesses casos, para reverter completamente para o estado inicial, uma reinicialização deve ser suficiente.

Dois outros comandos podem ser usados:

  • NetPlan Gereate
  • NetPlan se aplica

O NetPlan Gereate O comando converte as configurações nos arquivos YAML em configurações apropriadas ao renderizador em uso, mas não as aplica. Na grande maioria dos casos, não deve ser chamado diretamente: é invocado, por exemplo, por NetPlan se aplica que aplica adicionalmente as alterações sem um tempo limite de "reverter".

Conclusões

Neste tutorial, abordamos o NetPlan, um utilitário desenvolvido pela Canonical, que é ativo por padrão no Ubuntu 20.04 Fossa focal. O objetivo deste utilitário é abstrair configurações para interfaces de rede usando arquivos de configuração da YAML.

Essas configurações são então traduzidas em configurações para o renderizador especificado, como NetworkManager ou Networkd. Neste tutorial, vimos como escrever uma regra simples para definir um endereço IP estático para uma interface de rede, aprendemos alguns dos nós que podem ser usados ​​em arquivos de configuração e vimos como aplicar alterações por meio do NetPlan Tente e NetPlan se aplica comandos. Aqui, mal arranhamos a superfície do que pode ser realizado usando o NetPlan, se você quiser saber mais sobre isso, dê uma olhada no site do NetPlan e na Utility Manpage.

Tutoriais do Linux relacionados:

  • Como impedir a verificação de conectividade do NetworkManager
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Coisas para instalar no Ubuntu 20.04
  • Introdução à YAML com exemplos
  • Mastering Bash Script Loops
  • Como usar redes em ponte com LibVirt e KVM
  • Ubuntu 20.04 truques e coisas que você pode não saber
  • Escolhendo um addon de rede Kubernetes
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux