Hacker News new | past | comments | ask | show | jobs | submit login

IMO the main problem is the mainstream use of NATs and the fact that most people don't run their computers 24/7. The internet became the internat.

If all computers were publicly reachable it would be trivial to send files peer-to-peer.

I guess IPFS can be an interesting solution to this problem.

With the advent of smartphones, most people are running a computer 24/7. But that computer is still either behind a NAT or on a connection where data is precious.

NAT punching is a thing, but it makes the implementation of p2p a lot more complicated.

UPnP was supposed to help with this as well before it became a security disaster. There's also stuff like https://github.com/danoctavian/bluntly/blob/master/README.md to do NAT holepunching without a central server (using DHT) but again adoption and the actual ergonomics of usage (npm, the config file, key distribution etc make it fail the "could my grandma use it" test) are not easy enough to make it easy enough for the un-devops'd masses.

Some crypto currency based on file backup (say, Sia or Diskcoin) could completely solve this problem since you could just drop a magnet link to some encrypted files to your friend and your file stays accessible for as long as your funds cover it.

Pretty much.

The world got paranoid, as any exposed port to the raw net is seen as an invite to worms.

NAT and port blocking are orthogonal, getting one with the other is mostly a coincidence.

> If all computers were publicly reachable it would be trivial to send files peer-to-peer.

WebRTC exists today, and it's quite good. It's not a technology problem, it's a matter of practicality. Mobile devices being reachable over the network 24/7 is just not realistic (connectivity falls off, battery considerations, etc.). I don't want my phone to heat up and come to a crawl because the video I just shared is being downloaded by three friends over LTE while I ride the train.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact