web-dev-qa-db-ja.com

複数のNAT=レイヤーを使用することはなぜ悪い考えなのですか、それともそうですか?

組織のコンピュータネットワークにはNAT 192.168/16のIPアドレス範囲があります。IPアドレスが192.168.xyのサーバーを持つ部門があり、このサーバーはこの部門のホストを処理します別のNAT IPアドレス範囲が172.16/16の場合。

したがって、2層のNATがあります。代わりにサブネット化しないのはなぜですか。これにより、ルーティングが容易になります。

NATの複数の層がパフォーマンスの低下を引き起こす可能性があると感じています。2つの設計戦略を比較してください。

更新:

@ジョンいくつかの詳細情報

友人との話し合いの中で、サブネット化が次の問題を引き起こすことに気づきました。コンピュータのARP要求は、組織のネットワーク全体をあふれさせます。ルーターがこれらのリクエストを転送しない場合、ある部門のPCは他の部門のPCに接続できなくなり、異なるNATの背後にある場合はとにかくそれを行うことができません。パケットスニファを使用すると、部門内のほとんどのコンピュータでWindowsでのファイル共有が有効になっているため、ARP要求が多数あることがわかりました。

この問題を解決するには?

また、2台のコンピューターが異なるNATの背後にある場合、それらを相互に接続する方法はありません。

19
Rohit Banga

マルチレイヤーNATを実行する際の唯一の実際の問題は、ネットワークトポロジが混乱することです。 NATの複数のレイヤーを使用する場合、組織内のすべてのホスト間の対称ルーティングを破棄し、ネットワーク内のプライベートアドレススペースが重複する可能性に出くわします。 n + 1のアドレス範囲NATレイヤーで使用されていたレイヤーNATレイヤー。これらのネットワークは互いにルーティングできませんが、 n + 1層のホストは、n層と同じアドレスを持つ可能性があり、サーバーのIDを混乱させます。

大規模なネットワークのトポロジをレイアウトする場合は、サブネットのホストに10. *または172.16-24。*のアドレスのみを使用します。その後、一部の部門または個人がNATを2倍にしたい場合、(192.168。*ネットワークを使用して)NAT Host。これらの二重NATされたネットワークのいずれかが大きくなりすぎるよりも多くのサブネットを作成する傾向があります。

6
jdizzle

マルチレベルNATの問題は、基本的に単一レイヤーNATの場合と同じですが、複合されます。といった:

  1. パケットの有効期間中に余分な作業が行われることによる遅延(ほとんどの場合、これは重要ではない可能性があります)

  2. どこから来たのかを知る。特定のリクエストがどこから来たのかを追跡しようとしている場合(おそらく、送信ファイアウォールが、スパムを送信したり、他の感染対象を検索したりしている侵害されたマシンのように見えるものをログに記録しています)、NATはそのような診断をはるかに困難にします。

  3. 着信接続ポート転送は、着信接続が必要な場合、セットアップと保守がより簡単です。

  4. 限られた数のポート。 NATは、さまざまなポートで送信元アドレスをそれ自体に変換することで機能します。たとえば、次のようになります。

    • マシン1は、ソー​​スがポート10000などのNATボックスのアドレスに変換されるため、ポート1024を使用して外部Webサーバーと通信します。
    • 同じマシンがソースポート1025を使用して、2つのリクエストを同時に、または別のWebサーバーに(通常ではない)2つのリクエストを送信します(2つの同時接続には異なるソースポートが必要です)。 NATボックスは、これを「送信元ポート10001の私」に変換します
    • 別のマシントークは、外部サーバーへの3つの接続を確立します。さて、NATボックスはこれらを「ポート10002、10003、10004の私」に変換します
    • パケットが外部マシンの形で戻ってくると、NATボックスは、ポート10000のパケット自体がポート1024のマシン1に実際に送信され、他のアクティブな接続も同様であることを認識します。

    これは、多くの発信接続-つまり、多くの接続を行うマシンを備えた大規模ネットワークまたは小規模ネットワーク(bittorrentプロトコルを実装するようなP2Pアプリケーションはmany同時接続を作成できる)ができるまで、すべてうまく機能します。 。 IPプロトコルには65536のポートしかなく、予約されている1024はありません。 60,000は多くのように聞こえるかもしれませんが、すぐに消費される可能性があるため、NATボックスは、削除できる古いマッピングを決定する必要があります。これは通常、「最も古いものをドロップする」ほど簡単ではありません。これは、奇妙なバグ(診断が困難なためにランダム接続が落ちる)になるか、マシンがしばらくの間新しい接続を確立できなくなるだけです。

  5. NATボックスにロードします。少し低電力のボックス(市販のNAT対応ルーターではなく、たとえば、CPUが分厚いフルPC)を使用してNAT追加の翻訳作業を行う場合(基本的なルーティングテーブルに従って単純にパケットを転送する場合と比べて)、転送速度が低下する可能性があります。インターネットアクセスの場合、これは問題になる可能性はほとんどありません(「ネット接続がボトルネックになる」)が、ローカルネットワークセグメント間でNATを実行しているため、かなり目立つ可能性があります。

9
David Spillett

パフォーマンスの低下/速度は、実際に使用するルーターの品質にかかっています。

良い点と悪い点については、単純にルーティングを使用できる場合は反対ですが、実際には環境と達成しようとしていることに依存します。

マシンが標準ポートで共有されているいくつかのことを実行するだけでよい場合は、ルーター/ NAT付与デバイスにアクセスして、必要なものを許可するルールを設定できます(1)。ただし、デバイスからデバイスへの多くのタスクを実行する場合は、各マシンに固有のIP(2)を設定して適切なルートを作成する方がはるかに簡単です。

(1)たとえば、1対多-1つのマシンにWebサーバーがあり、それを他のユーザーと共有したい場合-ルーターのルールをマシンのポート80に設定してから、外部ネットワーク(または内部nat-loopbackが有効になっている場合) http://router.ip にアクセスしてアクセスできます。

(2)ただし、すべてのマシンでWebサーバーを使用する場合、または多くのサービスを使用する場合、すべてのルールを設定するのは悪夢になります(ただし、不可能ではありません)。

シナリオについて-ある部門が192.168.xxと他の192.168.yxを使用している場合、デバイスを調べ、重複がない場合は、サブネットを/ 24から/ 16に変更するだけでよい(または逆の場合)、ルーターをスイッチまたは同等のものと交換し、サービスを失うことはありません。

それが正しく設定されている限り、ネットワークについて詳しく知らずに支援することは本当に難しいです。二重NATで「間違っている」ものは何もありません。ただし、本当に必要な場合、または非常に正当な理由がない限り、可能であれば移行を検討します(個人的な意見)


@iamrohitbanga-あなたの質問への回答(コメントへの回答が多い)。

比較は難しい-ルーティングは、すべてのマシンがすべてのマシンにアクセスできるプライベートネットワークに適しています。 Natはうまく機能しますが、通常は手動で着信ルール/ルートを設定する必要があるため、ルーティングを必要としないネットワークで主に使用されます。

たとえば、インターネット接続があり、NATを無効にしている場合は、手動でルートまたはブリッジモードを設定します。マシンはインターネットに直接接続されます。すべてのポートにアクセスでき、どのマシンでも必要なことを実行できます。

一方、NATを使用しているルーターがある場合は、外部IPを取得して「Nat-ed?」を提供します。 (用語については不明...)インターネット-すべての内部マシンにはインターネットからアクセスできないIPがありますが、手動のルールを設定できます(例:ポート80を1台のマシンに接続します...送信接続(ファイアウォールルールで許可)には非常に有効ですが、多くのサービスをホストしている場合や、動的ポート(ftp、 Windows ADなど)は、悪夢になる可能性があります。

この情報がお役に立てば幸いです。他に何か知りたい場合は、遠慮なくお問い合わせください。

6
William Hilsum

NAT(一般に、具体的には複数のレイヤー)の主な問題は、トラブルシューティングが非常に難しいことです。

5
Vatine

NATの最大の問題は、古いネットワークソフトウェアが変換を行うと、多くのアプリケーション(FTP、VoIPなど)が損傷することです)です。最新のファイアウォール/ゲートウェイには変換があります(シスコ用語でのフィックスアップ)それはたくさんそれをもっと簡単にします。

プライベートサブネット間でNAT=を使用している理由がわかりません。ルーティングするだけではどうですか。

4
pauska

ネットワークとクライアントをIPV6にアップグレードするだけで、NATを使用する必要がなくなります。

2

質問の新しい2番目の部分に答えるには...

ルーターはブロードキャストドメインを解除します-ルーターはarpパケットを転送せず、サブネット内にとどまります*。 Windowsのファイル共有(真剣に?).

サブネットあり:

サブネットの外からWindows共有にアクセスする必要がある場合は、IPアドレスを直接使用するか、DNSまたはWINSホスト名でサーバーを設定している場合にアクセスします。

NATの場合:

NATがPATの種類であり、1対1のマッピングではない場合、これが機能するようにポート転送を構成する必要があります。これは悪いことです。

すでに論じたように、NATはネットワーク機能を破壊するので、一般的に悪いことです。私たちは使用する必要があるためにのみ使用します。IPv6でロールします。

*もちろん、ブロードキャストフォワーダー/リレー/ヘルパーは存在します

1
Jon Rhoades