STUN は、NAT によって導入される通信の障壁を克服するように設計されたプロトコルです。
STUN プロトコルにより、NAT の背後にあるデバイスが自身のパブリック IP アドレスとポート番号を検出できるようになります。
デバイスはインターネット上の STUN サーバーと通信し、STUN サーバーはこの情報をクライアント デバイスに提供します
デバイスは、通信したいインターネット上の別のデバイスとこの情報を共有できます
これにより、外部デバイスが NAT を効果的に通過して相互に直接通信できるようになります
STUN は、リアルタイムでピアツーピア通信を促進する上で重要です。
STUN サーバーとは何かについて詳しく知りたい場合は、次の記事を参照してください: Stun サーバー: NAT 用のセッション トラバーサル ユーティリティとは何ですか?
ネットワーク アドレス変換 (NAT) とその普及の説明。
ルーターは、NAT またはネットワーク アドレス変換と呼ばれる技術を使用して、複数のプライベート IP アドレスを単一の IP パブリック IP アドレスにマッピングします
これにより、ローカル ネットワーク上の複数のデバイスが単一のパブリック IP を使用してインターネットに接続できるようになります。
これにより、限られた数の IPv4 アドレスが節約されます。
インターネットに接続されるデバイスの急激な増加により NAT が普及し、より大きなアドレス空間を提供する IPv6 の採用が遅れました。
ピアツーピア通信における NAT によってもたらされる問題
NAT は、受信トラフィックをブロックし、ポート マッピングを変更し、NAT の背後にあるデバイスからパブリック IP アドレスを隠すことにより、デバイス間の直接通信をブロックします
したがって、インターネット上の異なるネットワーク上にあるデバイス間の直接通信を可能にするためには、NAT によって作られた障壁を克服することが重要です
STUN プロトコルのような NAT トランスバーサル ソリューションにより、デバイスは独自のパブリック IP アドレスを検出し、NAT ルーター経由で接続をネゴシエートできます
多くの場合、STUN サーバーでは NAT トラバーサルに十分ではなく、TURN サーバーでフォールバックする必要があります
1 対 1 の通信を実装していて、信頼できる STUN サーバーと TURN サーバーが必要な場合は、次のことを検討できます
オープンリレープロジェクト: 無料の TURN / STUN サーバー
Metered.ca TURN サーバー: グローバルに展開できるプレミアム TURN サーバー
VoIP やビデオ会議などのサービスには STUN サーバーと TURN サーバーが必要です。
STUN または NAT 用セッション トラバーサル ユーティリティは、RFC 5389 で定義されている標準化されたプロトコルで、NAT またはファイアウォールの背後にあるデバイスが自身のパブリック IP アドレスとポート番号を検出できるようにします
STUN を使用すると、デバイスとアプリケーションが背後にある NAT の種類を検出し、インターネット上の他のデバイスとの直接通信チャネルを確立するために必要な情報を取得できます
STUN のコア機能には以下が含まれます:
パブリック IP アドレスの検出: STUN により、クライアント デバイスはパブリック IP アドレスを学習できます
ポート マッピング: STUN は、クライアント デバイスが NAT デバイスによって割り当てられたポート番号を認識するのに役立ちます
NAT タイプ検出: STUN サーバーは、クライアント デバイスが背後にある NAT デバイスの種類を認識できるようにします。 NAT タイプには、フルコーン NAT、制限付きコーン NAT、対称 NAT などが含まれます
ピアツーピア通信の促進: したがって、STUN サーバーはデバイス間のピアツーピア通信を促進します
STUN がデバイスの独自のパブリック IP アドレスとポート番号の検出を支援する方法
クライアント デバイスがインターネット上の STUN サーバーにリクエストを送信するとき。 STUN サーバーは、リクエストの送信元のパブリック IP アドレスとポート番号を確認できます。
STUN サーバーはこの情報をクライアントに送り返します。このようにして、STUN サーバーは、デバイスが NAT ルーターによって割り当てられた独自のパブリック IP とポート番号を検出できるようにします。
このプロセスにより、クライアントは次のことが可能になります
パブリック エンドポイントを学習する: インターネット上で他のデバイスがエンドポイントをどのように認識するかを理解します
修正の詳細をピアと共有する: クライアント デバイスが STUN サーバーから詳細を取得すると、通信を開始したいインターネット上の他のデバイスとそれを共有できます
NAT の動作を調整する: クライアント デバイスが背後にある NAT の種類に基づいて、NAT を通過する方法に関する戦略を調整します
クライアントの開始
STUNサーバー受信
結合応答
クライアントの領収書
NAT タイプの検出 (オプション):
コミュニケーションの確立
STUN と他の NAT トラバーサル方法
STUN (NAT 用セッション トラバーサル ユーティリティ)
TURN (NAT 周りのリレーを使用したトラバーサル)
ICE (対話型接続確立)
オペレーション
利点: 最高のパフォーマンスを実現するために最適化しながら、接続を確立する可能性を最大化します
次の場合は STUN を単独で使用してください
次の場合はスタンターンとアイスを使用してください
パフォーマンス
複雑さ:
成功率:
一般的に使用される UDP ポートと TCP ポートは 3478 と 5349 です
STUN プロトコルは、クライアントと STUN サーバー間の通信に特定のネットワーク ポートを使用します
UDP ポート
TCP ポート
代替ポート
ポートの使用に関するセキュリティ上の考慮事項
ポートスキャンへの暴露
ファイアウォール構成
インバウンドトラフィック
送信トラフィック:
暗号化の使用
定期的なアップデートとパッチ: 独自の STUN/TURN サーバーを実行している場合は、セキュリティのために定期的にアップデートし、パッチを適用する必要があります。
ログと監視: セキュリティの脆弱性について独自の STUN/TURN サーバーを実行している場合は、常に STUN サーバーと TURN サーバーをログに記録して監視します
従量制 TURN/STUN サーバー: API を使用して、グローバルでスケーラブルなマネージド STUN および TURN サービスを提供します
Google パブリック STUN サーバー: Google は無料 STUN サーバーのリストを提供しています。Google STUN サーバー
オープンリレー TURN / STUN サーバー: 一般向けの無料 TURN サーバー
Coturn STUN / TURN サーバー: オープンソース プロジェクトの Cotton を使用して独自のターン サーバーを実行できます。 coTURN を使用して TURN サーバーをセットアップおよび構成する方法は次のとおりです。
AWS TURN サーバー: AWS でも coturn を実行できます: そのガイドは次のとおりです: AWS TURN サーバー: 7 つの簡単なステップ
Azure TURN サーバー: TURN サーバーは Azure 上でも実行できます。これに関するガイドは次のとおりです: Azure TURN Server: ステップバイステップ ガイド
TURN サーバーのコスト: 独自の TURN サーバーを実行する際の潜在的なコストと考慮事項に関するガイドは次のとおりです: TURN サーバーのコスト: 完全ガイド
従量制 TURN サーバー
API : TURN gestion du serveur avec une API puissante. Vous pouvez faire des choses comme ajouter/supprimer des informations d'identification via l'API, récupérer par utilisateur/informations d'identification et métriques utilisateur via l'API, activer/désactiver les informations d'identification via l'API, récupérer les données d'utilisation par date via l'API.
Ciblage de géolocalisation globale : Dirige automatiquement le trafic vers les serveurs les plus proches, pour une latence la plus faible possible et des performances de la plus haute qualité. moins de 50 ms de latence partout dans le monde
Serveurs dans toutes les régions du monde : Toronto, Miami, San Francisco, Amsterdam, Londres, Francfort, Bangalore, Singapour, Sydney, Séoul, Dallas, New York
Faible latence : moins de 50 ms de latence, partout dans le monde.
Rentable : tarification à l'utilisation avec réductions sur la bande passante et le volume disponibles.
Administration facile : Obtenez des journaux d'utilisation, des e-mails lorsque les comptes atteignent les limites de seuil, des enregistrements de facturation et une assistance par e-mail et par téléphone.
Conforme aux normes : Conforme aux RFC 5389, 5769, 5780, 5766, 6062, 6156, 5245, 5768, 6336, 6544, 5928 sur UDP, TCP, TLS et DTLS.
Multi‑Tenancy : Créez plusieurs informations d'identification et séparez l'utilisation par client ou par différentes applications. Obtenez des journaux d'utilisation, des enregistrements de facturation et des alertes de seuil.
Fiabilité d'entreprise : 99,999 % de disponibilité avec SLA.
Échelle d'entreprise : Sans limite sur le trafic simultané ou le trafic total. Les serveurs TURN mesurés offrent une évolutivité d'entreprise
5 Go/mois gratuits : Obtenez 5 Go chaque mois d'utilisation gratuite du serveur TURN avec le forfait gratuit
Fonctionne sur les ports 80 et 443
Prend en charge TURNS SSL pour autoriser les connexions via des pare-feu d'inspection approfondie des paquets.
Prend en charge TCP et UDP
STUN gratuit et illimité
以上がStun プロトコル、ポート、トラフィックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。