- AWS (EKS)
- Azure (AKS)
- Google Cloud (GKE)
EKS uses the AWS VPC CNI plugin (Or imperatively via kubectl:For background, see
Enable outbound internet access for Pods
in the AWS documentation.
aws-node DaemonSet). Set the
AWS_VPC_K8S_CNI_EXTERNALSNAT environment variable to true.Terraform — using terraform-aws-modules/eks/aws:Verification
Verifying SNAT-disabled directly from inside the cluster is awkward. With SNAT off, the pod’s source IP is private; an outboundcurl from the pod will not
reach an external echo service through the Aviatrix data plane the way a
node-source-IP packet would.
The cleanest verification is to route traffic from a pod through an Aviatrix
Spoke Gateway with DCF and flow logging enabled, then check the source IP
recorded in the DCF flow logs. The IP should match the pod IP, not the node IP.
If pod IPs and node IPs are showing the same address in flow logs, SNAT is still
active.