[HN Gopher] Overlay networks based on WebRTC
       ___________________________________________________________________
        
       Overlay networks based on WebRTC
        
       Author : keepamovin
       Score  : 78 points
       Date   : 2024-03-29 17:00 UTC (6 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | EGreg wrote:
       | Good work! I just want to point out that WebRTC requires servers
       | for STUN and TURN.
       | 
       | If I may, we also developed an open source solution for WebRTC
       | videoconferencing, livestreaming and even peer-to-peer
       | broadcasting to unlimited numbers of people! Feel free to use it:
       | 
       | https://community.qbix.com/t/teleconferencing-and-live-broad...
        
         | megous wrote:
         | It does not require either of those.
        
           | ongy wrote:
           | NAT traversal is the first point on the feature list of the
           | linked repo. So in context, it's important to point out.
           | 
           | While in theory it doesn't it reduces the possible
           | connections quite a bit. Though STUN servers are plenty on
           | the internet and free to use. There's even a service
           | providing TURN (US geo though), but I have no idea who runs
           | it and what their business model is, so I wouldn't rely on
           | it.
        
       | xori wrote:
       | Hyperswarm has been my go-to for stuff like this, but you bring
       | up a good point that I don't think it's encrypted.
       | 
       | https://github.com/holepunchto/hyperswarm
        
         | apitman wrote:
         | Can hyperswarm be used to set up a generic IP network?
        
       | apitman wrote:
       | Onto the list[0] it goes.
       | 
       | I always have the feeling that WebRTC had so much more potential
       | than has been realized. I wonder how things might have turned out
       | differently if it had better server and browser support ~5 years
       | ago. I remember trying to use it for a game at the time and had
       | trouble finding a good server implementation, and had all sorts
       | of issues with Safari.
       | 
       | In the near future I'm not sure there will be much reason to use
       | it over WebTransport, unless you're doing p2p. I actually prefer
       | WebRTC's data channel API, since you can get separate datagram
       | streams, whereas with WebTransport you have to multiplex them
       | yourself[1].
       | 
       | [0]: https://github.com/anderspitman/awesome-tunneling
       | 
       | [1]: https://datatracker.ietf.org/doc/html/rfc9221#name-
       | multiplex...
        
         | billywhizz wrote:
         | i've long felt the same. i came to conclusion the browser
         | vendors decided it was kind of a mistake. it enables all sorts
         | of local first and p2p things that cut out the service
         | providers.
         | 
         | hopefully it will get some attention again. i have done a bunch
         | of really interesting experiments with data channels. being
         | able to choose the reliability is nice for sure.
        
           | treyd wrote:
           | > it enables all sorts of local first and p2p things that cut
           | out the service providers.
           | 
           | And this is another reason why the web will always be a shaky
           | foundation for local first and p2p software.
        
         | Sean-Der wrote:
         | WebRTC will live on. I think it will continue to grow from
         | grassroots efforts.
         | 
         | WebRTC has P2P and it also doesn't require the user to have any
         | knowledge of Video/Networking. The alternatives to it are more
         | geared at 'video developers'. I don't know which way the future
         | will go.
        
         | andai wrote:
         | > had all sorts of issues with Safari
         | 
         | Tangential rant, but this appears to be intentional. As far as
         | I can tell, Apple is intentionally lagging behind supporting
         | various web technologies, to make the web as unattractive as
         | possible (within their ecosystem), and by extension, to make
         | native app development as attractive as possible, so they can
         | take a cut of the profits.
         | 
         | If their reasoning is correct, then they would actually lose
         | money by _not_ investing into their own browser engine, which
         | is somewhat amusing, because the worse of a job they do, the
         | more money they make.
         | 
         | (I find this idea particularly painful in the context of "we at
         | Apple love web technology so much, we're going to use our love
         | of web as our main excuse for killing Flash"...)
        
         | samtheprogram wrote:
         | Around 5 years ago, peer negotiation got massively simplified
         | with new additions to the spec (see Perfect Negotiation). If
         | you're on a browser released since then, your life will be far
         | easier.
        
       | rmdes wrote:
       | Felicitas is one of those devs, every repository on her profile
       | is a gem to learn from, and well documented!
        
       | tptacek wrote:
       | I can't tell for sure without actually checking the repo out but
       | this looks to be GCM with random nonces using a command line flag
       | string as the fixed key for the network.
       | 
       | If you're trying to build a modern encrypted multipoint overlay
       | network, MLS is a good place to start.
        
         | orion138 wrote:
         | Did you mean MPLS? Or could you link to MLS?
        
       | k__ wrote:
       | Is this like web-onion?
        
       | egberts1 wrote:
       | That's the first thing I disable in all enterprise/office PCs'
       | browser: WebRTC.
       | 
       | Disclosure: I am an cybersecurity architect of IDS/NDS/XNS.
        
         | egberts1 wrote:
         | Meh, WebRTC ... it's not for everyone.
        
       | mrkramer wrote:
       | WebTorrent[0] is also good WebRTC P2P project.
       | 
       | [0] https://en.wikipedia.org/wiki/WebTorrent
        
         | evbogue wrote:
         | I recently started using Trystero to send messages and video
         | around via WebRTC.
         | 
         | https://oxism.com/trystero/
        
       | pappapisshu wrote:
       | ADGT.js [0] was another P2P overlay network based on WebRTC.
       | 
       | [0] https://doi.org/10.1002/cpe.4254
        
       ___________________________________________________________________
       (page generated 2024-03-29 23:00 UTC)