ipfs / notes

IPFS Collaborative Notebook for Research
MIT License
402 stars 31 forks source link

Any Interest In A Proxy IPFS Node #193

Open kevina opened 7 years ago

kevina commented 7 years ago

Would there by any interest in a Proxy IPFS Node. The idea is that it will have a local blockstore but most everything else will be forwarded to another IPFS node that the user has control over.

It will work as follows:

Blocks in the Proxy are not visible to the IPFS network in general.

My use case will be as follows:

Another possible use case:

However, my use case is the motivating factor.

Thoughs?

lidel commented 7 years ago

(Not exactly what you described, but it is something you could set up with currently available tools)

If you are okay with using IPFS over HTTP Gateway, you could just set up local Squid or more lightweight Polipo to provide a local HTTP cache of IPFS assets fetched from HTTP2IPFS Gateway running on your VPS.

diagram

Kubuxu commented 7 years ago

I proxy IPFS API through ssh using https://gist.github.com/Kubuxu/0cafd6dc71114349875827c2c379fa1f

dragon788 commented 7 years ago

I was just thinking about how handy this would be. Basically a "tee-internet" that would allow you to save assets in a location (or multiple if you like redundancy) that has more storage that your local browsing terminal might have. This would be particularly pertinent on Chromebooks or mobile devices with their limited local storage, so you could browse through an AWS/GCE/Azure IPFS proxy and keep the "history" of your browsing for future reference.

dryajov commented 7 years ago

This should be possible to accomplish with the upcoming circuit relay, where a node can put itself to be accessed over one or more relays, but no more. If the peers you're proxyng/relaying are in a private net, then you can effectively have a gateway relay peer that will be forwarding traffic to your private network, one relay can serve many peers. So its pretty much what you're looking for.

dragon788 commented 6 years ago

Hopefully there are some examples of this in the documentation to make it easier to setup for schools/non-profits/etc where the "IT" folks who want to enable this awesome technology might not be super network savvy.