If you want to build a truly decentralized application—one that doesn't rely on AWS, Vercel, or a centralized RPC node—you immediately run into a brick wall of network physics.

You want User A to talk directly to User B.

The problem? Neither of them has a public IP address.

Because we ran out of IPv4 addresses decades ago, ISPs placed almost every consumer device on earth behind a NAT (Network Address Translation) router. NAT is a one-way mirror. You can send outbound requests to a public server, and the router will allow the response back in. But if an external device tries to initiate a connection with you, the NAT drops the packet immediately. It assumes it is hostile.

This single piece of hardware killed the peer-to-peer internet.