CGNAT para MikroTik RouterOS
O CGNAT mapeia muitos clientes privados em poucos endereços públicos dividindo entre eles o espaço de portas de origem de cada endereço. O Mikro Manager monta esse layout a partir dos parâmetros que realmente importam para você, e mostra cada regra que pretende escrever.
Como o layout funciona
O espaço privado é dividido em blocos consecutivos do tamanho do prefixo público. Cada bloco é netmapeado 1:1 sobre todo o prefixo na sua própria faixa de portas de origem, então vários blocos compartilham cada endereço público, separados por portas. O despacho é um salto de dois níveis — do srcnat para uma cadeia por /24 e daí para uma cadeia por bloco — de modo que a avaliação de regras continua rápida por mais blocos que existam.
Declarativo, e idempotente
Cada regra carrega um comentário estruturado que codifica o pool inteiro. Ao conectar, o app lê as regras vivas e reconstrói os pools a partir desses comentários, depois compara o que você quer com o que existe. A fonte da verdade é o roteador, não um arquivo no seu Mac — e regras sem um comentário válido nosso nunca são tocadas.
Buscas determinísticas, sem logs de fluxo
Como netmap é aritmética e não uma tabela de concessões, um endereço público e uma porta de origem resolvem para exatamente um cliente privado — e vice-versa — sem nada registrado antes. É exatamente isso que um relato de abuso precisa que se responda.
add chain=srcnat action=jump jump-target=cgnat-10.64add chain=cgnat-10.64-b3 action=netmap \ to-addresses=200.2.3.0/27 to-ports=3072-4095 \ comment="mikro:v1;pool=cgnat;blk=3;cpi=256"- 2 criar
- 67 atualizar
- 66 excluir
Você revisa o plano antes de qualquer coisa ser escrita.
A vida de um pool
Um pool que você ainda pode mudar um ano depois
A maioria dos CGNAT é escrita uma vez e depois editada à mão, regra a regra, pelo resto da vida. Aqui o pool continua sendo algo que você abre, altera e reaplica — porque o desenho fica guardado no próprio roteador.
Projete
Dê um nome, defina o início privado e o prefixo público e escolha quantas portas cada cliente recebe. Os blocos, as faixas de portas e a contagem de regras são calculados enquanto você digita. Ainda não há nada no roteador: a etiqueta diz Rascunho.
Leia o plano
Todas as regras que ele pretende escrever, por inteiro: um /27 dividido em 32 dá 133. Aplicar é a única coisa que escreve, e informa cada regra conforme avança.
Vira um pool, não um monte de regras
Aplicado, passa a Ativo e informa o que lhe pertence no roteador. O desenho vive nos comentários das regras, então o app reconstrói o pool a partir do roteador a cada conexão.
Mude um ano depois
Reduza pela metade os clientes por endereço, ligue o Fasttrack e revise: duas regras adicionadas, sessenta e sete alteradas, sessenta e seis removidas. Só a diferença é escrita.
Responda à denúncia de abuso
Um endereço público e uma porta de origem resolvem o cliente por trás deles — pool, bloco e faixa de portas — por aritmética, sem registros de fluxo para guardar.
Perguntas
- Isto é uma calculadora de CGNAT ou configura o roteador?
- As duas coisas. Ele calcula os blocos, as portas de cada cliente e a contagem de regras enquanto você digita — essa é a calculadora — e depois grava as regras netmap pela API REST, ou entrega o script se você preferir colar por conta própria.
- Posso usar em um roteador que já tem regras CGNAT?
- Sim. O app só gerencia regras que trazem o próprio comentário estruturado; o que você escreveu à mão é lido, mas nunca alterado ou apagado.
- Quantos clientes podem compartilhar um endereço público?
- Qualquer potência de dois de 1 a 1024. Esse número define como a janela de portas de origem é dividida, então mais clientes por endereço significa uma faixa de portas mais estreita para cada um.
- Ele consegue gerar a configuração CGNAT do RouterOS como script?
- Sim. Qualquer pool é exportado como arquivo .rsc com os mesmos comandos etiquetados que o app enviaria, para /import, um chamado de mudança ou um roteador que você só alcança por console.
- E se eu preferir aplicar as regras eu mesmo?
- Exporte o pool como script do RouterOS e cole em um terminal. Os comandos gerados são os mesmos que o app enviaria.
- Ele registra qual cliente usou qual porta?
- Não, e nem precisa. O mapeamento é calculado a partir dos parâmetros do pool, então as buscas funcionam retroativamente sem que nenhum log tenha sido ligado.
Obtenha o Mikro Manager
Distribuído pela Mac App Store — em sandbox, assinado e atualizado automaticamente.
Em breve na Mac App Store.Requer macOS 14 ou posterior e um dispositivo RouterOS v7 com a API REST ativada.