Blog ENG - AWS - Post 6 2025
I still remember the first time I enabled IPv6 in a production VPC: the address space felt almost infinite, the routing was refreshingly straightforward, and then … came the inspection requirements. Security teams wanted full parity with IPv4 controls: TLS inspection, egress filtering, threat intelligence, DLP, and East‑West segmentation. That’s where the real architecture work begins: keeping IPv6 “simple” without oversimplifying security.
In this article, I’ll walk you through how to design robust, scalable, and maintainable IPv6 internet inspection architectures on AWS. We’ll cover the foundations, inspection patterns, routing considerations, and operational guardrails that make these designs succeed in the real world.
Why IPv6 Inspection Is Different (and Why It Matters)
IPv6 isn’t just “more addresses.” It changes defaults and expectations:
- Address abundance: You don’t hide behind NAT the way you do with IPv4. Publicly routable addresses become more common, which shifts where and how you apply controls.
- Egress behavior: Private subnets often use an egress-only internet gateway (EIGW) for outbound IPv6, not NAT. Inspection has to be explicit rather than incidental through NAT chokepoints.
- Dual-stack reality: Most environments run IPv4 and IPv6 together. Your inspection strategy must handle both consistently, ideally with a common deployment pattern and policy model.
- IPv6-only workloads: Modern services may run IPv6-only. When they need to reach IPv4 destinations, you’ll likely use NAT64, which has implications for visibility and policy.
The Core Building Blocks
Before choosing a pattern, get the fundamentals right:
- VPC & Subnet Design
- Assign an IPv6 CIDR to the VPC.
- Use /64 subnets (standard for host addressing) and be consistent with naming and tagging.
- Enable IPv6 addressing on your workloads: static assignments for servers, auto-assignment for scalable fleets.
- Internet Egress for IPv6
- Use egress-only internet gateways (EIGW) for private subnets to allow outbound traffic while blocking unsolicited inbound.
- For IPv6-only workloads reaching IPv4 services, use NAT64. It keeps IPv6 end-to-end internally while translating at the edge.
- Inspection Technologies
- AWS Network Firewall (NFW) for stateful filtering, TLS inspection, IDS-style signatures, and scalable managed endpoints.
- Gateway Load Balancer (GWLB) for distributing traffic to 3rd-party network security appliances (IDS/IPS, NGFW, DLP).
- Security Groups & NACLs for per-resource and subnet-level baseline controls.
- Route 53 Resolver (optional) for DNS policy enforcement and threat blocking at the resolver layer.
- Routing & Control
- Route tables steer traffic through inspection subnets/endpoints.
- Transit Gateway (TGW) is your backbone for centralized inspection across multiple VPCs, accounts, and regions.
Inspection Patterns That Work
1) Distributed Egress Inspection in Each VPC
- When to use: Simple environments, strong autonomy per VPC, teams own their full stack.
- How it works:
- Private subnets route 0.0.0.0/0 and ::/0 (or narrower prefixes) to NFW endpoints or GWLB endpoints for inspection.
- After inspection, traffic continues to the EIGW (IPv6) or NAT Gateway (IPv4), depending on stack.
- Security groups enforce least privilege; NACLs add stateless guardrails.
- Pros: Clear ownership, low blast radius, straightforward troubleshooting.
- Cons: Policy duplication across many VPCs, higher operational overhead.
2) Centralized Egress Inspection via Transit Gateway
- When to use: Multi-account or multi-VPC scale, need uniform policies, separation of duties.
- How it works:
- All “spoke” VPCs attach to a TGW. Egress routes from spokes steer traffic to a shared inspection VPC.
- The inspection VPC hosts NFW or GWLB appliances. Post-inspection traffic exits via EIGW (IPv6) or NAT (IPv4).
- Routing isolation and TGW route tables enforce consistent pathing.
- Pros: Central policy, easier compliance and auditing, fewer control planes.
- Cons: Requires careful route design, potential chokepoint without autoscaling and capacity planning.
3) IPv6-Only with NAT64 Egress
- When to use: Modern workloads that prefer IPv6 internally but rely on IPv4 services externally.
- How it works:
- Workloads operate in IPv6-only subnets.
- DNS returns synthesized IPv6 addresses for IPv4 destinations (via DNS64/NAT64 combo).
- Traffic is inspected (NFW/GWLB) before reaching NAT64 and exiting to IPv4 internet or services.
- Pros: Cleaner IPv6 posture, future-ready architecture.
- Cons: Requires precise DNS and logging strategy to avoid losing visibility on “translated” targets.
4) Ingress Inspection for Public-Facing IPv6 Services
- When to use: Exposing APIs or apps over IPv6 with inbound security controls.
- How it works:
- Front-end load balancers (ALB/NLB) terminate or pass-through IPv6.
- Traffic is steered through GWLB to 3rd-party appliances or through NFW for pre-app inspection.
- Post-inspection traffic reaches application subnets; security groups and WAF complement the control stack.
- Pros: Layered defence-in-depth for public services.
- Cons: More moving parts; ensure clear ownership between app and network teams.
Operational Guardrails That Save Your Weekend
- Consistent Tagging & Naming: Subnets, route tables, endpoints, and security policies must be discoverable. Your future self will thank you.
- Logging & Telemetry
- Enable detailed logs in your firewall (accepts, drops, rule hits).
- Use VPC Flow Logs with IPv6 fields and centralized analysis. Watch for asymmetry, MTU issues, and unexpected destinations.
- Add DNS logs for visibility in NAT64 scenarios.
- Policy-as-Code: Store firewall rules and routing definitions in version control. Use CI pipelines for validation and drift detection.
- Change Windows & Blast Radius: When editing TGW route tables or shared inspection stacks, use staged rollouts. Start with a small subset of VPCs.
- Capacity & Autoscaling
- For NFW/GWLB, track throughput and connections. Scale endpoints or appliance fleets proactively.
- Test failure scenarios: endpoint AZ loss, appliance failure, route table misconfig.
- Dual-Stack Cohesion: Keep IPv4 and IPv6 policies aligned. Avoid allowing in IPv6 what you’ve disallowed in IPv4 (and vice versa).
Common Pitfalls (And How to Avoid Them)
- Assuming NAT for IPv6: Private IPv6 egress typically uses EIGW. If you need translation, that’s NAT64, and it changes how you log and inspect.
- Asymmetric Routing: Firewalls drop return traffic if the path isn’t symmetric. Route tables and TGW propagation must be deliberate.
- Unclear DNS Behavior with NAT64: If DNS64 synthesizes IPv6 responses for IPv4 services, ensure you log the original target and the synthesized address to maintain traceability.
- “Shadow” Paths: Bypass routes letting traffic escape inspection. Periodically audit route tables and default routes in all subnets.
- Underestimating TLS Inspection Impact: CPU-bound, latency-sensitive. Size appliances or NFW policies accordingly and use selective inspection where appropriate.
Final thoughts
IPv6 inspection on AWS isn’t about inventing a brand-new security stack, it’s about being intentional with how traffic flows and where controls live in a world without IPv4 shortcuts. Whether you choose distributed per-VPC firewalls or a centralized TGW-based design, aim for clarity in routing, consistency in policy, and discipline in operations.
From my experience, the teams that succeed with IPv6 keep three habits: they design for symmetry, instrument everything, and treat policy as code. Do that, and IPv6 becomes a superpower rather than a complication.