Pods em 100.64.0.0/10, saída por NAT privado com IP fixo e isolamento lateral — tudo provisionado daqui.
Na trilha EC2 o grupo controla para onde a app pode ir; o IP de saída é o NAT compartilhado {{ config.ec2NatIp }}.
Nenhuma aplicação ainda. Crie um grupo de saída (opcional) e depois a aplicação.
{{ a.status?.egressIp || '—' }}{{ p.ip || '…' }}—{{ a.status.message }}
Um grupo = um IP de saída fixo (NAT privado) e os destinos que o firewall do cliente vai liberar. O portal reserva a faixa CGNAT e o IP, cria subnet, rotas, NAT e Fargate profile.
Destinos permitidos nesta PoC: {{ c }} · portas {{ (config.allowedPorts || []).join(', ') }}
Nenhum grupo ainda.
{{ g.status?.natIp || '—' }}{{ g.status?.podCidr || '—' }}{{ d.cidr }}:{{ d.ports.join(',') }}{{ g.status.message }}
É o pedido que vai para o time de rede. Na PoC, Simular aprovação aplica a liberação no "firewall do cliente" (security groups da VPC simulada). O estado é lido ao vivo desses SGs.
Nada a liberar: nenhum grupo pronto ainda.
| IP de origem | Tipo | Destino | Porta | Status | Apps |
|---|---|---|---|---|---|
{{ r.source }} | {{ r.sourceKind }} | {{ r.destination }} | {{ r.port }} | {{ r.status }} | {{ r.apps.join(', ') || '—' }} |
Cada app chama os "bancos" simulados. O destino responde o IP de origem que enxergou: tem que ser o IP do NAT do grupo, nunca o IP CGNAT do pod.
| App | Runtime | Grupo | IP do pod | IP esperado | {{ t }} |
|---|---|---|---|---|---|
| {{ r.app }} | {{ r.runtime }} | {{ r.egressGroup }} | {{ r.podIp }} | {{ r.expectedEgressIp }} |
liberado · origem {{ x.seenSourceIp }} bloqueado |
Executado em {{ fmt(egress.at) }}.
Cada app tenta abrir TCP 8080 nos pods das outras. Esperado: bloqueado para apps isoladas (o ALB continua entrando normalmente).
| de ↓ / para → | {{ t.name }} |
|---|---|
| {{ r.from }} {{ r.runtime }} · {{ r.isolation === 'strict' ? 'isolada' : 'aberta' }} | {{ t.name === r.from ? '—' : (r.to[t.name] || 'sem pods') }} |
Executado em {{ fmt(isolation.at) }}.
O portal recusa criar um grupo novo antes de tocar na AWS se algum limite estiver no máximo.
{{ config.cgnatPool }}{{ config.natIpBase }}{{ config.zone }}{{ config.ec2NatIp }}