Portgrid Docs v0.1.36

Estrutura do sistema#

Visão geral#

 Assinantes ──► Concentrador (BNG) ──► [ Portgrid: XDP na placa de rede ] ──► Internet
                                                │
                                   Plano de controle (cgnatd)
                                                │
                              Painel web · CLI · API · Prometheus

O Portgrid tem duas partes que trabalham juntas:

  • Plano de dados (XDP/eBPF): traduz cada pacote no driver da placa, em velocidade de linha.
  • Plano de controle (cgnatd): decide quem recebe qual bloco de portas, mantém a auditoria, atende a API e a licença.

O painel, a CLI e o Prometheus são clientes do plano de controle: nenhum deles fica no caminho do tráfego.

Componentes#

Componente Função
Dataplane XDP NAT, filtros, proteções e fast-forward
cgnatd Alocação de blocos, API REST, métricas, auditoria, histórico, UPnP/PCP, licença
cgnatsh CLI de configuração e operação (shell do usuário operador)
cgnatctl Cliente de linha de comando da API
Painel web Interface de monitoramento e operação
Serviços de ajuste Tuning de kernel e das placas, aplicado no boot
Atualizador Atualização manual ou noturna, com rollback

Serviços no servidor#

Serviço Função
cgnatd Daemon principal
portgrid-tuning Parâmetros de sistema pelo hardware (boot)
cgnat-nic-tuning Filas, anéis e interrupções das placas do dataplane
cgnatsh-routes Rotas estáticas da CLI no boot
cgnat-backup (timer) Backup horário do estado
portgrid-updater (timer) Atualizador noturno (opcional)

Onde ficam os dados#

Caminho Conteúdo
/etc/cgnat/cgnatd.env Configuração do daemon
/var/lib/cgnat/ Estado, auditoria e histórico
/etc/cgnatsh/ Firewall e rotas da CLI
/etc/portgrid/ Opções de tuning e atualizador

A CLI mostra o estado real

A CLI não mantém banco próprio: lê a configuração diretamente do sistema e do cgnatd. O que aparece em show configuration é o que está em execução.

Caminho de um pacote#

  1. O pacote do assinante chega à placa e é analisado pelo XDP.
  2. O Portgrid valida o pacote e confere licença, lista de bloqueio e limites do assinante.
  3. O assinante usa uma porta do seu bloco; se ainda não tem bloco, o cgnatd o aloca sob demanda.
  4. O endereço é traduzido e o pacote segue para a internet; a resposta volta pelo mesmo registro.
  5. Com o fast-forward ligado, o pacote já sai direto pela placa correta, sem passar pela pilha do sistema.

Veja Dataplane.

Portgrid v0.1.36 · gerado em 04/10/2026 17:50 · © Portgrid · Documentação do produto.