Ubuntu é um sistema operacional incrível, faz muito tempo que não trabalho com servidor Ubuntu e não fazia sentido atualizar meu Desktop da versão estável. E não faz muito tempo tive que lidar com a última versão do servidor Ubuntu 18.04, minha surpresa não teve limites quando percebi que estava infinitamente atrasado e não conseguia configurar uma rede porque o bom e velho sistema para configurar interfaces de rede por editar o arquivo /etc/network /interfaces foi por água abaixo. E o que veio para substituí-lo? algo terrível e à primeira vista completamente incompreensível, conheça “Netplan”.
Os arquivos de configuração estão localizados no caminho /etc/netplan/filename.yaml, entre cada bloco deve haver + 2 espaços.
1) O cabeçalho padrão é assim:
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4:no
Vejamos o que fizemos agora:
- rede: - este é o início do bloco de configuração.
- renderizador: networkd - aqui indicamos o gerenciador de rede que usaremos, é networkd ou NetworkManager
- versão: 2 - aqui, pelo que entendi, está a versão YAML.
- ethernets: - este bloco indica que iremos configurar o protocolo ethernet.
- enps0f0: — indica qual adaptador de rede iremos configurar.
- dhcp4:no - desabilita DHCP v4, para 6 v6 dhcp6 respectivamente
2) Vamos tentar atribuir endereços IP:
enp3s0f0:
dhcp4:no
macaddress: bb:11:13:ab:ff:32
addresses: [10.10.10.2/24, 10.10.10.3/24]
gateway4: 10.10.10.1
nameservers:
addresses: 8.8.8.8
Aqui configuramos o servidor poppy, ipv4, gateway e dns. Observe que se precisarmos de mais de um endereço IP, então os escrevemos separados por vírgulas e com um espaço obrigatório depois.
3) E se precisarmos
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
- bonds: - um bloco explicando que iremos configurar o bonding.
- bond0: - nome de interface arbitrário.
- interfaces: - um conjunto de interfaces coletadas em um bond-ding, “como dito anteriormente, se houver vários parâmetros, nós os descrevemos entre colchetes”.
- parâmetros: — descreve o bloco de configurações de parâmetros
- modo: — especifique o modo pelo qual a ligação funcionará.
- mii-monitor-interval: — defina o intervalo de monitoramento para 1 segundo.
Dentro do bloco denominado bond, você também pode configurar parâmetros como endereços, gateway4, rotas, etc.
Adicionamos redundância para nossa rede, agora só falta instalar
vlans:
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
gateway: 10.10.10.1
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
- vlans: — declara o bloco de configuração vlan.
- vlan10: — nome arbitrário da interface vlan.
- id: — tag da nossa vlan.
- link: — interface através da qual a vlan estará acessível.
- rotas: — declara um bloco de descrição de rota.
- — para: — definir o endereço/sub-rede para o qual a rota é necessária.
- via: — especifique o gateway através do qual nossa sub-rede estará acessível.
- on-link: — indicamos que as rotas devem ser sempre registradas quando o link for criado.
Preste atenção em como coloco os espaços; isso é muito importante no YAML.
Então descrevemos as interfaces de rede, criamos vínculos e até adicionamos vlans. Vamos aplicar nossa configuração, o comando netplan apply irá verificar se há erros em nossa configuração e aplicá-la se for bem-sucedido. Em seguida, a configuração será levantada por conta própria quando o sistema for reinicializado.
Depois de coletar todos os blocos de código anteriores, obtivemos isso:
network:
version: 2
renderer: networkd
ethernets:
enp3s0f0:
dhcp4: no
ensp3s0f1:
dhcp4: no
bonds:
bond0:
dhcp4: no
interfaces: [enp3s0f0, enp3s0f1]
parameters:
mode: 802.3ad
mii-monitor-interval: 1
vlan10:
id: 10
link: bond0
dhcp4: no
addresses: [10.10.10.2/24]
routes:
- to: 10.10.10.2/24
via: 10.10.10.1
on-link: true
vlan20:
id: 20
link: bond0
dhcp4: no
addresses: [10.10.11.2/24]
gateway: 10.10.11.1
nameserver:
addresses: [8.8.8.8]
Agora que nossa rede está pronta para funcionar, tudo acabou não sendo tão assustador quanto parecia a princípio e o código ficou muito bonito e legível. PC obrigado pelo netplan existe um excelente manual no link
Fonte: habr.com