I. はじめに
サーバにインストールさを通じて coturn 、このソフトウェアの設定STUNのサーバーをとTURN サーバを。
coturn説明:無料のオープンソースです TURN / STUNのサーバー。coturnののサーバー完全な実装STUN / TURN / ICEのプロトコルは、サポートP2Pは、ファイアウォールを貫通しています。
STUN のサーバー NATの検出タイプを。
TURN 通信中継ポイントの障害が発生した後、サーバーを。
coturn のGithubの出典:
https://github.com/coturn/coturn
ウィキ利用のcoturn:
https://github.com/coturn/coturn/wiki
Q:
サーバーを気絶させると、サーバーの展開手順をオンにし、違いは何ですか?
:
TURNがあるためであるSTUNの延長なので、TURN サーバーとして使用することができSTUNの使用するサーバー。
ソフトウェア構成に違いはありません。
ハードウェア構成では、 STUNサーバ2は、サーバー上のパブリックIPネットワークを持っているサーバが唯一の公共IPネットワークを持っている必要があります有効にする必要があります。
だから、あなたがしたい場合:
のみの設定 STUNサーバ:本明細書に記載するようにステップを、さらに2台のパブリックIPネットワークサーバを持つテーブルを持っている必要があります。
のみの設定本明細書に記載されるようステップ:サーバーの電源を入れます。
1サーバーconfigureとSTUNサーバを回す:本明細書で説明するように、ステップ、また、2台のパブリックIPネットワークサーバを持つテーブルを持っている必要があります。
第二に、インストール
インストールプロセスは、2つの部分に分かれています
- なしミラー coturnソースは、ここにするLTS 64ビットubuntu14.04ケース
- ミラーは付属しています(coturnソースをお勧め、これは便利ですし、ここで、)LTS 64ビットubuntu16.04ケース
1. なしミラー coturnの源は、ここにするLTS 64 ubuntu14.04 ビットのケースを
1.関連する環境をインストールします。
須藤はapt-getのインストールのlibssl-devの
須藤はapt-getをインストールlibevent-devの
須藤はapt-getをインストールしたlibpq-devの
sudoのは、MySQLクライアントをインストールapt-getを
須藤はapt-getをインストールlibmysqlclientの-devの
須藤はapt-getをインストールlibhiredis-devを
須藤はapt-getをインストールgitの
須藤はapt-getをインストールメイク
2.ダウンロードして、関連するコードをインストール
gitのクローン https://github.com/coturn/coturn
coturnのCD /
。/構成、設定
作ります
sudoはmake installを
あなたは、デーモンにそれを設定したい場合は、それ以下のチャートは、これはいくつかの記述の問題であり、既にインストールされている示して参照してください見ることができます
2. 付きミラー coturnの源は、ここにするLTS 64 ubuntu16.04 ビットのケースを
入力 apt-getをインストールcoturnを
第三に、構成および動作
気絶サーバーをし、電源を入れ、サーバのデフォルトのポートは 3478 。
スタンサーバは、サーバを必要とし、サーバのバインディングを持っている2 パブリックネットワークのIPを(のみがある場合に 1 、パブリックネットワークIP 、表示されますNAT 不正確なタイプの検出を!)。
ターンサーバーは、サーバーを必要とし、サーバがバインドされています。1 パブリックネットワークIP 。
スタンサーバーを設定します:
スタンサーバーは、サーバーを必要とし、サーバが結合した2 パブリックネットワークIPを。
高い性能要件いけない、すべての後に、ユーザがコール要求を作成し、唯一必要スタン一度通信サーバを、何らの通信、通信時間はわずか数個のパケットが通信するかどうかを検証送信する必要がありません。
あり 2 ソリューションプログラムの種類:
1. 利用誰か既製スタンサーバー(推奨)
2. 彼は彼自身製のスタンサーバー(2 パブリックネットワークIP あまりにも多くのお金を費やすのが、結果はちょうどだったNAT はお勧めしません、コストが高くはないが、タイプ検出機能)
1. 他の用途の誰か既製スタンサーバー
プロ使用可能な以下の3つのテスト:
stun.ekiga.net
stun.schlund.de
stun.voxgratia.org
それが利用可能であるかどうかをテストするには?
検索 NAT タイプの検出ツールを、そしてダウンロード
いくつかの利用可能なサーバーを探します
ボックス内のサーバアドレスを記入
これは、利用可能です
これは取るされていません
2. 自ら作っスタンサーバー
ハードウェアは、テンセントの雲とアリクラウドという男弾力カード技術は、サーバーに2つのに結合することを可能にするのGe IPを、サーバー場合にのみ、 1 GeのIP 、表示されるNAT タイプの検出が不正確!
ソフトウェア、サーバーにインストール coturnは、両方の後にスタンサーバーだけでなく、電源を入れ、サーバ、そのスタンサーバと設定手順ターンの構成手順は同じサーバです。
オン設定したサーバを:
coturnは、3つの構成をサポートします。コマンドラインで、CONF ファイルやデータベース(このようにデータベースがあることを、インターネットによると、しかし、すべての例は、最初の2つがあるので、私はデータベース構成を使用する方法がわかりません)。
データベースがサポートしているのSQLite 、MySQLの、PostgreSQLの、MongoDBの、Redisのを。ここで代わりcoturnの構成で、ユーザ情報データベースに格納されるべきデータベースを参照し使用するデータベースを。
STUNは、2つの認証を定義長期資格 および 短期資格を 。しかしためのWebRTC に対してのみサポート長期資格 。
例ここコマンドライン:
turnserver -o -v -f -a -m 2 --max-BPS = 100000 --minポート= 32355 --maxポート= 65535 --user = PHZ:1 -r phzled.cn -L your.ip
セクションパラメータ説明:
-o デーモンモードで(バックグラウンドで実行されています)
-v ログには、レコードに「適度に詳細な」レベルになります
-f 指紋メカニズムを高めます。
-a 長期認証機構
-m にX 中継要求を処理するためのプロセス
--max-BPS 帯域幅の
--min-ポート 最小ポートで始まります
--maxポート ポートの最大数
--user = 名:パスワード
-r フィールド(ちょうどラインを書き、その結果)。あなたがいる場合電源を入れ、サーバを任意のデータベースを使用しない/ コマンドライン/ confにファイル構成を、あなたは、このオプションを追加する必要がある、と結びつけるために長期の資格情報(-a オプション)を使用し
-L モニターIP(オンサーバIP)をこのIPはあなたのであるifconfigコマンドで見つかったIP ではなく、パブリックネットワークのIP
注:ターンから、サーバがユーザ認証メカニズムの必要性であるアカウント、パスワード、ドメインは、三つの部分の完全なアカウントを構成しています。
あなたのコードで使用したい場合は、空想図回しサーバーを、あなたは正しいアカウントとパスワードを入力する必要があり、正常に使用することができ回しサーバーを、そしてフィールドがすることであるターンに使用するサーバーを、入力を必要としません。
だから、あなたはラインコンフィギュレーションコマンドにしたい場合は、ターンのサーバーを、--user -r -a 3つのオプションが不可欠です。
あなたが詳細をお知りになりたい場合は、自分自身のwiki上の指示を参照してください。
https://github.com/coturn/coturn/wiki
またはmanページビューを使用します。
男turnserver
コマンドラインを実行すると、より最も少なく、次の情報、多くの情報を、必要があります後、覚えてログファイルの位置情報をうまく通常置かれ、 +日付+番号の命名プロセスを有効にするためには、ログイン/の/ varの下に。
第四に、テストを実行します
URL検出
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
テストしたい場合は、STUNサーバを、あなただけのパブリックIPを記入
あなたが検出したい場合は、ユーザー名とパスワードを設定するときに認定オンにする必要があるとして、で埋めるために、ターンサーバーをお使いのパブリックIPだけでなく、時間を記入し、( -情報のユーザーオプションに記入)
関連情報を記入、ボタンをクリックし、確認してください
あなたは最初から起動するように設定したい場合
スクリプト書くにあなたのスクリプトをコピーします /etc/init.dののディレクトリを
これは、いくつかの行を追加するスクリプトの始まりです
### INIT INFOをBEGIN
#が提供:スクリプト名を
#必要なスタート:$ remote_fs $のsyslog
#必要なストップ:$ remote_fs $のsyslog
#デフォルト・スタート:2 3 4 5
#デフォルト・ストップ:0 1 6
#短期説明:起動時にデーモンを起動します
#説明:デーモンが提供するサービスを有効にします。
### END INIT INFO
このような
そして、セットの権限のスクリプトファイル(ここでは仮定し、そのためのスクリプト名テスト)
sudoのはchmod 755 /etc/init.d/test
スクリプトの起動スクリプトを設定します
sudoのアップデート-rc.dのテストのデフォルト値95
注:番号ここで 95は、自分のニーズに応じて相応のシーケンス番号を起動するスクリプトを修正することができるされています。あなたの中に複数の起動スクリプトを持っていますが、それらの間の依存関係があるときは、この図の特定の役割を知って開始しました。
起動スクリプトをアンインストールします。
sudoのアップデート-rc.dの-fテスト削除
第五に、Qリンク
Q1:
首尾よく私のサーバーを実行した後、検出のウェブサイト上で検出されていません。
A1:
あなたは、それは、このためであるかどうかを確認することができ、二つの理由:
IPアドレス1-Lオプションフィルが発見されたのifconfig IPアドレス
2.それはテンセントアリの雲や雲の場合は、サーバーのセキュリティポリシーをチェックし、かどうか開いているポートのセキュリティグループを見て
気絶サーバーをし、電源を入れ、デフォルトのサーバポートがある3478 。
テンセント雲は、例えば、ポートを開きます