What does HackerNews think of serverless-webrtc?
A demo of using WebRTC with no signaling server.
Pretty interesting stuff, I was considering taking a crack at it as part of a project I'm working on.
Edit: [here](https://franklinta.com/2014/10/19/serverless-webrtc-using-qr... the blog post about it
If you say it's different with media channels, I'll believe you.
WebRTC can tell you your ip address without any external server, that only breaks if you are dealing with NAT.
edit: to clarify the NAT-less use case, i'm thinking of apps that can rely on/require p2p supporting IPv6 connectivity.
This was seemingly set up by Wesley Dawson [2] at Mozilla in 2013, at which point it was an EC2 machine in AWS us-east-1. It subsequently made it into various gists and projects as a public STUN server.
Later in 2013 Mozilla changed over to using a hostname in Firefox instead [3], and much later Firefox 41 removed [4] Mozilla's STUN servers from being defaults.
I'm not sure how one would go about confirming that this service is still pro bono and not malicious, and whether it's likely to stick around in the future.
[1] https://github.com/cjb/serverless-webrtc/blob/master/js/serv... [2] https://bugzilla.mozilla.org/show_bug.cgi?id=807494 [3] https://bugzilla.mozilla.org/show_bug.cgi?id=920991 [4] https://bugzilla.mozilla.org/show_bug.cgi?id=1143827
https://github.com/cjb/serverless-webrtc/
EDIT:
Aha! I based my code on: https://github.com/js-platform/node-webrtc/blob/develop/exam...
See: https://github.com/cjb/serverless-webrtc
That's a good rough demo of how WebRTC connections can still be established with the ask/offers being conveyed out-of-band.
To make it a little more friendly for tablets (and to accomplish before messages expire) I'd think QR codes would be a reasonable way of passing the data without depending on an external service.
There could also be some extraneous information that can be stripped to save on the amount of data you pass between peers so that the QR code isn't excessively gross (see: https://webrtchacks.com/the-minimum-viable-sdp/)
I get your frustration with software development jargon but this seems like an odd choice to attack.
And to two of your points, here's a version that is "serverless", and can run completely from the file system.
https://github.com/cjb/serverless-webrtc
But is it truly "serverless"? I mean the file system is serving the file up to the browser!
C'mon.
Oh, and in case you were going to point out that there's a server involved in the link I posted because, "the WebRTC offer/answer exchange is performed manually by the users, for example via IM", (emphasis mine) - the information could just as easily be written on a piece of paper and exchanged via carrier pigeon. The pigeon may still technically be a server, in an architectural sense I suppose, but hopefully at that point you'd agree we're taking the argument past the point of any sensibility.
Since you asked: https://github.com/cjb/serverless-webrtc/
So if the reason you wanted NAT traversal was "my (browser|game|filesystem) wants to share data with someone else's", WebRTC is a far easier answer, and is now available to most browsers[1] without extra software installs. It does involve a privacy loss of your connection details to the STUN/TURN server, but the signaling server cannot decrypt your (DTLS) communication.
If the reason you want a global LAN isn't those things, what is it?
[1]: Available outside browsers, too: see e.g. my Node WebRTC chat client -- https://github.com/cjb/serverless-webrtc -- or the native C++ API.