Sure, nature took its course, but did NATs make things better? I’m a game dev and getting two computers to talk to each other is so so much harder due to NAT traversal, requiring punchthrough servers. Voice chat and stuff need STUN/TURN servers. A game has to account for “what if my host wants to connect two clients, one of which within the NAT and one without?”
Makes far more sense to give every device an address and just talk to it and leave security and port openness up to firewalls.