TCP/IP, DNS, HTTP, TLS, BGP, OSPF and the protocols the internet runs on.
NAT is a stateful rewrite plus a connection-tracking table. What that table holds, why it fills up, and the protocols NAT quietly breaks.