Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 2

Durante as primeiras cinco etapas descritas no artigo Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 1 Conectamos três nós geograficamente distantes com uma rede virtual. Um deles está localizado na rede física, os outros dois estão localizados em dois DCs separados.  

Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 2
Isso não demorou muito, embora cada um desses nós tenha sido adicionado à rede um por um. Mas e se você precisar conectar não apenas um, mas todos os nós da rede física à rede virtual ZeroTier? Essa tarefa surgiu um dia quando fiquei intrigado com a questão de organizar o acesso de uma rede virtual a uma impressora e roteador de rede. 

Tentei usar o método descrito acima, mas não foi rápido nem fácil em todos os lugares. Por exemplo, uma impressora de rede - você não pode simplesmente conectá-la. Mikrotik - ZeroTier não suporta. O que fazer? Depois de pesquisar bastante no Google e analisar o hardware, cheguei à conclusão que é necessário organizar uma ponte de rede.

Ponte de rede (Também ponte do inglês bridge) é um dispositivo de rede de segundo nível do modelo OSI, projetado para combinar segmentos (sub-redes) de uma rede de computadores em uma única rede.

Quero compartilhar a história de como fiz isso neste artigo. 

Quanto nos custa construir uma ponte...

Para começar, eu, como administrador, tive que decidir qual nó da rede atuaria como ponte. Depois de estudar as opções, percebi que poderia ser qualquer dispositivo de computador que tivesse a capacidade de organizar uma ponte entre interfaces de rede. Pode se tornar como um roteador - um dispositivo executando OpenWRT ou Equipamento da série RUT da Teltonika, bem como um servidor ou computador normal. 

No início, é claro, considerei usar um roteador com OpenWRT integrado. Mas dado o fato de que o Mikrotik existente combina perfeitamente comigo, embora não suporte integração com ZeroTier, e eu realmente não quero perverter e “dançar com um pandeiro”, decidi usar um computador como ponte de rede. Ou seja, um Raspberry Pi 3 Modelo B constantemente conectado à rede física executando a versão mais recente do Raspbian, um sistema operacional baseado no Debian Buster.

Para poder organizar uma ponte, o dispositivo deve ter uma interface de rede que não seja usada por outros serviços. No meu caso, a Ethernet principal já estava em uso, então organizei uma segunda. Usando um adaptador USB-Ethernet baseado no chipset RTL8152 da Realtek para esta tarefa.

Depois de conectar o adaptador a uma porta USB livre, atualizar e reinicializar o sistema:

sudo apt update && sudo apt upgrade -y
sudo reboot

Verifiquei se o sistema vê o adaptador USB Ethernet:

sudo lsusb

Depois de analisar os dados obtidos

Bus 001 Device 004: ID 0bda:8152 Realtek Semiconductor Corp. RTL8152 Fast Ethernet Adapter
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Fiquei satisfeito ao notar que o dispositivo 004 é apenas meu adaptador.

A seguir, esclareci qual interface de rede está atribuída a este adaptador:

dmesg | grep 8152

[    2.400424] usb 1-1.3: New USB device found, idVendor=0bda, idProduct=8152, bcdDevice=20.00
[    6.363837] usbcore: registered new interface driver r8152
[    6.669986] r8152 1-1.3:1.0 eth1: v1.09.9
[    8.808282] r8152 1-1.3:1.0 eth1: carrier on

Acabou eth1 🙂 E agora posso configurar ele e a ponte de rede. 

O que realmente fiz foi seguir o algoritmo abaixo:

  • Pacotes de gerenciamento de ponte de rede instalados:
    sudo apt-get install bridge-utils
  • Instalado Nível Zero UM:
     

    curl -s https://install.zerotier.com | sudo bash
  • Conectado para a rede ZeroTier existente:
    sudo zerotier-cli join <Network ID>
  • Executei o comando para desativar o endereço IP ZeroTier e o gerenciamento de rotas:
    sudo zerotier-cli set <networkID> allowManaged=0

A seguir no seu controlador de rede:

В Redes clicou em detalhe, encontrei e segui o link v4AssignMode e desativou a atribuição automática de endereços IP desmarcando a caixa de seleção Atribuição automática do pool de atribuição de IP

Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 2
Depois disso, autorizei o nó conectado definindo o nome e marcando as caixas de seleção Autorizado и Ponte Ativa. Não atribuí um endereço IP.

Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 2
Em seguida, ele voltou a configurar a ponte de rede no nó, para o qual abriu o arquivo de configuração da interface de rede para edição através do terminal:

sudo nano /etc/network/interfaces

Onde adicionei as seguintes linhas?

auto eth1
allow-hotplug eth1
iface eth1 inet manual

auto br0
allow-hotplug br0
iface br0 inet static
        address 192.168.0.10
        netmask 255.255.255.0
        gateway 192.168.0.1
        network 192.168.0.0
        broadcast 192.168.0.255
        dns-nameservers 127.0.0.1
        bridge_ports eth1 ztXXXXXXXX
        bridge_fd 0
        bridge_maxage 0

Onde eth1 — um adaptador Ethernet USB conectado ao qual não foi atribuído um endereço IP.
br0 — uma ponte de rede sendo criada com um endereço IP permanente atribuído no intervalo de endereços da minha rede física.
ztXXXXXXXXX — o nome da interface virtual ZeroTier, que foi reconhecida pelo comando:

sudo ifconfig

Após inserir as informações, salvei o arquivo de configuração e recarreguei os serviços de rede com o comando:

sudo /etc/init.d/networking restart

Para verificar a funcionalidade da ponte, executei o comando:

sudo brctl show   

De acordo com os dados recebidos, a ponte subiu.

bridge name	bridge id		STP enabled	interfaces
br0		8000.00e04c360769	no		eth1
							ztXXXXXXXX

Em seguida, mudei para o controlador de rede para definir a rota.

Por que segui o link na lista de nós da rede? Atribuição de IP ponte de rede. A seguir, na janela que se abre, clique em Rotas gerenciadas. Fui para uma nova página, onde como Target indicado 0.0.0.0 / 0, mas como Gateway — Endereço IP da ponte de rede do intervalo de endereços da rede da organização, especificado anteriormente. No meu caso 192.168.0.10

Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 2
Ele confirmou os dados inseridos e começou a verificar a conectividade de rede dos nós, executando ping no nó da rede virtual a partir do nó da rede física e vice-versa.

Isso é tudo!

No entanto, ao contrário do protótipo do qual as capturas de tela foram tiradas, tenho endereços IP de nós de rede virtuais do mesmo intervalo que os endereços IP de nós na rede física. Na ponte de redes, este modelo é possível, o principal é que não se sobreponham aos endereços distribuídos pelo servidor DHCP.

Não falarei separadamente sobre como configurar uma ponte de rede no lado do host executando o MS Windows e outras distribuições Linux neste artigo - a Internet está cheia de materiais sobre esse assunto. Quanto às configurações do lado do controlador de rede, elas são idênticas às descritas acima.

Só quero observar que o Raspberry PI é uma ferramenta econômica e conveniente para conectar redes com ZeroTier, e não apenas como uma solução estacionária. Por exemplo, os terceirizados podem usar uma ponte de rede pré-configurada baseada em Raspberry PI para combinar rapidamente a rede física do cliente atendido com redes virtuais baseadas em ZeroTier.

Deixe-me concluir esta parte da história. Aguardo perguntas, respostas e comentários - pois é com base neles que construirei o conteúdo do próximo artigo. Enquanto isso, sugiro que você tente organizar sua própria rede virtual usando um controlador de rede privada com uma GUI baseada em VDS do mercado em On-line RUVDS. Além disso, todos os novos clientes têm um período de teste gratuito de 3 dias!

-> Introdução. Parte teórica. Switch Ethernet Inteligente para o Planeta Terra
-> Um guia prático para construir redes virtuais. Parte 1
-> Um guia prático para construir redes virtuais. Parte 2

Desenvolvido por ZeroTier. Um guia prático para construir redes virtuais. Parte 2

Fonte: habr.com

Adicionar um comentário