Small addition to avoid confusion: the purpose of STUN is kind of the opposite of TURN in this context. TURN will tunnel the traffic through the server and the clients don't need to know each others real IP addresses. STUN on the other hand is used in order for the clients to learn their real IPs despite NAT and be able to establish a direct connection.