Skip to main content

router-policy-sync

A Kubernetes controller that synchronizes Cilium network policies with MikroTik router firewall rules. When a CiliumClusterwideNetworkPolicy is annotated for sync, the controller automatically extracts the allowed source IPs, discovers the gateway IP from the matching LoadBalancer service, and keeps the corresponding MikroTik firewall filters, NAT rules, and address lists up to date.

Helm Chart Values

ValueDefaultDescription
config.mikrotikBaseUrl""Base URL of the MikroTik REST API (e.g. https://192.168.1.1/rest)
config.mikrotikUsername""Username for MikroTik API authentication
config.mikrotikPasswordSecret""Name of the Kubernetes Secret containing the MikroTik password
config.mikrotikPasswordKey""Key within the Secret that holds the password
config.reservedCIDRs[]List of CIDR ranges to treat as reserved (rejected from sync)
config.syncInterval""How often to reconcile firewall rules to detect drift (e.g. 5m)
deployment.image.tag""Container image tag; defaults to the chart version
deployment.replicas1Number of controller replicas
deployment.resourcesnullKubernetes resource requests and limits