3 ms·
NAT can be tunneled around, but there's two problems with that: (1) Every NAT traversal protocol is unique, so there is no interoperability between different a
by api 13y ago
NAT can be tunneled around, but there's two problems with that:
(1) Every NAT traversal protocol is unique, so there is no interoperability between different apps. The power of IP lies in the fact that it's a lingua franca-- anything can open TCP or send UDP. But anything cannot speak BitTorrent-DHT or Skype or whatever. So there's no potential for exponential growth in capability by tying disparate things together. Firewalls and NAT kill protocol interoperability.
(2) NAT traversal is hard. I know cause I just did it. It's a pain in the rear, and I'm still going to have to build port 80 HTTP tunneling into ZeroTier for that 0.1% of users who cannot use UDP or tunnel through their NAT. So you have to implement NAT-t + a proxy service for everything.
As far as spam goes, you're right. I should have mentioned that. But there are lots of strategies for dealing with spam. Why can't we have a few million small castles instead of one big one, for example? BBSes each had sysops who would kick off abusive users. There are also cryptographic things like hash-cash, Bitcoin economies, trust matrices, etc. These are complex but if we could engineer something good here then it could eventually be packaged into a friendly library that programmers could use without having to understand all the devilish details.
The fact is that we did build a decentralized many-to-many Internet. Then we broke it with firewalls and NAT.
- urbit 13y agoWell, dude, I just did NAT traversal too but I have a funny feeling you did it better. Prediction: one day my protocol will run on top of yours. Rebuilding teh Internets, one layer at a time...
- api 13y agoYour protocol doesn't have to run on top of mine. Just build it to use IP and it can run over ZT1's virtual networks or plain vanilla IP or cjdns or whatever. With IPv6 every device could have a first-order IP. We just need to get people to give up middle-box firewalls. That and anyone who attempts to build IPv6 NAT should be placed on trial for crimes against humanity, with the punishment being impalement followed by incineration atop a pyre. NAT is the devil incarnate. Virtually all evils in the world -- from child abuse to war -- can safely be blamed on NAT.