Pular para o conteúdo

Diagrama de VPN site-to-site: túneis IPsec, roteamento BGP e redundância

Como uma VPN IPsec site-to-site para uma VPC na nuvem se encaixa: IKEv2 e ESP, dois túneis por conexão, BGP, redundância, MTU e MSS, e monitoramento.

· Fundador e desenvolvedor

Publicado em

Diagrama de rede. À esquerda, um data center local no AS 65010 com uma LAN de servidores e um firewall de borda. Dois túneis, 169.254.10.0/30 e 169.254.10.4/30, chegam a dois endpoints de um virtual private gateway no AS 64512, que roteia para sub-redes privadas em duas zonas.

Seu data center acessa as cargas de trabalho na AWS por uma VPN site-to-site que roda sem alarde há um ano. Numa noite, a AWS substitui um endpoint de túnel durante uma manutenção de rotina, e todas as conexões com a VPC caem. Só o túnel 1 havia sido configurado no firewall. O túnel 2 aparecia como DOWN desde o dia em que foi criado.

Na maioria dos diagramas, uma VPN site-to-site é uma única linha. Na prática, são dois túneis IPsec, duas sessões BGP e um orçamento de MTU, e as quedas vêm das partes que essa linha esconde. Este post cobre os blocos do IPsec, um exemplo na AWS, roteamento estático versus BGP, redundância, MTU e MSS, monitoramento e quando um link dedicado se encaixa melhor.

VPN site-to-site versus VPN de acesso remoto

Uma VPN site-to-site une duas redes: os gateways em cada ponta mantêm os túneis, e os hosts atrás deles não precisam de software de VPN. Uma VPN de acesso remoto une um único dispositivo, com um cliente em cada notebook e um usuário que faz login. Se a necessidade real é que as pessoas acessem aplicações internas, um proxy com reconhecimento de identidade numa arquitetura zero trust muitas vezes se encaixa melhor do que qualquer uma das duas.

Os blocos do IPsec

O IKEv2 (RFC 7296) autentica os pares e negocia as chaves. O ESP (RFC 4303) criptografa o tráfego.

Peça O que faz Escolha comum
IKE SA (fase 1) Autentica os pares e protege o IKE; UDP 500, ou 4500 atrás de NAT AES-GCM, SHA-2, grupo DH 14, 19 ou 20; 8 horas
Child SA (fase 2) Uma associação de segurança ESP por sentido AES-GCM; 1 hora, renegociada antes do prazo
ESP Criptografa cada pacote: protocolo IP 50, ou UDP 4500 com NAT traversal Modo túnel
Dead peer detection Verificações de atividade que limpam ou reiniciam um túnel mudo 30 a 40 segundos
Túnel baseado em rotas Uma interface de túnel que o roteamento e o BGP podem usar Obrigatório para BGP

O IKEv2 normalmente estabelece a IKE SA e a primeira Child SA em quatro mensagens (IKE_SA_INIT e IKE_AUTH). O IKEv1 foi tornado obsoleto em 2023 pela RFC 9395. Quanto aos algoritmos, a RFC 8247 torna obrigatório implementar o grupo DH 14 e recomenda o grupo 19; os grupos 2, 5, 23 e 24 não devem ser usados, e o grupo 22 não pode ser usado.

Dois túneis por conexão: um exemplo na AWS

Uma AWS Site-to-Site VPN conecta o seu dispositivo customer gateway a um gateway do lado da AWS. Segundo a documentação da AWS sobre opções de túnel, toda conexão tem dois túneis, cada um com seu próprio IP público, terminando em Availability Zones diferentes.

A AWS substitui endpoints de túnel para aplicar patches e aposentar hardware, um túnel de cada vez, então um dispositivo que usa só um túnel pode perder a conectividade sempre que esse endpoint é substituído. O AWS Health envia um aviso mensal quando um túnel fica fora do ar por mais de uma hora por dia.

Cada túnel tem um /30 interno de 169.254.0.0/16. A AWS fica com o primeiro endereço utilizável, o seu dispositivo com o segundo, e o BGP roda entre eles. Seu dispositivo inicia o IKE, a menos que você defina a ação de inicialização como start (somente IKEv2). A AWS avalia as propostas a partir do menor valor da sua lista permitida, seja qual for a ordem em que o seu dispositivo as envia, então remova IKEv1, SHA-1 e os grupos DH 2, 5 e 22 a 24 nos dois lados.

Virtual private gateway Transit gateway
Conecta Uma VPC Muitas VPCs, VPNs e Direct Connect
Largura de banda por túnel 1,25 Gbps 1,25 Gbps, ou 5 Gbps com Large Bandwidth Tunnels
ECMP entre túneis Não Sim, com BGP
Rotas BGP do seu dispositivo 100 1.000
Custo extra Nenhum Cobranças do transit gateway

Defina os túneis em código para que os dois fiquem idênticos. No Terraform, o túnel 1:

resource "aws_vpn_connection" "dc" {
  vpn_gateway_id      = aws_vpn_gateway.main.id
  customer_gateway_id = aws_customer_gateway.dc.id
  type                = "ipsec.1"
  static_routes_only  = false

  tunnel1_inside_cidr                  = "169.254.10.0/30"
  tunnel1_ike_versions                 = ["ikev2"]
  tunnel1_phase1_encryption_algorithms = ["AES256-GCM-16"]
  tunnel1_phase1_integrity_algorithms  = ["SHA2-384"]
  tunnel1_phase1_dh_group_numbers      = [20]
  tunnel1_phase2_encryption_algorithms = ["AES256-GCM-16"]
  tunnel1_phase2_dh_group_numbers      = [20]
  tunnel1_dpd_timeout_seconds          = 30
  tunnel1_dpd_timeout_action           = "restart"
  tunnel1_startup_action               = "start"
  # tunnel2_*: the same values with 169.254.10.4/30
}

Roteamento estático ou BGP

O roteamento estático lista os seus prefixos na conexão e deixa o failover por conta das verificações de integridade do seu dispositivo. Com BGP, cada túnel roda uma sessão eBGP, e as rotas de um túnel morto são retiradas quando a sessão cai. A AWS recomenda BGP sempre que o dispositivo o suporta, e o ECMP exige. Quatro regras:

  1. Use ASNs privados distintos. O lado da AWS usa 64512 por padrão. Dê ao seu site um ASN privado próprio: 64512 a 65534, ou 4200000000 a 4294967294 (RFC 6996).
  2. Anuncie resumos. Um virtual private gateway aceita no máximo 100 rotas do seu dispositivo, um limite fixo.
  3. Nunca sobreponha CIDRs. A rota local da VPC vence qualquer rota de VPN, mesmo uma mais específica. Planeje o espaço de endereços entre os sites, ou faça NAT em um dos lados.
  4. Conheça os critérios de desempate. Para o mesmo prefixo, um virtual private gateway prefere Direct Connect, depois rotas VPN estáticas, depois rotas BGP; em seguida o caminho AS mais curto e, por fim, o menor MED.

Sem ECMP, a AWS devolve o tráfego por um túnel de cada vez, marcado com MED. A orientação da AWS sobre prioridade de rotas é permitir roteamento assimétrico e manter os caminhos AS iguais. Se o seu firewall stateful não lida com isso, alongue o caminho AS com prepending no túnel 2 e reduza a local preference dele; uma mudança no caminho de saída da AWS pode então derrubar fluxos. A configuração de exemplo da AWS usa keepalive de 10 segundos e hold time de 30 segundos, e não os 90 segundos que a RFC 4271 sugere.

Designs de redundância

Dois túneis cobrem falhas do lado da AWS. Eles ainda compartilham o seu dispositivo, o seu ISP e o seu site.

Design Túneis Sobrevive a Não sobrevive a
Um dispositivo, um ISP 2 Manutenção de endpoints da AWS Falha do dispositivo ou do ISP
Dois dispositivos, um ISP 4 Falha ou patch de um dispositivo Queda do ISP
Dois dispositivos, dois ISPs 4 Falha do dispositivo ou do ISP Perda do site
Duas conexões, ECMP no transit gateway 4 ou mais O mesmo, com mais largura de banda Um fluxo acima do limite de um túnel

Com dois dispositivos, cada um tem a sua própria conexão VPN e ambos anunciam os mesmos prefixos. O ECMP distribui cada fluxo em um túnel por hash, então quatro túneis dão cerca de 5 Gbps no total, mas uma única conexão TCP ainda para em 1,25 Gbps, e um firewall stateful pode precisar de source NAT para manter a simetria. Com muitos sites, o transit gateway vira o hub de uma rede hub-and-spoke.

MTU e MSS clamping

Cada pacote tunelado carrega um novo cabeçalho IP mais a sobrecarga do ESP. A AWS suporta no máximo uma MTU de 1.446 bytes e um MSS TCP de 1.406 bytes, sem Path MTU Discovery e sem jumbo frames. Os valores exatos dependem dos seus algoritmos, segundo as práticas recomendadas da AWS para customer gateways:

Criptografia e integridade NAT-T MTU do túnel MSS TCP (IPv4)
AES-GCM-16 Desligado 1446 1406
AES-GCM-16 Ligado 1438 1398
AES-CBC, SHA-1 ou SHA2-256 Desligado 1438 1398
AES-CBC, SHA-1 ou SHA2-256 Ligado 1422 1382
AES-CBC, SHA2-512 Ligado 1406 1366

Defina a MTU do túnel e limite (clamp) o MSS dos pacotes TCP SYN nos dois sentidos, já que cada lado anuncia o seu. Em um gateway Linux:

ip link set dev vti1 mtu 1446
iptables -t mangle -A FORWARD -o vti1 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1406
iptables -t mangle -A FORWARD -i vti1 -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1406

O sintoma clássico de um valor errado: ping e SSH funcionam, mas as cópias de arquivos travam. A página de requisitos de dispositivos da AWS sugere 1.399 bytes, que também funciona, mas desperdiça alguns bytes.

Monitorando os túneis

  • Estado do túnel. O CloudWatch publica TunnelState por túnel; em conexões BGP, 1 significa que a sessão está estabelecida. Crie um alarme quando qualquer um dos túneis cair abaixo de 1. TunnelDataIn e TunnelDataOut mostram qual túnel carrega o tráfego.
  • Logs. Os logs da Site-to-Site VPN registram estados do IKE, eventos de DPD, o status do BGP e mudanças de rotas.
  • O seu lado. Acompanhe o estado do BGP e os prefixos recebidos por túnel. Uma sessão estabelecida com zero prefixos continua sendo uma queda.

Quando um túnel não sobe, verifique por camadas: IKE SA, IPsec SA, um ping para o endereço interno da AWS e, depois, o BGP.

Quando migrar para o Direct Connect

Site-to-Site VPN Direct Connect
Caminho Internet pública, criptografada Circuito privado em uma localidade do Direct Connect
Largura de banda 1,25 Gbps por túnel, 5 Gbps com Large Bandwidth Tunnels 50 Mbps a 25 Gbps hospedado, 1 a 400 Gbps dedicado
SLA 99,95% por conexão Até 99,99% com o modelo de resiliência máxima
Criptografia IPsec, sempre Nenhuma por padrão; MACsec em portas dedicadas compatíveis, ou IPsec por cima

Migre quando o tráfego for constante na casa dos gigabits, a latência importar ou a saída pela internet custar mais do que uma porta. Desde setembro de 2026, conexões dedicadas de 10 e 100 Gbps podem usar preço fixo que inclui a transferência de dados de saída dentro de uma faixa. Mantenha a VPN como backup: um virtual private gateway prefere rotas do Direct Connect, então o tráfego só usa os túneis quando o circuito falha. O diagrama de arquitetura de recuperação de desastres cobre esse planejamento.

O diagrama de VPN site-to-site

Diagrama de rede. À esquerda, um data center local no AS 65010 com uma LAN de servidores e um firewall de borda. Dois túneis, 169.254.10.0/30 e 169.254.10.4/30, chegam a dois endpoints de um virtual private gateway no AS 64512, que roteia para sub-redes privadas em duas zonas.

20 componentes · 5 conexões

Abrir no Archboard
Conteúdo do diagrama
  • On-premises data center · 10.20.0.0/16 · AS 65010
  • Server LAN
  • ERP database
  • File server
  • Edge firewall (customer gateway)
  • VPC · eu-west-1
  • Virtual private gateway · AS 64512
  • Tunnel 1 endpoint
  • Tunnel 2 endpoint
  • Private subnet · eu-west-1a
  • App instance
  • Private subnet · eu-west-1b
  • to 10.50.0.0/16
  • Tunnel 1 · inside 169.254.10.0/30 · BGP .2 ↔ .1
  • Tunnel 2 · inside 169.254.10.4/30 · BGP .6 ↔ .5
  • 10.20.0.0/16
Um data center local ligado a uma VPC da AWS por uma conexão Site-to-Site VPN: dois túneis IPsec do firewall de borda até dois endpoints de gateway em Availability Zones diferentes, cada um com sua própria sessão BGP, para que um endpoint substituído não derrube o link.

Como ler:

  • À esquerda, o data center: 10.20.0.0/16 no AS 65010. A LAN envia o tráfego da VPC ao firewall de borda, o dispositivo customer gateway.
  • Dois túneis chegam a dois endpoints do virtual private gateway, cada um com seu /30 interno e sua sessão BGP. Os dois estão ativos; a AWS escolhe o túnel de retorno.
  • À direita, a VPC: 10.50.0.0/16, com sub-redes privadas em duas Availability Zones e uma rota propagada para 10.20.0.0/16.
  • O bloco Markdown lista as configurações que precisam coincidir nos dois túneis.
  • As notas na parte de baixo dizem o que dois túneis cobrem (substituições de endpoint) e o que não cobrem (um firewall, um ISP).

Desenhando diagramas de VPN site-to-site com clareza

  • Rotule as duas pontas com CIDR, ASN e IP público. A maioria dos tickets de VPN começa por um deles.
  • Desenhe os dois túneis com seus /30 internos e pares BGP, e diga qual é o preferido e por quê.
  • Coloque as configurações compartilhadas em uma só caixa: versão do IKE, algoritmos, grupo DH, tempos de vida, MTU e MSS.
  • Mostre os pontos únicos de falha, como um só dispositivo ou um só ISP.
  • Deixe de fora chaves pré-compartilhadas, detalhes internos do ISP e listas de hosts.

O diagrama de topologia de rede cobre o lado do escritório; o diagrama de VPC da AWS cobre sub-redes e tabelas de rotas.

Monte no Archboard

  1. Entre com Google ou GitHub e crie um diagrama.
  2. Adicione uma Moldura do pacote Básico para o data center, nomeada com seu CIDR e ASN. Dentro dela, adicione uma Sub-rede com dois nós Servidor e um Firewall, todos do pacote Rede.
  3. Adicione uma VPC do pacote Rede. Dentro dela, adicione uma Moldura para o virtual private gateway com dois nós Roteador, e duas Sub-rede privadas com uma Instância de computação do pacote Nuvem em cada uma.
  4. Desenhe os túneis do firewall até os endpoints com setas nas duas pontas, rotuladas com o /30 interno e os pares BGP. Adicione conexões da LAN ao firewall e do gateway às sub-redes.
  5. Adicione um bloco Markdown do pacote Básico entre os túneis para as configurações compartilhadas, e notas de Texto.

Se a VPN estiver definida em Terraform, a ferramenta gratuita de Terraform para diagrama gera um primeiro rascunho; veja também os diagramas de rede.

O exemplo usa 14 nós de diagrama e fica dentro do plano Free.

Perguntas frequentes

O que um diagrama de VPN site-to-site deve mostrar? As duas redes com seus CIDRs, o IP público e o ASN de cada gateway, os endereços internos de cada túnel, o roteamento e as configurações que os dois lados precisam compartilhar.

Por que uma AWS Site-to-Site VPN tem dois túneis? Cada conexão tem dois túneis para endpoints em Availability Zones diferentes. A AWS faz a manutenção deles um de cada vez, então, com os dois configurados, o tráfego migra em vez de parar.

Devo usar roteamento estático ou BGP sobre IPsec? BGP, sempre que o seu dispositivo o suportar. Ele retira automaticamente as rotas de um túnel com falha e é obrigatório para ECMP. O roteamento estático é para dispositivos sem BGP.

Quais MTU e MSS devo usar em uma VPN da AWS? No máximo 1.446 e 1.406 bytes, com AES-GCM e sem NAT traversal. Cifras CBC e NAT-T precisam de valores menores, da tabela da AWS.

Quando devo usar o Direct Connect em vez de uma VPN? Quando o tráfego é constante na casa dos gigabits, a latência precisa ser previsível ou você precisa de um SLA de até 99,99%. Mantenha a VPN como backup criptografado.

Comece grátis — um assento, sem cartão de crédito.

Artigos relacionados

← Voltar ao blog

Abra um canvas em um minuto

Entre com Google ou GitHub. Grátis para um assento. Faça upgrade quando a equipe entrar.