Pular para o conteúdo principal
BlogTrabalho em redeAbrangendo Multi-Regiões com Linode VLANs

Abrangendo Multi-Regiões com Linode VLANs

Abrangendo Multi-Regiões com Linode VLANs

As VLANs e VPCs são métodos de isolamento de rede que usamos para proteger nossa infra-estrutura nas nuvens públicas. Eles fornecem maior segurança, reduzindo significativamente a superfície de ataque de nossa rede, enquanto nos dão a capacidade de segmentar camadas de aplicações com e sem acesso público à Internet. Hoje em dia, vamos pensar em uma rede maior e abranger nossa rede privada através de múltiplas regiões com Linode.

Quando falamos de "regiões", estamos nos referindo a áreas geográficas distintas dentro de um mesmo fornecedor de nuvens. As "zonas" são tipicamente locais adicionais de hospedagem dentro dessas regiões geográficas. Por exemplo, você pode ver uma região do Nordeste baseada perto de Nova Iorque e uma região do Sudeste em Atlanta, cada uma contendo múltiplas zonas.

Além de proporcionar menor latência por estar fisicamente mais próximo de um maior número de usuários, a execução de uma aplicação multi-regiões nos dá um aumento significativo na confiabilidade e tolerância a falhas. Qualquer coisa que possa afetar suas cargas de trabalho em um local, incluindo falha de hardware ou interrupções na rede local, pode ser potencialmente mitigada por ter outro local para onde redirecionar seus usuários.

Implantação de VLANs Multi-Regiões

Para rotear através de segmentos de VLAN implantados em múltiplas regiões, podemos amarrar segmentos de VLAN usando uma Rede Privada Virtual (VPN). 

Primeiro, amarramos qualquer VLAN associada implantada em uma única região utilizando um Linode atuando como um roteador comum. Cada segmento de VLAN é seu próprio domínio isolado de camada 2 e opera dentro de sua subrede de camada 3. Todo o tráfego entre os vários segmentos de VLANs fluirá através do roteador, e podemos colocar regras de firewall dentro do roteador para governar o tráfego que é permitido atravessar entre os vários segmentos.

1

Podemos então configurar esta instância de roteador para fazer a ponte entre outros segmentos de rede usando a Internet pública e software VPN como o WireGuard ou um protocolo como o IPSec.

1

O exemplo acima mostra uma implantação em duas regiões. Cada região é responsável pelo gerenciamento da conectividade entre duas VLANs isoladas através de uma instância roteadora. Cada roteador pode então fazer a ponte entre as múltiplas regiões localmente usando as instâncias de roteadores Linode que configuramos com múltiplas interfaces. Os roteadores atravessam as regiões utilizando os túneis WireGuard através da Internet pública para cada região.

Configuração dos Pontos de Saída NAT

O tráfego agora pode fluir entre qualquer VLAN, independentemente da região. Além disso, as instâncias do roteador podem ser usadas como pontos de saída de Tradução de Endereço de Rede (NAT), fornecendo conectividade com a Internet para suas VLANs locais se as implantarmos sem conectividade com a Internet local. Nesta configuração, a instância roteadora local seria designada como o gateway padrão (ou seja, normalmente configurado como 10.0.0.1 em uma rede 10.0.0.0/24). Também podemos usar as instâncias do roteador como bastiões de gerenciamento de Secure Socket Shell (SSH).

Uma maneira comum de implementar este tipo de configuração NAT é usar uma regra de firewall para marcar o tráfego WireGuard e o mascaramento IP para qualquer tráfego detectado sem esta marca. 

Por exemplo, o roteador seria configurado para usar uma regra iptables:

iptables -t nat -A POSTROUTING -o eth0 -m mark ! --mark 42 -j MASQUERADE

Podemos configurar o WireGuard para usar um FirewallMark (ou seja, 42) dentro de sua configuração. Esta configuração garante que o tráfego WireGuard não seja NATed enquanto todo o tráfego VLAN for NATed.

As regras de firewall da nuvem seriam então configuradas para permitir a comunicação WireGuard entre os nós de roteamento (tipicamente, udp/51820).

Podemos então configurar as instâncias do roteador com regras de firewall para controlar ou registrar o fluxo de tráfego através dos segmentos local e global, conforme necessário.

Considerações

A implantação neste exemplo permite o compartilhamento de dados globalmente através de múltiplas regiões e capacita as instâncias do roteador a controlar o fluxo de tráfego entre vários segmentos de VLAN. Ao canalizar o tráfego de vários segmentos de VLAN em um único ponto de agregação, é fundamental entender as considerações de desempenho e largura de banda ao fazer isso. O desempenho será determinado pelas restrições de largura de banda de upload impostas pelos recursos de computação atribuídos ao roteador.

Também é fundamental considerar cuidadosamente o protocolo VPN para garantir que ele atenda às exigências de sua implantação. A tecnologia que você selecionar terá um grande impacto na largura de banda ponto a ponto e na segurança do tráfego enviado através da Internet pública. O WireGuard, por exemplo, usa criptografia para garantir que o tráfego não possa ser interceptado e tenha uma base computacional confiável menor quando comparado a uma implementação IPsec como o strongSwan para limitar exploits e exposição.

Multicloud

O mesmo tipo de tecnologia que usamos para abranger várias regiões poderia ser implementado através de vários fornecedores de nuvens. Por exemplo, você pode colocar uma instância de roteador dentro dos limites da rede de outro provedor de serviços de nuvem e ligá-la à sua configuração VPC local, específica do provedor de nuvem. Você pode usar um túnel WireGuard entre a instância do roteador para fazer a ponte para a rede do provedor de nuvens. A implementação funciona bem para serviços destinados a permanecer isolados em uma rede privada, exclusivamente.

O que se segue

Em última análise, há muitas ferramentas diferentes com as quais trabalhar ao projetar nossa rede privada e os benefícios podem superar significativamente a complexidade adicional. Se sua aplicação estiver crescendo junto com sua base de usuários, projetar seu ambiente para reduzir a latência para um número maior desses indivíduos pode ter um grande impacto na experiência do usuário. A tolerância a falhas adicionais aumentará a confiabilidade e manterá seu software disponível e acessível.


Comentários

Deixe uma resposta

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados com *