IP estático no Ubuntu, usando o Netplan
Desenvolvido pela Canonical, o Netplan é um utilitário de linha de comando, disponível a partir do Ubuntu 18.04 LTS, que permite configurar facilmente a rede em um sistema linux. Você simplesmente cria uma descrição YAML das interfaces de rede necessárias e o que cada uma deve ser configurada para fazer. Neste artigo veremos como implementar um endereço IPv4 estático.
Referências
| <ethX>: Interface IP nativa (ex: ens18) |
| <EnderecoIP>: Endereço IPv4 de seu Ubuntu (ex: 192.168.9.20) |
| <MascaraRede>: Máscara de rede utilizada (ex: 255.255.255.0 ou /24) |
| <DominioRede>: Nome de seu domínio (ex: ENGESIS.intra) |
| <Gateway>: Endereço IP do seu gateway de rede (ex: 192.168.9.1) |
| <DNS1>: Endereço IP do DNS principal da rede (ex: 192.168.9.1) |
| <DNS2>: IP de um DNS público (ex: 1.1.1.1) |
| <DNS3>: IP de um DNS público (ex: 1.0.0.1) |
Identifique sua interface de rede
Estando no terminal e logado com usuário root, digite o seguinte comando:
lshw -C network
A saída deve ser semelhante ao conteúdo a seguir:
*-network
description: Ethernet controller
product: Virtio network device
vendor: Red Hat, Inc.
physical id: 12
bus info: pci@0000:00:12.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: msix bus_master cap_list rom
configuration: driver=virtio-pci latency=0
resources: irq:10 ioport:f0e0(size=32) memory:fea53000-fea53fff memory:fd608000-fd60bfff memory:fea00000-fea3ffff
*-virtio2
description: Ethernet interface
physical id: 0
bus info: virtio@2
logical name: ens18
serial: f2:65:88:58:4d:b7
capabilities: ethernet physical
configuration: autonegotiation=off broadcast=yes driver=virtio_net driverversion=1.0.0 ip=192.168.9.20 link=yes multicast=yes
Tome nota do nome lógico da interface de rede. Em nosso caso, o nome da interface é “ens18”.
logical name: ens18
Como Utilizar o Netplan para configurar o endereço ipv4
Liste os arquivos de configuração disponíveis no diretório do netplan.
ls /etc/netplan
Em nosso caso, encontramos o arquivo “00-installer-config.yaml”.
Antes de editar esse arquivo, faça uma cópia de segurança dos mesmo:
cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.BKP
Edite o arquivo usando o seu editor preferido (vi, vim, nano, etc.)
vi /etc/netplan/00-installer-config.yaml
O arquivo é identado, então recomendo respeitar o organização, pois arquivos YAML são extremamente sensíveis a erros de recuo. Ajuste o arquivo, baseado em suas configurações.
# This is the network config written by 'subiquity'
network:
ethernets:
<ethX>:
addresses:
- <EnderecoIP>/<MascaraRede>
nameservers:
addresses: [<DNS1>, <DNS2>, <DNS3>]
search:
- <DominioRede>
routes:
- to: default
via: <Gateway>
version: 2
Após concluídos os ajustes, salve e saia do arquivo de configuração e aplique as alterações com comando:
netplan apply
Caso não seja mostrada nenhuma mensagem de erro, após o comando acima, o Ubuntu conseguiu ler o arquivo de configuração (YAML) corretamente.
Conferir se as configurações foram aplicadas corretamente.
Verifique o endereço IPv4, utilizando o seguinte comando:
ip addr show
Baseado nas referências, indicadas no início deste artigo, a saída deve ser semelhante ao conteúdo a seguir:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens18: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether f2:65:88:58:4d:b7 brd ff:ff:ff:ff:ff:ff
altname enp0s18
inet 192.168.9.20/24 brd 192.168.9.255 scope global ens18
valid_lft forever preferred_lft forever
inet6 fe80::f065:98ff:fe58:4db7/64 scope link
valid_lft forever preferred_lft forever
É possível conferir na saída do comando, que o endereço “192.168.9.20/24” está atribuído à interface “ens18”.
Verifique se o gateway padrão está correto, utilizando o seguinte comando:
ip route
Baseado nas referências, indicadas no início deste artigo, a saída deve ser semelhante ao conteúdo a seguir:
default via 192.168.9.1 dev ens18 proto static 192.168.9.0/24 dev ens18 proto kernel scope link src 192.168.9.20
Se você configurou várias rotas em sua rede, pode usar o comando grep para filtrar a rota desejada e obter o gateway padrão (default), usando o seguinte comando:
ip route | grep default
A saída deve ser semelhante com o mostrado abaixo:
default via 192.168.9.1 dev ens18 proto static
É possível conferir na saída do comando, que a rota da interface “ens18” está vinculada o endereço “192.168.9.1”, que é o gateway padrão indicado em nossa referência.
Com esses ajustes, a seu endereço IPv4 deve estar devidamente configurado.
