対称NATおよびUDPホールパンチング


8

私はこの質問を読みましたが、対称NATの説明は十分に詳しくありませんでした。

誰かが以下の段落を理解するのを手伝ってくれませんか?

私は対称NATについてこれを読みました:

同じ内部IPアドレスとポートから特定の宛先IPアドレスとポートへの各要求は、同じ内部ホストが同じ送信元アドレスとポートを使用していても異なるパケットにパケットを送信する場合、一意の外部送信元IPアドレスとポートにマップされます。宛先では、異なるマッピングが使用されます。内部ホストからパケットを受信する外部ホストだけがパケットを送り返すことができます。

http://en.wikipedia.org/wiki/Network_address_translation#Types_of_NAT

そしてこれはUDPホールパンチングについてです:

UDPホールパンチングは、大規模な企業ネットワークでよく見られる対称NATデバイス(双方向NATとも呼ばれます)では機能しません。対称NATでは、既知のSTUNサーバーへの接続に関連付けられているNATのマッピングは、既知のサーバーからのデータの受信に制限されているため、既知のサーバーが参照するNATマッピングは、エンドポイントにとって有用な情報ではありません。

http://en.wikipedia.org/wiki/UDP_hole_punching

しかし、私はそれを本当に吸収していません。(クライアントが通信を開始するクライアント/サーバーアプリケーションでは)サーバーがNATデバイスによって明示的に許可されていない限り、他の方法でサーバーに通信できなかったと感じています。なぜそれが言っているのか理解できません。可能であれば、この説明を少し簡単にしていただけませんか。

私たちの環境では、同じように有名なソフトウェアベンダーが有名なリモートサポートツールを使用してサポートを提供できないという問題があります。クライアントはプロキシに対応していますが、一部の理由から、クライアントを使用せずに、ポート1153でUDPを介してまったく異なることを行うのが良い考えであると考えています。


1
答える前に、UDPホールパンチングが対称NATで機能しない理由を単に知りたいのですか、それとも特定の問題について質問していますか?あなたの問題は必ずしもどちらとも関連しているようには見えないので、私は興味があります。
TheCleaner 2013

はい、多分あなたは両方を説明できますか?つまり、なぜそれが機能しないのか、なぜ私の問題は関連していないように見えるのですか?
ジョン

チャットルームを作成したい場合は、チャットルームから始めましょう。少し時間があり、簡単かもしれません。そこからの回答を、ここで後で回答としてカット/ペーストします。
TheCleaner 2013

回答:


6

私たちのチャットから...だから他の人は完全な会話を取得できないかもしれませんが、基本はここにあります。

つまり、基本的なNAT = source address:port >> external address:port >> NAT>> new source address:port >> external address port

対称NATでは、静的マッピングであり、送信元と宛先の両方で毎回同じです。

例: 192.168.100.5:34983 going to 4.2.2.2:53 then REQUIRE it to be 216.222.222.222:44444 with destination 8.8.8.8:333333

「クライアントが通信を開始するクライアント/サーバーアプリケーションでは、NATデバイスによって明示的に許可されていない限り、サーバーは逆方向に通信できませんでした。」

あなたが言うその部分は正しく ないはずです:

クライアントが通信を開始するクライアント/サーバーアプリケーションでは、ソースがセッションで使用されているポートを介してセッションを確立した後、サーバーは逆の方法で通信できます。

2.2.2.2:43424が5.5.5.5:80になった場合、セッションが確立されると、5.5.5.5:80は2.2.2.2:43424に情報を送り返します。あなたの文章では...セッションは常に宛先に通信する送信元であり、宛先はパケット/情報/グラフィックス/何でも返信しません。

「私たちの環境には、同じように有名なソフトウェアベンダーが有名なリモートサポートツールを使用してサポートを提供できないという問題があります。クライアントはプロキシに対応していますが、一部の理由から、それを使用せず、ポート1153でUDPを介してまったく異なることを行うのは良い考えです。」

これは、別のポートを使用するように要求するため、ポートレベルでLogmein / Teamviewer /何でもブロックするだけである可能性があります... 1153で許可または通信する場合、ITの制限を回避できると考えています...どのアプリなのか、詳細がわからなくても思いつきます。対称NATまたはUDPホールパンチングとは何の関係もありません...少なくとも、それら自体が引き起こしている問題に関する限り。

彼らがどのリモートサポートツールを使用しているか、または彼らと協力して、希望するツールの使用方法を決定する方法について、サポートチームに相談することをお勧めします。特定のポートNATing /ルールを意味する場合は、それらとネットワークチームと協力して、その部分を理解する必要があります。

すべてが役立つことを願っています。


リモートサポートツールはLog Me Inであり、サードパーティのサプライヤがサポートのために使用しています。社内のファイアウォールでトラフィックを許可すると、ファイアウォールを通過するトラフィックを確認できました。しかし、何も戻ってきませんでした。ファイアウォールを通過する方法がなかったか、リモートサーバーが返信の送信先を判別できなかったようです。
ジョン

プロキシもあるので、何らかの形で干渉している可能性があります。
ジョン

アウトバウンド「許可ポリシー」がある場合、あなたの側がトラフィックを開始し、そのトラフィックが正しいNAT情報でリモートパーティに到達している場合、それは機能するはずです。こちらもご覧ください:help.logmein.com/…しかし、これをノックアウトするには、コンサルティングまたはオンサイトの専門知識が必要になる場合があります...
TheCleaner

4

ここに画像の説明を入力してください

ここに画像の説明を入力してください

Wikipediaの「ネットワークアドレス変換」ページから撮ったこれらの写真を見てください。

「フルコーンNAT」

  1. 内部アドレス(iAddr:iPort)が外部アドレス(eAddr:ePort)にマップされると、iAddr:iPortからのパケットはすべてeAddr:ePortを介して送信されます。
  2. すべての外部ホストは、eAddr:ePortにパケットを送信することにより、iAddr:iPortにパケットを送信できます。

対称NATの場合

  1. 同じ内部IPアドレスとポートから特定の宛先IPアドレスとポートへの各要求は、一意の外部ソースIPアドレスとポートにマップされます。同じ内部ホストが同じ送信元アドレスとポートを使用していても、異なる宛先にパケットを送信する場合、異なるマッピングが使用されます。
  2. 内部ホストからパケットを受信する外部ホストだけがパケットを送り返すことができます。

次に、UDPホールパンチングが対称NATで機能しない理由について説明します。Server1がSTUNサーバーで、Server 2が異なるプライベートネットワークのNATデバイスであるとします。UDPホールパンチングでは、クライアントがServer1に接続し、ポートマッピングがNATデバイスに作成されます。しかし、このクライアントがServer2の背後にあるホストに接続すると、NATデバイスは図2に示すように別のポートマッピングを作成します。Server1はServer2の背後にあるホストとクライアントポートマッピングを共有し、このポートマッピングでServer2は接続を確立できず、Server2は2番目を認識しません。 NATデバイスによって作成されたポートマッピング。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.