web-dev-qa-db-ja.com

NATまたは類似のソリューションを使用してNATヘアピンを許可するために、

内部から内部へNAT aka NATループバックはヘアピンを解決しますNATの外部インターフェイス上のWebサーバーにアクセスするときの問題内部インターフェイス上のコンピューターからのASAまたは同様のデバイス。これにより、DNS管理者は、パブリックアドレスにNAT変換されたサーバーに対応するRFC1918アドレスを持つ重複する内部DNSゾーンを維持する必要がなくなります。私はネットワークエンジニアではないので、何かが足りないかもしれませんが、これは構成と実装が非常に簡単なようです。非対称ルーティングは問題になる可能性がありますが、簡単に軽減できます。

私の経験では、ネットワーク管理者/エンジニアは、NATヘアピンを適切に処理するようにファイアウォールを構成するのではなく、システム担当者がsplit-dnを実行するだけの方を好みます。これはなぜですか?

22
MDMarra

私がそれをしない理由はいくつかあります:

  • 必要がないのにDMZルーターとファイアウォールに余分な負担をかけるのはなぜですか?ほとんどの内部サービスはDMZではありませんが、一般的な企業領域にあります、DMZのプロキシサービスで不定期にリモートアクセスします。内部から内部へのnatを実行すると、DMZにより多くの負荷がかかります。この場合、これは重要になります。
  • DNAT + SNATを行わない場合、非対称ルーティングが行われますが、これは正しく行うのが非常に難しいことで有名です。したがって、SNATを実行すると、ソースIP情報が失われます。ただし、トラブルシューティングの目的でソースIPをユ​​ーザーにリンクすることは非常に便利です。または、愚かさの場合には、たまに目的を練る。 「このIPは認証されていないサービスXで何かおかしなことをしています」「ああ、imapサーバーのログを見てみましょう」。
11

明らかに、これには明確な答えはありませんが、いくつかの理由が考えられます。

  1. エレガンス:NATは、そもそもエレガントではありませんが、IPv4の制限されたアドレススペースでの必要性です。NATを回避できれば、回避できます。IPv6では、問題はいずれ解消されます。
  2. 複雑さ:特に、すべてのセキュリティ境界を作成する単一の「コア」ルーターがない場合は、フィルター構成が非常に扱いにくくなる可能性があります。または、NATルールをほぼすべてのルーターデバイスに分散して維持する必要があります。
  3. 参照:ファイアウォール管理者が他のサーバー管理チームとは異なる場所にいる場合は、連絡を取るのが難しい場合があります。変更がファイアウォール管理者のバックログ(または休暇)によって遅延しないようにするために、同じチームで責任を維持するオプションが選択されています
  4. 移植性と一般的な実践:DNSビューを使用することは、この問題を解決するために「誰もが知っていることだけを行う」ことです。すべての境界ルーターがループバックをサポートするわけではないNAT簡単な方法で、特定の環境で正しく設定する方法を知っている人は少なくなります。ネットワークの問題をトラブルシューティングする場合、スタッフはヘアピンNAT構成とそのすべての影響を認識-明らかに無関係な問題を追跡している場合でも
12
the-wabbit

免責事項-これはフレームベイトの答えです。

このような解決策が回避されると私が思う一般的な理由は、NATの不合理な恐怖/憎悪がネットワークエンジニアの側にあることです )これに関する議論のいくつかの例を見たい場合は、これらをチェックしてください:

私が知ることができることから、この恐怖の多くは、NATのCiscoの貧弱な実装に起因します(つまり、その意味でそれは非合理的ではないかもしれません)。 「NATは悪い」という世界観でよく学ばれているため、このような明白な例を見ることができず、完全に意味があり、実際にソリューションを簡素化しています。

よろしくお願いします-心ゆくまで投票してください! :-)

7
Paul Gear

私の推測は:

  1. スプリットDNSはより簡単に理解されます。
  2. NATヘアピンはルーターのリソースを使い果たしますが、split-dnsは使いません。
  3. ルーターには、split-dns設定では得られない帯域幅制限がある場合があります。
  4. ルーティング/ NATステップを回避することで、split-dnsは常にパフォーマンスが向上します。

ヘアピンNATのプラス面では、

  • セットアップが完了すると機能します。
  • ラップトップのDNSキャッシュに関する問題は、仕事用ネットワークと公衆インターネット間で移動していません。
  • サーバーのDNSは1か所でのみ管理されます。

内部サーバーへのトラフィック要件が低い小規模ネットワークの場合、ヘアピンNATを使用します。サーバーへの接続数が多く、帯域幅と待ち時間が重要な大規模ネットワークの場合は、split-dnを使用します。

3
Matt

私はいくつかの理由を考えることができます:

  1. 多くの組織は、内部DNS情報のすべてを世界に公開したくないため、すでにDNSを分割しています。そのため、パブリックIPを介して公開されているいくつかのサーバーを処理するための追加の作業はそれほど多くありません。
  2. 組織とそのネットワークが大きくなると、内部の人々にサービスを提供するシステムと外部にサービスを提供するサーバーを分離することが多いため、内部での使用のために外部のサーバーにルーティングする場合、ネットワークパスがはるかに長くなる可能性があります。
  3. 中間デバイスがパケットに加える変更が少ないほど、レイテンシ、応答時間、デバイスの負荷、トラブルシューティングの点で優れています。
  4. (非常にマイナー、確かに)NATであるプロトコルは、NATを実行するデバイスがパケットのヘッダーを超えず、新しいIPアドレスでその中のデータを変更しない場合でも壊れます) 。たとえそれが制度的記憶の単なる例であるとしても、それが人々が100%確実ではないプロトコルを扱っている場合は特に、人々がそれを回避する正当な理由です。
2
Jed Daniels

私の観点からは、これはCisco PixからASAへの移行の間に少し変化しました。 aliasコマンドを失った。また、一般に、Ciscoファイアウォールの内部インターフェイスから外部アドレスにアクセスするには、何らかのトリックが必要です。参照: 外部IPで内部サーバーにアクセスするにはどうすればよいですか?

ただし、内部DNSゾーンの複製を常に維持する必要はありません。 Cisco ASAは、NATステートメントで設定されている場合、外部アドレスのDNSクエリを内部アドレスにリダイレクトできます。しかし、その粒度とファイアウォールに近づくのではなく、1つの場所でこれを管理できます。

通常、環境(メール、Web、いくつかの公共サービス)内でこれを必要とする可能性のあるサーバーは数台しかないため、大きな問題にはなりませんでした。

2
ewwhite

NATループバックを使用する場合、NATデバイスがスプーフィングされたソースアドレスをどのように処理するかについて少し心配になります。パケットが着信したインターフェイスを確認しない場合は、WANから内部アドレスを偽装し、内部アドレスを使用してパケットをサーバーに送信できます。返信は得られませんでしたが、内部アドレスを使用してサーバーを危険にさらす可能性があります。

私はNATループバックをセットアップし、DMZスイッチに接続して、スプーフィングされた内部送信元アドレスでパケットを送信します。サーバーログをチェックして、それらが受信されたかどうかを確認してください。それから私はコーヒーショップに行き、私のISPがスプーフィングされたアドレスをブロックしているかどうかを確認します。 NATルーターがソースインターフェイスをチェックしていないことがわかった場合、ISPがチェックしている場合でも、おそらくNATループバックを使用しません。

0
Kent England