When endpoints communicate with each other, they typically do not rely on public internet connections, but instead use a private address space behind a network address translation (NAT). Traversal Using Relays around NAT (TURN) is a protocol used by multimedia applications to traverse NAT. NAT is designed for IP address conversation and enables unregistered private IPs to connect to the internet. It modifies packets and allows multiple devices to share a single IP address.
TURN is a network protocol format (IETF RFC 5766), at times used with Transmission Control Protocol (TCP) and User Datagram Protocol (UDP) and used to discover peer to peer paths on the internet. TURN is an extension to the Session Traversal Utilities for NAT (STUN) protocol.
A TURN server performs NAT traversal and is in charge of relaying media in multimedia applications. It requires a high bandwidth connection and is recommended to use when a direct communication path is not available. TURN helps with running servers on known ports in the private network through a NAT but supports the connection of a user behind NAT to only a single peer.
Web Real-Time Communication (WebRTC) and TURN servers work hand-in-hand, as a TURN server is required for relaying the traffic between peers for most WebRTC applications.