NAT (Network Address Translation)
Updated
NAT rewrites the IP addresses of packets as they cross a gateway, typically so that many devices with private addresses share one public address. Its basic form is described in RFC 3022.
In practice
Behind NAT, a device can open connections to a server but cannot be reached from outside unless it keeps a connection open. That is why devices behind carrier-grade NAT send keep-alive messages, and why private delivery is often simpler for remote access.