Informationen zu NAT in Azure VPN Gateway
Dieser Artikel bietet eine Übersicht über die Unterstützung der Netzwerkadressenübersetzung (Network Address Translation, NAT) in Azure VPN Gateway. NAT definiert den Mechanismus, mit dem eine IP-Adresse in eine andere IP-Adresse in einem IP-Paket übersetzt wird. Es gibt mehrere Szenarien für NAT:
- Verbinden mehrerer Netzwerke mit sich überschneidenden IP-Adressen
- Verbinden von Netzwerken mit privaten IP-Adressen (RFC1918) mit dem Internet (Internet-Breakout)
- Verbinden von IPv6-Netzwerken mit IPv4-Netzwerken (NAT64)
Wichtig
Die Netzwerkadressenübersetzung in Azure VPN Gateway unterstützt das erste Szenario, um lokale Netzwerke oder Zweigstellen mit einem virtuellen Azure-Netzwerk mit sich überschneidenden IP-Adressen zu verbinden. Internet-Breakout und NAT64 werden NICHT unterstützt.
Überlappende Adressräume
Organisationen verwenden für die interne Kommunikation in ihren privaten Netzwerken häufig private IP-Adressen gemäß Definition in RFC1918. Wenn diese Netzwerke per VPN über das Internet oder ein privates WAN verbunden werden, dürfen sich die Adressräume nicht überschneiden, da die Kommunikation andernfalls nicht möglich ist. Um zwei oder mehr Netzwerke mit sich überschneidenden IP-Adressen zu verbinden, wird NAT für Gatewaygeräte bereitgestellt, die diese Netzwerke verbinden.
NAT-Typ: statisch und dynamisch
Mithilfe von NAT für ein Gatewaygerät werden die Quell- und/oder Ziel-IP-Adressen basierend auf NAT-Richtlinien oder -Regeln übersetzt, um Adressenkonflikte zu vermeiden. Es gibt verschiedene Arten von NAT-Übersetzungsregeln:
Statisches NAT: Regeln für die statische Netzwerkadressenübersetzung definieren eine feste Adresszuordnung. Eine vorgegebene IP-Adresse wird derselben Adresse aus dem Zielpool zugeordnet. Die Zuordnungen für statische Regeln sind zustandslos, da die Zuordnung fest ist.
Dynamisches NAT: Bei Regeln für die dynamische Netzwerkadressenübersetzung kann eine IP-Adresse basierend auf der Verfügbarkeit oder mit einer anderen Kombination aus IP-Adresse und TCP/UDP-Port in verschiedene Ziel-IP-Adressen übersetzt werden. Letzteres wird auch als NAPT (Network Address and Port Translation) bezeichnet. Dynamische Regeln führen zu zustandsbehafteten Übersetzungszuordnungen, die von den Datenverkehrsflüssen zu einem bestimmten Zeitpunkt abhängen.
Hinweis
Wenn dynamische NAT-Regeln verwendet werden, ist der Datenverkehr unidirektional, d. h. die Kommunikation muss von dem Standort aus initiiert werden, der im Feld „Interne Zuordnung“ der Regel angegeben ist. Wenn der Datenverkehr von der externen Zuordnung initiiert wird, wird die Verbindung nicht hergestellt. Wenn Sie bidirektionalen Datenverkehr benötigen, dann verwenden Sie eine statische NAT-Regel, um eine 1:1-Zuordnung zu definieren.
Ein weiterer Aspekt ist die Größe des Adresspools für die Übersetzung. Wenn die Größe des Zieladresspools mit der des ursprünglichen Adresspools identisch ist, verwenden Sie die statische NAT-Regel, um eine 1:1-Zuordnung in sequenzieller Reihenfolge zu definieren. Wenn der Zieladresspool kleiner ist als der ursprüngliche Adresspool, verwenden Sie eine dynamische NAT-Regel, um die Unterschiede zu berücksichtigen.
Wichtig
- Die Netzwerkadressenübersetzung wird für die folgenden SKUs unterstützt: VpnGw2~5, VpnGw2AZ~5AZ.
- NAT wird nur für standortübergreifende IPsec-Verbindungen unterstützt. VNet-zu-VNet-Verbindungen oder P2S-Verbindungen werden nicht unterstützt.
- Jede dynamischen NAT-Regel kann einer einzigen Verbindung zugewiesen werden.
NAT-Modus: eingehend und ausgehend
Jede NAT-Regel definiert eine Adresszuordnung oder eine Übersetzungsbeziehung für den entsprechenden Netzwerkadressraum:
Eingehend: Eine Regel vom Typ IngressSNAT ordnet einen lokalen Netzwerkadressraum einem übersetzten Adressraum zu, um eine Adressenüberschneidung zu vermeiden.
Ausgehend: Eine Regel vom Typ EgressSNAT ordnet den Azure-VNet-Adressraum einem anderen übersetzten Adressraum zu.
Für jede NAT-Regel geben die folgenden zwei Felder die Adressräume vor und nach der Übersetzung an:
Interne Zuordnungen: Der Adressraum vor der Übersetzung. Bei einer Eingangsregel entspricht dieses Feld dem ursprünglichen Adressraum des lokalen Netzwerks. Bei einer Ausgangsregel ist dies der ursprüngliche VNet-Adressraum.
Externe Zuordnungen: Der Adressraum nach der Übersetzung für lokale Netzwerke (eingehend) oder VNet (ausgehend). Wenn verschiedene Netzwerke mit einem Azure-VPN-Gateway verbunden sind, dürfen sich die Adressräume für sämtliche externe Zuordnungen nicht gegenseitig oder mit den Netzwerken überschneiden, die ohne NAT verbunden sind.
NAT und Routing
Sobald eine NAT-Regel für eine Verbindung definiert wurde, ändert sich der effektive Adressraum für die Verbindung mit der Regel. Wenn BGP für das Azure-VPN-Gateway aktiviert ist, wählen Sie die Option „BGP-Routenübersetzung aktivieren“ aus, um die für Verbindungen mit NAT-Regeln erlernten und angekündigten Routen automatisch zu konvertieren:
Gelernte Routen: Die Zielpräfixe der Routen, die über eine Verbindung mit den IngressSNAT-Regeln gelernt wurden, werden von den Präfixen für die interne Zuordnung (Prä-NAT) in die Präfixe der externen Zuordnung (Post-NAT) dieser Regeln übersetzt.
Angekündigte Routen: Das Azure-VPN-Gateway kündigt die Präfixe für die externe Zuordnung (Post-NAT) der EgressSNAT-Regeln für den VNet-Adressraum und die gelernten Routen mit Post-NAT-Adresspräfixen von anderen Verbindungen an.
Überlegungen zur BGP-Peer-IP-Adresse für ein lokales Netzwerk mit Netzwerkadressenübersetzung:
- APIPA-Adresse (169.254.0.1 bis 169.254.255.254): NAT wird mit BGP-APIPA-Adressen nicht unterstützt.
- APIPA-fremde Adresse: Schließen Sie die BGP-Peer-IP-Adressen aus dem NAT-Bereich aus.
Hinweis
Die gelernten Routen für Verbindungen ohne IngressSNAT-Regeln werden nicht konvertiert. Die für Verbindungen ohne EgressSNAT-Regeln angekündigten VNet-Routen werden ebenfalls nicht konvertiert.
NAT-Beispiel
Das folgende Diagramm zeigt ein Beispiel für Azure-VPN-NAT-Konfigurationen:
Das Diagramm zeigt ein Azure-VNet und zwei lokale Netzwerke, alle mit dem Adressraum 10.0.1.0/24. Erstellen Sie die folgenden Regeln, um diese beiden Netzwerke mit dem Azure-VNet und dem VPN-Gateway zu verbinden:
IngressSNAT-Regel 1: Diese Regel übersetzt den lokalen Adressraum 10.0.1.0/24 in 192.168.2.0/24.
IngressSNAT-Regel 2: Diese Regel übersetzt den lokalen Adressraum 10.0.1.0/24 in 192.168.3.0/24.
EgressSNAT-Regel 1: Diese Regel übersetzt den VNet-Adressraum 10.0.1.0/24 in 192.168.1.0/24.
Im Diagramm umfasst jede Verbindungsressource die folgenden Regeln:
Verbindung 1 (VNet Zweigstelle 1):
- IngressSNAT-Regel 1
- EgressSNAT-Regel 1
Verbindung 2 (VNet Zweigstelle 2)
- IngressSNAT-Regel 2
- EgressSNAT-Regel 1
Basierend auf den Regeln, die den Verbindungen zugeordnet sind, finden Sie hier die Adressräume für jedes Netzwerk:
Netzwerk | Ursprünglich | Übersetzt |
---|---|---|
VNet | 10.0.1.0/24 | 192.168.1.0/24 |
Zweigstelle 1 | 10.0.1.0/24 | 192.168.2.0/24 |
Verzweigung 2 | 10.0.1.0/24 | 192.168.3.0/24 |
Das nachstehende Diagramm zeigt ein IP-Paket von Verzweigung 1 zum VNet, vor und nach der NAT-Übersetzung:
Wichtig
Eine einzelne SNAT-Regel definiert die Übersetzung für beide Richtungen eines bestimmten Netzwerks:
- Eine IngressSNAT-Regel definiert die Übersetzung der Quell-IP-Adressen, die aus dem lokalen Netzwerk beim Azure-VPN-Gateway eingehen. Außerdem wird die Übersetzung der Ziel-IP-Adressen verarbeitet, die das VNet verlassen und an dasselbe lokale Netzwerk gehen.
- Eine EgressSNAT-Regel definiert die Übersetzung der Quell-IP-Adressen, die das Azure-VPN-Gateway verlassen und an die lokalen Netzwerke gehen. Außerdem wird die Übersetzung der Ziel-IP-Adressen für Pakete verarbeitet, die über diese Verbindungen mit der EgressSNAT-Regel beim VNet eingehen.
- In beiden Fällen werden keine DNAT-Regeln benötigt.
NAT-Konfiguration
Um die NAT-Konfiguration wie oben gezeigt zu implementieren, erstellen Sie zunächst die NAT-Regeln in Ihrem Azure-VPN-Gateway und anschließend die Verbindungen mit den entsprechenden zugeordneten NAT-Regeln. Die Schritte zum Konfigurieren von NAT für standortübergreifende Verbindungen finden Sie unter Konfigurieren von NAT für Azure-VPN-Gateways.
NAT-Einschränkungen und -Überlegungen
Wichtig
Es gibt einige Einschränkungen für das NAT-Feature.
- Die Netzwerkadressenübersetzung wird für die folgenden SKUs unterstützt: VpnGw2~5, VpnGw2AZ~5AZ.
- Die Netzwerkadressenübersetzung wird nur für standortübergreifende IPsec-/IKE-Verbindungen unterstützt. VNet-zu-VNet-Verbindungen oder P2S-Verbindungen werden nicht unterstützt.
- NAT-Regeln werden für Verbindungen, für die Use Policy Based Traffic Selectors (Richtlinienbasierte Datenverkehrsselektoren verwenden) aktiviert ist, nicht unterstützt.
- Die maximale unterstützte Subnetzgröße für dynamische NAT ist /26.
- Portzuordnungen können nur mit statischen NAT-Typen konfiguriert werden. Dynamische NAT-Szenarien gelten nicht für Portzuordnungen.
- Für Portzuordnungen werden derzeit keine Bereiche akzeptiert. Es muss ein einzelner Port eingegeben werden.
- Portzuordnungen können sowohl für TCP- als auch UDP-Protokolle verwendet werden.
Häufig gestellte Fragen zu NAT
Wird NAT von allen Azure-VPN-Gateway-SKUs unterstützt?
NAT wird unter VpnGw2 zu VpnGw25 und vpnGw2AZ zu VpnGw5AZ unterstützt.
Kann ich NAT bei VNet-to-VNet- oder P2S-Verbindungen verwenden?
Nein
Wie viele NAT-Regeln kann ich auf einem VPN-Gateway verwenden?
Sie können bis zu 100 NAT-Regeln (Ein- und Ausgangsregeln kombiniert) auf einem VPN Gateway erstellen.
Kann ich einen Schrägstrich (/) in einem NAT-Regelnamen verwenden?
Nein Sie werden eine Fehlermeldung erhalten.
Wird NAT auf alle Verbindungen an einem VPN-Gateway angewendet?
NAT wird auf die Verbindungen mit NAT-Regeln angewendet. Wenn eine Verbindung keine NAT-Regel aufweist, wird NAT für diese Verbindung nicht wirksam. Auf demselben VPN Gateway können einige Verbindungen mit NAT und andere Verbindungen ohne NAT zusammenarbeiten.
Welche NAT-Typen unterstützen VPN Gateways?
VPN Gateways unterstützen nur statisches 1:1-NAT und dynamisches NAT. NAT64 wird nicht unterstützt.
Funktioniert NAT bei VPN-Gateways vom Typ „Aktiv-Aktiv“?
Ja. NAT funktioniert sowohl bei VPN-Gateways vom Typ „Aktiv-Aktiv“ als auch „Aktiv-Standby“. Jede NAT-Regel wird auf eine einzelne Instanz des VPN-Gateways angewendet. Erstellen Sie in Aktiv/Aktiv-Gateways eine separate NAT-Regel für jede Gateway-Instanz über das Feld IP-Konfigurations-ID.
Funktioniert NAT mit BGP-Verbindungen?
Ja, Sie können BGP mit NAT verwenden. Hier folgen einige wichtige Überlegungen:
Wählen Sie auf der Konfigurationsseite für NAT-Regeln die Option BGP-Routenübersetzung aktivieren aus, um sicherzustellen, dass die erlernten und angekündigten Routen auf der Grundlage der mit den Verbindungen verbundenen NAT-Regeln in Post-NAT-Adresspräfixe (externe Zuordnungen) übersetzt werden. Die lokalen BGP-Router müssen genau die Präfixe ankündigen, die in den IngressSNAT-Regeln definiert sind.
Wenn der lokale VPN-Router eine reguläre, nicht-APIPA-Adresse verwendet und diese mit dem VNet-Adressraum oder anderen lokalen Netzwerkräumen kollidiert, stellen Sie sicher, dass die IngressSNAT-Regel die BGP-Peer-IP in eine eindeutige, nicht überlappende Adresse übersetzt. Fügen Sie die Post-NAT-Adresse in das Feld BGP-Peer-IP-Adresse des lokalen Netzwerkgateways ein.
NAT wird mit BGP-APIPA-Adressen nicht unterstützt.
Muss ich die passenden DNAT-Regeln für die SNAT-Regel erstellen?
Nein Eine einzelne SNAT-Regel (Übersetzung der Quellnetzwerkadresse) definiert die Übersetzung für beide Richtungen eines bestimmten Netzwerks:
Eine IngressSNAT-Regel definiert die Übersetzung der Quell-IP-Adressen, die aus dem lokalen Netzwerk beim VPN Gateway eingehen. Außerdem wird die Übersetzung der Ziel-IP-Adressen verarbeitet, die das virtuelle Netzwerk verlassen und an dasselbe lokale Netzwerk gehen.
Eine EgressSNAT-Regel definiert die Übersetzung der Quell-IP-Adressen des VNet, die das VPN Gateway verlassen und an die lokalen Netzwerke gehen. Außerdem wird die Übersetzung der Ziel-IP-Adressen für Pakete verarbeitet, die über die Verbindungen mit der EgressSNAT-Regel beim virtuellen Netzwerk eingehen.
In beiden Fällen benötigen Sie keine DNAT-Regeln (Destination Network Address Translation).
Wie muss ich vorgehen, wenn mein VNet oder mein lokaler Netzwerkgatewayadressraum zwei oder mehr Präfixe aufweist? Kann ich NAT auf alle oder nur auf eine Teilmenge anwenden?
Sie müssen für jedes Präfix eine NAT-Regel erstellen, da jede NAT-Regel nur ein Adresspräfix für NAT enthalten kann. Wenn der Adressraum des lokalen Netzwerkgateways z. B. aus 10.0.1.0/24 und 10.0.2.0/25 besteht, können Sie zwei Regeln erstellen:
- IngressSNAT-Regel 1: Zuordnung von 10.0.1.0/24 zu 192.168.1.0/24.
- IngressSNAT-Regel 2: Zuordnung von 10.0.2.0/25 zu 192.168.2.0/25.
Die beiden Regeln müssen mit den Präfixlängen der entsprechenden Adresspräfixe übereinstimmen. Das Gleiche gilt für EgressSNAT-Regeln für den VNet-Adressraum.
Wichtig
Wenn Sie nur eine Regel mit der obigen Verbindung verknüpfen, wird der andere Adressraum nicht übersetzt.
Welche IP-Bereiche kann ich für die externe Zuordnung verwenden?
Sie können jeden geeigneten IP-Bereich für die externe Zuordnung verwenden, einschließlich öffentlicher und privater IP-Adressen.
Kann ich verschiedene EgressSNAT-Regeln verwenden, um meinen VNet-Adressraum in verschiedene Präfixe für lokale Netzwerke zu übersetzen?
Ja. Sie können mehrere EgressSNAT-Regeln für denselben VNet-Adressraum erstellen und die EgressSNAT-Regeln dann auf verschiedene Verbindungen anwenden.
Kann ich dieselbe IngressSNAT-Regel für verschiedene Verbindungen verwenden?
Ja. Sie verwenden in der Regel dieselbe IngressSNAT-Regel, wenn die Verbindungen für dasselbe lokale Netzwerk bestimmt sind, um Redundanz bereitzustellen. Sie können nicht dieselbe Eingangsregel verwenden, wenn die Verbindungen für verschiedene lokale Netzwerke bestimmt sind.
Benötige ich sowohl Eingangs- als auch Ausgangsregeln für eine NAT-Verbindung?
Sie benötigen sowohl Eingangs- als auch Ausgangsregeln für dieselbe Verbindung, wenn sich der lokale Netzwerkadressraum mit dem VNet-Adressraum überschneidet. Wenn der VNet-Adressraum für alle verbundenen Netzwerke eindeutig ist, benötigen Sie die EgressSNAT-Regel für diese Verbindungen nicht. Sie können die Eingangsregeln verwenden, um Adressüberlappungen zwischen den lokalen Netzwerken zu vermeiden.
Was wähle ich als „IP-Konfigurations-ID“ aus?
IP-Konfigurations-ID ist einfach der Name des IP-Konfigurationsobjekts, das die NAT-Regel verwenden soll. Mit dieser Einstellung wählen Sie einfach aus, welche öffentliche Gateway-IP-Adresse für die NAT-Regel gilt. Wenn Sie zur Erstellungszeit des Gateways keinen benutzerdefinierten Namen angegeben haben, wird die primäre IP-Adresse des Gateways der IP-Konfiguration default zugewiesen, und die sekundäre IP-Adresse wird der IP-Konfiguration activeActive zugewiesen.
Nächste Schritte
Die Schritte zum Konfigurieren von NAT für standortübergreifende Verbindungen finden Sie unter Konfigurieren von NAT für Azure-VPN-Gateways.