NACL is a firewall at the subnet level. It controls what traffic is allowed in and out of an entire subnet.


How NACL Rules Work

Example:

Rule #100 → ALLOW 10.0.0.10/32
Rule #200 → DENY  10.0.0.10/32  ← never reached

The IP is allowed because rule #100 matches first.


Default NACL vs Custom NACL

Default NACL Custom NACL
Created Automatically with VPC You create it
Default behavior Allows ALL traffic Denies ALL traffic
Recommendation Don't modify it Create custom ones instead

Stateful vs Stateless — Most Important Concept

Security Group NACL
Type Stateful Stateless
Return traffic Automatically allowed Must explicitly allow

Stateful (Security Group): You allow inbound traffic → the reply automatically goes out. No separate outbound rule needed.