A) OUTBOUND TCP FLOW (ALLOWED) — state created, replies permitted
┌────────┐        ┌──────────────────────────────┐        ┌────────────┐
│ Client │  SYN   │      STATEFUL FIREWALL       │  SYN/ACK│  Server    │
│ 10.0.0.5:51514 ─────────▶ [POLICY] OUTBOUND OK ─────────▶│ 8.8.8.8:443│
│ (LAN)  │        │ [STATE TABLE]+= (C→S: SYN)   │        │  (WAN/DMZ) │
└────────┘        │ [NAT] 10.0.0.5:51514→1.2.3.4:51514    └────────────┘
   ▲              │                                      ▲
   │ ACK/PSH ◀───└─ ALLOW (matches established state) ──┘  HTTP(S) data
   │
   └─ Legend: FW inspects first packet, creates state entry:
      (proto: TCP, src/dst IP:port, TCP flags, timeout). Return traffic
      is permitted only if it matches an ESTABLISHED/RELATED flow.
B) UNSOLICITED INBOUND TCP (BLOCKED) — no state entry, so dropped

┌────────┐        ┌──────────────────────────────┐        ┌────────────┐
│  LAN   │        │      STATEFUL FIREWALL       │  SYN   │  Bad Host  │
│  Host  │✕──────│ [STATE LOOKUP] → MISS        │◀────── │ 6.6.6.6:444│
└────────┘  DROP  │ [POLICY] INBOUND DENY        │        └────────────┘
                  │ [ACTION] DROP (no state)     │
                  └──────────────────────────────┘

Note: Because no session exists in the firewall’s state table, the inbound
SYN from the bad host is denied and never reaches the LAN host.
C) UDP “PSEUDO-STATE” (ALLOWED OUT, TIMED RETURN ONLY)
┌────────┐         ┌──────────────────────────────┐         ┌────────────┐
│ Client │  UDP    │      STATEFUL FIREWALL       │  UDP    │  Server    │
│ 10.0.0.5:53520 ─────────▶ [POLICY] OUTBOUND OK  ─────────▶│ 9.9.9.9:53 │
│  (LAN) │  query  │ [STATE TABLE]+= (C↔S tuple, timeout T) │   (DNS)    │
└────────┘         └──────────────────────────────┘         └────────────┘
        ▲                     ▲
        │  UDP reply allowed  │ state entry times out after T seconds
        └────────◀────────────┘ (no flags in UDP; FW relies on timers)

D) STATE TABLE (conceptual)
┌─────────────────────────────────────────────────────────────────────────┐
│ PROTO │ SRC IP:PORT      │ DST IP:PORT      │ STATE        │ EXPIRES   │
├───────┼──────────────────┼──────────────────┼──────────────┼───────────┤
│ TCP   │10.0.0.5:51514    │8.8.8.8:443       │ESTABLISHED   │ 04:59     │
│ UDP   │10.0.0.5:53520    │9.9.9.9:53        │ASSOCIATED    │ 00:25     │
└─────────────────────────────────────────────────────────────────────────┘

E) ZONES & POLICY SUMMARY (left→right traffic direction)
LAN (trusted) ──▶ FW ──▶ WAN/DMZ
- Outbound: ALLOW if policy permits; create/update state; allow matching replies
- Inbound: DENY unless explicit rule; must match existing state or service ACL
- RELATED: ICMP errors, FTP data channels, etc., allowed if tied to an existing state
- NAT: (optional) translates internal addresses; state tracks pre/post-NAT tuples