ネットワークによる直接接続が困難な場合に NAT トラバーサルが重要な理由
一部の接続問題は、使用しているアプリが原因ではありません。これらはデバイス間のネットワーク パスから送信されます。
これは、自宅の Wi-Fi では通話が即座に接続されるが、ホテルの Wi-Fi では接続が困難な場合、ゲーム ロビーがあるプレイヤーでは機能するが別のプレイヤーでは失敗する場合、またはモバイル データからオフィス ネットワークに切り替えた後にプライバシー ツールの動作が異なる場合に気づく可能性があります。一般的な理由の 1 つは、NAT です。これは、多くのデバイスが 1 つのパブリック インターネット アドレスを共有できるようにするネットワーク アドレス変換層です。
この記事では、NAT トラバーサルとは何か、UDP ホール パンチが存在する理由、リレー フォールバックがいつ便利になるか、および VPN Satelites 読者がこれらの概念を魔法の保証ではなく接続コンテキストとして扱う必要がある理由について説明します。
NAT が日常のネットワークで行うこと
ほとんどの人はプライベート ネットワークを何も考えずに使用しています。ラップトップ、携帯電話、タブレット、テレビはすべて 1 つのルーターの内側にある場合があります。家庭内では、各デバイスに独自のプライベート アドレスがあります。より広範なインターネットにとって、それらは 1 つのパブリック アドレスを共有しているように見えることがよくあります。
その訳は役に立ちます。これは、ネットワークがパブリック IPv4 アドレスを保存し、通常のホーム ルーティングを管理しやすくするのに役立ちます。しかし、これは実際的な問題も引き起こします。ルータが受信トラフィックの宛先を認識していない限り、ネットワーク外部のデバイスは通常、ネットワーク内のデバイスへの直接接続を開くことができません。
通常の Web ブラウジングでは、通常は問題ありません。デバイスが外部への接続を開始し、ルーターがマッピングを記憶し、その一時パスを介して応答が返されます。特に UDP 経由で、より直接的に通信するために 2 つのエンドポイントが必要なアプリの場合、状況は予測しにくい可能性があります。
これが NAT トラバーサルの基本設定です。
NAT トラバーサルとは何ですか?
NAT トラバーサルは、一方または両方のエンドポイントが NAT の背後にあるネットワークを介してアプリケーションが通信するのを支援する技術の一般名です。
分かりやすく言えば、このアプリは、「ルーターがアドレスを変換し、受信トラフィックをフィルタリングしているにもかかわらず、これら 2 台のデバイスが相互に有効なパスを見つけることができるか?」という実用的な質問に答えようとしています。
NAT の動作はさまざまであるため、単一の普遍的な答えはありません。 IETF RFC 4787 などの規格では、UDP に対する NAT の動作について説明し、マルチメディア通信やオンライン ゲームなどのリアルタイム アプリにとって一貫性が重要である理由を説明しています。同じ広範な問題が多くの最新のアプリ カテゴリにも現れています。通話、コラボレーション ツール、ゲーム、リモート アクセス ツール、ピアツーピア スタイルのシステム、および VPN のようなアプリはすべて、ネットワークがトラフィックを処理する方法によって影響を受ける可能性があります。
VPN Satelites 読者にとって、有益なポイントは単純です。ネットワーク間で接続の動作が異なる場合、それはルーターの動作、キャリア グレードの NAT、ファイアウォール ポリシー、パケット フィルタリング、輻輳、その他のパス状態を反映している可能性があります。 1 つのアプリの設定が壊れているという証拠として自動的に読み取られるべきではありません。
UDP パンチング穴とは何ですか?
UDP は、接続指向のトラフィックに関連する遅延とオーバーヘッドの一部を回避できるため、リアルタイム アプリケーションでよく使用されます。ただし、UDP は、多くの人が従来の接続を想像するのと同じように、長時間存続するセッションを作成しません。
UDP ホール パンチングは、2 つのエンドポイントがそれぞれアウトバウンド UDP パケットを送信し、その NAT デバイスが一時的なマッピングを作成する NAT トラバーサル手法です。タイミングと NAT の動作が一致する場合、反対側からのトラフィックはこれらのマッピングを通じて戻ってくる可能性があります。
言葉だけ聞くと攻撃的ですが、コンセプトは名前よりも普通です。これは、送信トラフィックと戻りトラフィックに対するルーターの既存のルールを操作することです。 Bryan Ford、Pyda Srisuresh、および Dan Kegel の基礎研究では、UDP ベースのアプリケーションで使用される実用的なアプローチとしてホール パンチングについて説明していますが、同時に、すべての NAT セットアップで機能するトラバーサル テクニックがないという重要な制限も強調しています。
その制限が重要です。一部のネットワークは、役立つ方法でマッピングを再利用します。特定の宛先により狭い範囲で結び付けられたマッピングを作成するものもあります。一部のネットワークでは、NAT にファイアウォールの動作が追加されています。一部のモバイルおよび ISP ネットワークでは、ユーザーがキャリア グレードの NAT の背後に配置されており、ユーザーは上流の変換層をまったく制御しません。
したがって、UDP ホール パンチングとは何なのかと尋ねられたら、簡単に答えます。これは、アプリケーションが NAT で作成されたマッピングを介して直接 UDP パスを試行する方法です。慎重な答えは、「多くの環境でうまく動作しますが、保証はありません」です。
直接接続が時々失敗する理由
直接接続は、いくつかの一般的な理由で失敗する可能性があります。
- アプリが異なる宛先に接続する場合、ルーターは同じ外部ポート マッピングを再利用できない場合があります。
- ネットワークは、受信 UDP パケットを別のネットワークよりも厳密にフィルタリングする場合があります。
- キャリア グレードの NAT 層がユーザーとパブリック インターネットの間に配置される場合があります。
- 職場、学校、ホテル、会場のネットワークは、独自のポリシーに従ってトラフィックを制限する場合があります。
- モバイル ネットワークは、信号品質やネットワーク接続の変化に応じてパスを変更する場合があります。
- セキュリティ製品またはローカル ファイアウォールにより、アプリに到達する前にトラフィックがブロックされる場合があります。
これらのいずれの場合も、ユーザーは自分が制御できないルールをバイパスする必要があることを意味します。実際的なポイントは、接続動作が複数のアプリの設定に依存することを理解することです。ネットワークが意図的にトラフィックの種類をブロックまたは制限している場合、次の適切なステップは通常、許可されたネットワークを使用するか、サービス条件を確認するか、ネットワーク管理者に相談することです。
リレー フォールバックが適している場所
直接接続が信頼できない場合、一部のシステムはリレーを使用します。両方のエンドポイントが中間サーバーに外側に接続し、サーバーがエンドポイント間でトラフィックを渡します。 IETF RFC 5766 では、特定の NAT 状況で直接ピア通信が不可能な場合にリレー支援通信用のプロトコルとして、NAT 周囲のリレーを使用したトラバーサルの略である TURN について説明します。
リレーは、NAT の直接トラバーサルとは異なる問題を解決します。両方のデバイスがリレー サービスに到達するだけでよいため、リレーによって到達可能性が向上します。そのトレードオフとして、トラフィックが余分なパスを通過するため、遅延、帯域幅コスト、運用の複雑さが増加する可能性があります。
このため、多くの接続設計では、最初に直接パスを試し、必要に応じてフォールバックすることを好みます。 IETF RFC 8445 では、STUN および TURN の概念を使用して可能なパスを検出およびテストする、UDP ベースの通信の NAT トラバーサルの標準トラック アプローチとして ICE について説明します。これは、すべての VPN 関連ツールが ICE、STUN、または TURN を使用するという意味ではありません。これは、一般的なエンジニアリング パターンを示しているだけです。つまり、どのパスが機能するかをテストし、直接接続が利用できない場合はフォールバックを使用します。
読者にとって重要な教訓は、現実的な期待を設定することです。リレー フォールバックは、直接ルートに障害が発生した状況でも接続を可能にする可能性がありますが、すべてのネットワーク状態がなくなることと同じではありません。
VPN Satelites 読者にとってこれが意味すること
VPN Satelites コンテンツは、多くの場合、プライバシー、接続、インターネット ルーティング、ユーザーの期待などのトピックの近くにあります。 NAT トラバーサルは、アプリ自体と同じくらいアプリ周囲のネットワークが重要である理由を説明しているため、同じ教育分野に属します。
このトピックでは、製品の接続を控えめにすることが重要です。この記事は、VPN Satelites が特定の NAT トラバーサル メソッド、リレー アーキテクチャ、ポート転送設定、静的 IP オプション、またはプロトコル スタックを使用しているとは主張しません。ここで重要なのは実践的なリテラシーです。用語を理解すると、VPN 関連のアプリがすべてのネットワーク ルールをオーバーライドすることを期待せずに、トラブルシューティング ガイダンスをより注意深く読み、接続の問題を評価することができます。
接続が不安定な場合は、いくつかの低リスクのチェックを行うことで、アプリの動作をネットワークの動作から分離することができます。
- ホーム Wi-Fi とモバイル データなど、許可されている別のネットワークを試し、問題がアプリに起因するのかネットワークに起因するのかに注目します。
- ローカルルーターを制御していて、通常の接続が低下しているように見える場合は、ローカルルーターを再起動します。
- ネットワークがトラフィック制限のある職場、学校、ホテル、会場、または ISP によって管理されているかどうかを確認します。
- 接続処理はバージョン間で異なる可能性があるため、アプリとオペレーティング システムを常に最新の状態に保ってください。
- 影響を理解している場合、または管理者の承認がない限り、ルーターまたはファイアウォールの詳細設定を変更しないでください。
これらの手順では制限が回避されません。これらは、接続の問題の原因を特定するのに役立ちます。
NAT トラバーサル クレームを注意深く読む方法
製品、プロトコル、またはアプリで NAT トラバーサルについて言及されているのを見つけたら、その主張を正確に読んでください。
役立つ質問には次のようなものがあります。
- その主張は一般的なネットワーク技術に関するものですか、それとも確認された製品の機能に関するものですか?
- どのネットワーク条件がサポートされ、どのネットワーク条件がサポートされないかについて説明されていますか?
- 完全な到達可能性を約束せずにフォールバック動作について言及していますか?
- ユーザーが職場、学校、ISP、プラットフォーム、または法的制限を無視できるという示唆を避けていますか?
- プライバシーの主張と接続性の主張は区別されますか?
最後の点は見落としがちです。 2 つのエンドポイントの接続を支援する機能は、自動的にプライバシーを保証するものではありません。プライバシー機能は自動的に接続を保証するものではありません。優れたドキュメントでは、これらのアイデアを分離しておく必要があります。
よくある質問
NAT トラバーサルは VPN と同じですか?
いいえ、NAT トラバーサルは、エンドポイント間のアドレス変換とフィルタリングを処理するための一連のネットワーク技術です。 VPN は、保護されたネットワーク トンネルを作成するためのより広範なカテゴリのテクノロジです。一部の VPN に似たアプリでは、NAT の動作を考慮する必要がある場合がありますが、概念は同じではありません。
UDP の穴あけは常に機能しますか?
いいえ。UDP のホール パンチは、NAT の動作、フィルタリング ルール、タイミング、およびネットワーク トポロジに依存します。研究と標準に関する議論はどちらも同じ現実を指摘しています。つまり、NAT の動作は多様であるため、フォールバック パスが必要になる可能性があります。
リレー フォールバックは直接接続よりも優れていますか?
それらは異なります。リレーは直接通信が不可能な場合に役立ちますが、遅延、帯域幅の使用、運用コストが増加する可能性があります。ダイレクト パスは、機能する場合にはより効率的ですが、より厳格なネットワークでは失敗する可能性があります。
この記事には、VPN Satelites が STUN、TURN、ICE、リレー、またはポート フォワーディングを使用していると記載されていますか?
いいえ。これらの用語は、一般的なネットワーキングの概念と標準の背景として説明されています。この記事は、VPN Satelites に関する製品固有の実装については主張しません。
NAT トラバーサルはネットワーク ルールをバイパスできますか?
この記事では、バイパスに関するガイダンスは提供されません。 NAT トラバーサルは接続動作の説明に役立ちますが、ユーザーは適用される法律、サービス規約、およびネットワーク ポリシーに従う必要があります。
結論
2 つのデバイス間のインターネット パスは必ずしも直接的または予測可能ではないため、NAT トラバーサルは重要です。 UDP ホール パンチは、一部のアプリケーションが NAT を介して直接通信を確立するのに役立ちますが、リレー フォールバックは、直接パスが失敗した場合に役立ちます。どちらのアイデアも便利ですが、どちらも普遍的な解決策ではありません。
VPN Satelites 読者にとって、最も実践的な教訓は、現実的な期待を設定することです。接続の信頼性は、アプリ、デバイス、ローカル ネットワーク、アップストリーム ネットワーク ポリシー、およびエンドポイント間のより広いルートによって異なります。これらの層を理解すると、トラブルシューティングがより冷静になり、製品の主張を批判的に読みやすくなります。
