| Despite how awesome WebRTC is, every time I see it my mind instantly goes to whether I understand STUN/TURN enough. They're part of the overall concept of ICE (Interactive Connection Establishment)[0], and STUN is a protocol for negotiated direct peer-to-peer connections[1] whereas TURN[2] is a relay mode that is used when a direct connection cannot be achieved for either side. When I saw the claim "without the need of a third party", it didn't fit with my knowledge of WebRTC so I went spelunking through the code and found that they do indeed use a STUN server[3], in particular google's "stun.l.google.com:19302". Just want to point out to those who might be relatively new to WebRTC, p2p mechanisms, etc -- it is surprisingly hard for two computers to talk to each other over the wide internet, even in this day and age. Even if you're behind the same router things aren't necessarily straight forward. [EDIT] - Also note that in the case of TURN, it is up to the application layer to encrypt communications[4]. [0]: https://en.wikipedia.org/wiki/Interactive_Connectivity_Estab... [1]: https://en.wikipedia.org/wiki/STUN [2]: https://en.wikipedia.org/wiki/Traversal_Using_Relays_around_... [3]: https://github.com/Antonito/gfile/blob/v0.1.0/internal/sessi... [4]: https://stackoverflow.com/questions/23085335/is-webrtc-traff... |
Only if both are behind NAT without forwarded ports and even then you can just use services like this[1] if you want to send files/data and it's super easy.
> Even if you're behind the same router things aren't necessarily straight forward.
I don't think this is true for most cases today.
1. https://justbeamit.com/