TURN

TURN(全名Traversal Using Relay around NAT),是一種資料傳輸協議(data-transfer protocol)。允許在TCP或UDP的連線上跨越NAT防火牆

TURN是一个client-server协议。TURN的NAT穿透方法與STUN類似,都是通過取得應用層中的公有地址達到NAT穿透。但實現TURN client的終端必須在通訊開始前與TURN server進行交互,並要求TURN server產生"relay port",也就是relayed-transport-address。這時TURN server會建立peer,即遠端端點(remote endpoints),開始進行中繼(relay)的動作,TURN client利用relay port將資料傳送至peer,再由peer轉傳到另一方的TURN client。

參見

外部連結

  • RFC 5766 Traversal Using Relay NAT (TURN)
  • Yahoo! - Director of Engineering explaining STUN and TURN (Video)(页面存档备份,存于互联网档案馆

实现

  • Numb(页面存档备份,存于互联网档案馆)是一種免費的STUN/TURN server.
  • TurnServer(页面存档备份,存于互联网档案馆) - OpenSource TURN server.
  • reTurn(页面存档备份,存于互联网档案馆) - opensource STUN/TURN server and client library(C++)