Warum verwenden nicht mehr Organisationen Inside-to-Inside-NAT oder ähnliche Lösungen, um NAT-Haarnadeln zuzulassen?


22

Inside-to-Inside-NAT (auch NAT-Loopback genannt) behebt Haarnadel-NAT-Probleme beim Zugriff auf einen Webserver über die externe Schnittstelle eines ASA oder eines ähnlichen Geräts von Computern über die interne Schnittstelle. Dadurch wird verhindert, dass DNS-Administratoren eine doppelte interne DNS-Zone mit den entsprechenden RFC1918-Adressen für ihre Server verwalten müssen, die mit öffentlichen Adressen NATted sind. Ich bin kein Netzwerktechniker, daher fehlt mir möglicherweise etwas, aber es scheint ein Kinderspiel zu sein, dies zu konfigurieren und zu implementieren. Asymmetrisches Routing kann ein Problem sein, kann jedoch leicht gemildert werden.

Nach meiner Erfahrung bevorzugen Netzwerkadministratoren / -ingenieure, dass Systemleute nur Split-DNS ausführen, anstatt ihre Firewalls so zu konfigurieren, dass sie mit NAT-Haarnadeln richtig umgehen. Warum ist das?


Vielleicht, weil DNS-Ansichten leichter zu beheben sind?
NickW

2
Möglicherweise sind bei Verwendung von DNS auf AD-Domänencontrollern (ein häufiges Szenario) keine Ansichten vorhanden.
MDMarra

2
Warum müssen Sie Ihre AD-Zone im Internet veröffentlichen? Wenn Ihr AD ad.example.comoder ähnlich ist (wie es sein sollte!), Besteht dieses Problem für alle öffentlichen example.comDNS-Einträge und es wird nichts internes extern veröffentlicht. Natürlich, wenn Sie Ihre AD die gleichen wie Ihre Präsenz in der Öffentlichkeit genannt haben Sie müssen Split-DNS verwenden, aber das ist kein Best - Practice - AD - Design.
MDMarra

5
Ich möchte hinzufügen, dass DNS-Ansichten nur dann leichter zu beheben sind, wenn Clients nie zwischen ihnen wechseln . Dinge können seltsamerweise schief gehen, wenn Clients ein zwischengespeichertes internes Ergebnis nach draußen bringen.
LapTop006

3
Clients sollten DNS-Antworten nicht zwischenspeichern, dafür sind DNS- Server da . Ich weiß, dass Windows das stille (und tödliche) Zwischenspeichern sehr mag, aber das ist einer der vielen Gründe, warum ich denke, dass es für den produktiven Einsatz ungeeignet ist.
MadHatter unterstützt Monica

Antworten:


11

Es gibt einige Gründe, warum ich es nicht tun würde:

  • Warum sollten Sie die DMZ-Router und die Firewall besonders belasten, wenn dies nicht erforderlich ist? Die meisten unserer internen Dienste befinden sich nicht in der DMZ, sondern im allgemeinen Unternehmensbereich, mit Vertretungsdiensten in der DMZ für gelegentlichen Fernzugriff. Wenn Sie nat von innen nach innen ausführen, wird die DMZ stärker belastet, was in unserem Fall erheblich wäre.
  • Wenn Sie DNAT + SNAT nicht ausführen, erhalten Sie asymettrisches Routing, dessen Richtigkeit bekanntermaßen schwierig ist. Sie SNAT also und verlieren die Quell-IP-Informationen. Es ist jedoch verdammt nützlich, Quell-IPs zu Zwecken der Fehlerbehebung mit Personen zu verknüpfen. Oder gelegentlich zu Nerfshooting-Zwecken bei Dummheit. "Hey, diese IP macht etwas Wackeliges auf nicht authentifiziertem Dienst X"

2
Nur ein Hinweis: Wenn Ihre Firewall L3-Routing ausführt und Ihre Routen für Ihre externen und internen Clients einen Sprung in die Firewall machen, sollten Sie sich keine Sorgen um asymmetrisches Routing machen müssen, oder?
MDMarra

12

Natürlich kann es keine eindeutige Antwort darauf geben, aber ich könnte mir eine Reihe von Gründen vorstellen:

  1. Eleganz: NAT ist anfangs nicht sehr elegant, aber aufgrund des eingeschränkten Adressraums von IPv4 eine Notwendigkeit. Wenn ich NAT vermeiden kann, werde ich es tun. Mit IPv6 ist das Problem auf jeden Fall behoben.
  2. Komplexität: Insbesondere in Fällen, in denen nicht nur ein einziger "Core" -Router alle Sicherheitsgrenzen festlegt, können die Filterkonfigurationen sehr schwierig werden. Entweder das, oder Sie müssten die NAT-Regeln auf nahezu alle Router-Geräte verteilen und verwalten.
  3. Hinweis: Überall dort, wo sich Firewall-Administratoren vom Rest des Server-Administratorteams unterscheiden, sind sie möglicherweise schwer zu erreichen. Um sicherzustellen, dass Änderungen nicht durch den Rückstand (oder die Abwesenheiten) des Firewall-Administrators verzögert werden, wird die Option ausgewählt, die Verantwortung im selben Team zu behalten
  4. Portabilität und gängige Praxis: Die Verwendung von DNS-Ansichten ist "genau das, was jeder weiß", um dieses Problem zu lösen. Nicht jeder Boundary-Router würde Loopback-NAT auf einfache Weise unterstützen, und weniger Menschen wissen wahrscheinlich, wie sie es in Ihrer spezifischen Umgebung richtig einrichten. Bei der Behebung von Netzwerkproblemen müsste die Besatzung die NAT-Haarnadelkonfiguration und alle ihre Auswirkungen kennen - selbst wenn sie einem scheinbar nicht damit zusammenhängenden Problem nachjagt

1
1. In dieser Situation wird NAT ohnehin verwendet. Hiermit wird kein NAT hinzugefügt, wenn zuvor noch kein NAT vorhanden war. In meinem Beispiel werden alle von demselben Gerät oder Gerätecluster verarbeitet. 4. Wie in meinem obigen Kommentar erwähnt, werden in einem sehr häufigen Szenario intern AD-Domänencontroller für DNS verwendet. Windows DNS unterstützt keine Ansichten. Außerdem habe ich festgestellt, dass die meisten modernen Router- / Firewall-Firmwares NAT-Hairpinning auf die eine oder andere Weise unterstützen.
MDMarra

1
@MDMarra einige Bemerkungen: 1. "Es gäbe eine NAT-Verrücktheit, um die man sich weniger kümmern müsste", habe ich im Grunde genommen gemeint 4. Wenn das interne DNS vorhanden ist, das für alle Clients obligatorisch ist, benötigen Sie keine Ansichten. Sie würden lediglich eine interne Zone erstellen und den gleichen Effekt erzielen, den Sie in Ihrer Frage erwähnt haben. Die obigen Überlegungen gelten weiterhin.
the-wabbit

1
Was für eine NAT-Verrücktheit? Welches spezifische Verhalten würde dies einführen, das Probleme verursacht? Ich habe an einer Universität gearbeitet, an der NAT-Hairpinning auf einem Netscreen-Cluster für über 100 externe Hosts konfiguriert war, und wir hatten nie ein Problem.
MDMarra

Beachten Sie auch , dass in diesem Szenario Hairpin NAT tatsächlich macht es so aussehen mehr wie die IPv6 - Lösung, weil unter IPv6 das System eine global erreichbare Adresse haben wird; Haarnadel-NAT simuliert dieses Verhalten.
Paul Gear

@MDMarra Die herausragendste "NAT-Verrücktheit" für den "Haarnadel-NAT" -Fall wäre der nicht optimale Routing-Pfad, dh die umgeschriebenen Pakete müssten den größten Teil des Pfades zurücklegen, den sie durchlaufen haben. Es ist bestenfalls verwirrend, dies in einem Packet Dump bei der Fehlerbehebung zu sehen. Ich glaube, andere haben das Problem des asymmetrischen Routings bereits in ihren Antworten erwähnt, was damit zusammenhängt. Es besteht kein Zweifel, dass Sie dafür sorgen können, dass es einwandfrei funktioniert. Aber es lohnt sich in den meisten Fällen IMO nicht.
the-wabbit

7

Haftungsausschluss - Dies ist eine Antwort von Flamebait.

Ein häufiger Grund, aus dem ich denke, dass Lösungen wie diese vermieden werden, ist eine irrationale Angst / ein irrationaler Hass der Netzwerkingenieure vor NAT . Wenn Sie einige Diskussionsbeispiele dazu sehen möchten, sehen Sie sich diese an:

Nach allem, was ich sagen kann, ist ein Großteil dieser Befürchtung auf die schlechten NAT-Implementierungen von Cisco zurückzuführen (in diesem Sinne ist dies möglicherweise nicht irrational), aber meiner Meinung nach ist der "klassische" Netzwerktechniker im Bereich NAT so gut ausgebildet schlechte "Weltanschauung, dass er oder sie offensichtliche Beispiele wie dieses nicht sehen kann, in denen es vollkommen sinnvoll ist und die Lösung tatsächlich vereinfacht.

Los geht's - stimmen Sie nach Herzenslust ab! :-)


1
Ich weiß nicht, ob ich das für eine irrationale Angst halte. Die Erfahrung hat mich gelehrt, dass NAT mit vielen Dingen brechen oder seltsame Dinge tun kann.

1
@Kce Aber wenn Sie NAT bereits auf Ihrer externen Schnittstelle verwenden, welchen Unterschied macht die Konfiguration von NAT-Loopback?
MDMarra

@ DMARRA - Keine wirklich. Ich war der ziemlich pedantische Punkt, dass manchmal die Angst des Netzwerkserviceteams vor NAT nicht irrational ist.

Ich habe keine Angst vor NAT, ich hasse es.
Michael Hampton

1
Beitrag bearbeitet, um Hass einzuschließen. :-)
Paul Gear

3

Meine Vermutung ist:

  1. Split DNS ist einfacher zu verstehen.
  2. NAT Hairpin verbraucht Ressourcen auf dem Router, Split-DNS hingegen nicht.
  3. Router haben möglicherweise Bandbreitenbeschränkungen, die Sie nicht durch ein Split-DNS-Setup erhalten.
  4. Split-DNS ist immer leistungsfähiger, da Sie Routing- / NAT-Schritte vermeiden.

Auf der positiven Seite für Haarnadel NAT,

  • Sobald es eingerichtet ist, funktioniert es einfach.
  • Keine Probleme mit DNS-Caches für Laptops, die zwischen dem Arbeitsnetzwerk und dem öffentlichen Internet verschoben wurden.
  • DNS für einen Server wird nur an einem Ort verwaltet.

Für ein kleines Netzwerk mit geringen Anforderungen an den Datenverkehr zu einem internen Server würde ich Haarnadel-NAT wählen. Für ein größeres Netzwerk mit vielen Verbindungen zum Server und wenn Bandbreite und Latenz wichtig sind, wählen Sie Split-DNS.


2

Aus meiner Sicht hat sich dies zwischen dem Übergang von Cisco Pix zu ASA ein wenig geändert. Verlor den aliasBefehl. Im Allgemeinen erfordert der Zugriff auf die externe Adresse über die interne Schnittstelle einer Cisco-Firewall einige Tricks. Siehe: Wie erreiche ich meinen internen Server über die externe IP?

Wir müssen jedoch nicht immer eine doppelte interne DNS-Zone verwalten. Der Cisco ASA kann DNS-Abfragen für externe Adressen an interne Adressen umleiten, wenn dies in der NAT-Anweisung konfiguriert ist. Ich bevorzuge es jedoch, eine interne Zone für die öffentliche DNS-Zone beizubehalten, um diese Granularität zu erreichen und dies an einem Ort zu verwalten, anstatt auf die Firewall zuzugreifen.

Normalerweise gibt es nur wenige Server, die dies in einer Umgebung erfordern (E-Mail, Web, einige öffentliche Dienste), sodass dies kein großes Problem darstellt.


Ist es schwierig, wenn es von Cisco unterstützt und dokumentiert wird ? Sicher, es ist ein bisschen mehr Arbeit, aber macht es das schwierig oder schwierig?
MDMarra

Trick, dass die Leute es nicht wissen / erwarten / darüber nachdenken, wenn sie es nicht schon wissen. Es ist eine häufig gestellte Frage: Wie kann ich von der Innenseite meines Cisco Firewall eine externe IP erreichen .
ewwhite

Typically, there are only a few servers that may require this within an environmentVielleicht an einigen Orten, aber ich habe an einer Universität mit mehr als 100 Servern / Geräten in einer DMZ und bei einem Test- / Zertifizierungsanbieter mit mehr als 40 Servern in drei DMZs gearbeitet. Bei kleineren Unternehmen sind möglicherweise nur ein oder zwei Server nach außen gerichtet, dies muss jedoch nicht bei allen der Fall sein.
MDMarra

Wenn sich die Server in einer DMZ befinden, ist dies weniger ein Problem, oder?
Ewwhite

In diesem Fall bedeutet "DMZ", dass eine Verbindung mit der externen Schnittstelle der Firewall besteht, wobei zwischen den vorhandenen Zonen die Standardverweigerungsregeln gelten.
MDMarra

2

Ich kann mir ein paar Gründe vorstellen:

  1. Viele Organisationen haben DNS bereits aufgeteilt, weil sie nicht alle ihre internen DNS-Informationen in der Welt veröffentlichen möchten. Daher ist es nicht sehr aufwändig, die wenigen Server zu verwalten, die auch über eine öffentliche IP zugänglich sind.
  2. Wenn ein Unternehmen und sein Netzwerk größer werden, trennen sie häufig die Systeme, die interne Mitarbeiter bedienen, von den Servern, die externe Mitarbeiter bedienen. Das Weiterleiten an externe Mitarbeiter zur internen Verwendung kann daher einen viel längeren Netzwerkpfad bedeuten.
  3. Je weniger Änderungen zwischengeschaltete Geräte an Paketen vornehmen, desto besser sind Latenz, Reaktionszeit, Gerätelast und Fehlerbehebung.
  4. (zugegebenermaßen sehr geringfügig) Es gibt Protokolle, bei denen NAT immer noch nicht funktioniert, wenn das NAT-Gerät nicht über die Header des Pakets hinausgeht und die darin enthaltenen Daten mit den neuen IP-Adressen ändert. Auch wenn es sich nur um ein institutionelles Gedächtnis handelt, ist es dennoch ein wichtiger Grund für die Menschen, es zu vermeiden, insbesondere wenn sie sich mit einem Protokoll befassen, bei dem sie sich nicht hundertprozentig sicher sind.

0

Wenn ich NAT-Loopback verwenden würde, wäre ich etwas besorgt darüber, wie das NAT-Gerät mit gefälschten Quelladressen umgehen wird. Wenn nicht überprüft wird, an welcher Schnittstelle das Paket eingegangen ist, kann ich interne Adressen aus dem WAN fälschen und Pakete mit internen Adressen an den Server senden. Ich konnte keine Antworten erhalten, kann den Server jedoch unter Verwendung einer internen Adresse gefährden.

Ich würde NAT-Loopback einrichten, den DMZ-Switch anschließen und Pakete mit gefälschten internen Quelladressen senden. Überprüfen Sie das Serverprotokoll, um festzustellen, ob sie empfangen wurden. Dann würde ich zum Coffee Shop gehen und sehen, ob mein ISP gefälschte Adressen blockiert. Wenn ich feststellen würde, dass mein NAT-Router die Quellschnittstelle nicht überprüft, würde ich wahrscheinlich keinen NAT-Loopback verwenden, selbst wenn mein ISP dies überprüft.


Es tut mir leid, ich verstehe möglicherweise falsch, was Sie sagen, aber RFC1918-Adressen werden nicht über das Internet weitergeleitet, sodass ich nicht sehe, was der Versuch, sie über das WAN zu fälschen, bewirken wird. Sie werden nicht einmal den ersten Sprung machen.
MDMarra

Die Zieladresse ist die öffentliche Adresse des NAT auf dem Port, der dem Server zugeordnet ist. Die Quelladresse ist eine der privaten IP-Adressen im Inneren des NAT. Quelladressen werden beim Routing nicht verwendet und nicht von jedem öffentlichen Router überprüft. Der einzige Unterschied zu einer legitimen internen Abfrage besteht darin, dass das Paket vom WAN eingeht.
Kent England
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.