ton-society / grants-and-bounties

TON Foundation invites talent to imagine and realize projects that have the potential to integrate with the daily lives of users.
https://ton.org/grants
295 stars 133 forks source link

Create standard for hosting TON Site/Storage in local network #134

Closed ProgramCrafter closed 11 months ago

ProgramCrafter commented 1 year ago

Summary

Now, TON Sites and Storage nodes do not support working from behind NAT because they need to listen to incoming connections. This restricts technology users to those people who know how to set everything up and are willing to use a public IP.

Context

If TON Site hosting becomes available for every user, no matter whether he has a server with public IP, that will increase technology adoption and boost TON ecosystem.

Goals

Create a possibility to host TON Sites/Storage on personal computers.

Deliverables

  1. Create standard for connection to "local network" servers
  2. Create standard for TON domain records indicating local hosting
  3. Write a proxy application that will resolve TON Sites according to previous specification and newly created standard

Definition of Done

Reward

ProgramCrafter commented 1 year ago

I'm ready to do this footstep once I finish the other. I think this can be implemented with WebRTC.

delovoyhomie commented 1 year ago

@Naltox, what do you think about this footstep?

Naltox commented 1 year ago

Hey! Didn't quite get it, why should i want to host TON Site without public IP?

ProgramCrafter commented 1 year ago

Hello! Not necessarily TON Site -- maybe, that will be something like TON Torrent -- and this footstep targets a lot of users with only personal computers without dedicated servers.

delovoyhomie commented 1 year ago

@ProgramCrafter, what will happen next to this footstep?

ProgramCrafter commented 1 year ago

The next thing I'm going to propose is to create TON Storage client with nice GUI, so that people can instantly share their files with peers and even host a site on local computer (for example, demo of hackaton project/etc).

delovoyhomie commented 1 year ago

@ProgramCrafter, any updates here?

ProgramCrafter commented 1 year ago

I'm trying to come up with sane architecture for that, because connection signalling requires at least one intermediate server. I'm checking whether this intermediary can be TON blockchain itself and what implications are there.

delovoyhomie commented 12 months ago

In the course of personal communication with @ProgramCrafter, it was discussed that the implementation of this bounty would take place within the framework of the Hack-TON-Berfest event. We earnestly ask you to provide updates regarding your current progress right here, as well as attach a link to the repository, so we can track all the changes and see the final result of your efforts.

ProgramCrafter commented 12 months ago

I'm writing a proxy app for this footstep, and its repository is located at https://github.com/ProgramCrafter/rusty-gate/.

Current status: need to catch up with already-existing implementations.

delovoyhomie commented 11 months ago

@ProgramCrafter, please let me know about your progress.

ProgramCrafter commented 11 months ago

@delovoyhomie I think it's best to close this issue [hopefully only temporarily]. as I wasn't able to recreate proper TL schemes in Rust.