日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

coturn 搭建 stun turn 服务器

發布時間:2024/8/1 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 coturn 搭建 stun turn 服务器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

coturn 搭建 stun / turn 服務器

分享經驗總結,歡迎加入

簡介

STUN,首先在RFC3489中定義,作為一個完整的NAT穿透解決方案,英文全稱是Simple Traversal of UDP Through NATs,即簡單的用UDP穿透NAT。

STUN(Simple Traversal of User Datagram Protocol Through Network Address Translators),即簡單的用UDP穿透NAT,是個輕量級的協議,是基于UDP的完整的穿透NAT的解決方案。它允許應用程序發現它們與公共互聯網之間存在的NAT和防火墻及其他類型。它也可以讓應用程序確定NAT分配給它們的公網IP地址和端口號。STUN是一種Client/Server的協議,也是一種Request/Response的協議,默認端口號是 3478

TURN,首先在RFC5766中定義,英文全稱是Traversal Using Relays around NAT:Relay Extensions to Session Traversal Utilities for NAT,即使用中繼穿透NAT:STUN的擴展。簡單的說,TURN與STURN的共同點都是通過修改應用層中的私網地址達到NAT穿透的效果,異同點是TURN是通過兩方通訊的“中間人”方式實現穿透。

STUN協議在RFC5389中被重新命名為Session Traversal Utilities for NAT,即NAT會話穿透效用。在這里,NAT會話穿透效用被定位為一個用于其他解決NAT穿透問題協議的協議。它可以用于終端設備檢查由NAT分配給終端的IP地址和端口號。同時,它也被用來檢查兩個終端之間的連接性,好比是一種維持NAT綁定表項的保活協議。STUN可以用于多種NAT類型,并不需要它們提供特殊的行為。

STUN本身不再是一種完整的NAT穿透解決方案,它相當于是一種NAT穿透解決方案中的工具。這是與RFC3489/STUN版本相比最重要的改變。

ICE跟STUN和TURN不一樣,ICE不是一種協議,而是一個框架(Framework),它整合了STUN和TURN。

coturn 搭建

鏈接:https://github.com/coturn/coturn

代碼拉取后,先安裝所需的依賴包

sudo apt-get install libssl-dev sudo apt-get install libevent-dev sudo apt-get install libpq-dev sudo apt-get install mysql-client sudo apt-get install libmysqlclient-dev sudo apt-get install libhiredis-dev sudo apt-get install gcc sudo apt-get install pkg-config

編譯 coturn

source ./configure make -j 8 sudo make install

安裝部分截圖

安裝完成后編輯配置文件

路徑:/usr/local/etc/turnserver.conf.default

必須的配置項,其他項自行百度查看

listening-port=3478 #指定偵聽的端口 external-ip=39.121.185.185 #指定云主機的公網IP地址 user=aaaaaa:bbbbbb #訪問 stun/turn服務的用戶名和密碼 realm=stun.xxx.cn #域名,這個一定要設置 cli-password=123456

開啟端口3478

turnserver 啟動

路徑:cd /usr/local/bin

turnserver -c …/etc/turnserver.conf

檢測 ice 穿透的在線工具

鏈接:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/

測試發現火狐瀏覽器正常,谷歌瀏覽器不正常




Android 端使用
PeerConnection.IceServer iceServer = new PeerConnection.IceServer("turn:172.21.0.147:3478", "taxiao", "123456"); iceServers.add(iceServer); PeerConnection.RTCConfiguration configuration = new PeerConnection.RTCConfiguration(iceServers);
微信公眾號(他曉),關注并轉發,謝謝

總結

以上是生活随笔為你收集整理的coturn 搭建 stun turn 服务器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。