Inline-NAT
Inline Network Address Translation – Überblick
Inline-NAT nutzt die Funktionen der MPC-Linecard, sodass keine Servicekarte für NAT erforderlich ist. Folglich können Sie Adressübersetzungen mit Leitungsgeschwindigkeit und niedriger Latenz (bis zu 120 Gbit/s pro Steckplatz) erreichen. Die derzeitige Implementierung bietet:
Statische 1:1-Adresszuordnung
Bidirektionales Mapping – Quell-NAT für ausgehenden Datenverkehr und Ziel-NAT für eingehenden Datenverkehr.
Keine Begrenzung der Anzahl der Datenströme.
Unterstützung für Quelle, Ziel und zweimal NAT, wie in Abbildung 1 dargestellt. Inline-NAT unterstützt den Übersetzungstyp
basic-nat44
. Ab Junos OS Version 15.1R1 unterstützttwice-basic-nat-44
Inline-NAT auch .Unterstützung beim Hairpinning.

Um Inline-NAT zu konfigurieren, definieren Sie Ihre Serviceschnittstelle als Typschnittstelle si-
(Service-Inline-Schnittstelle). Außerdem müssen Sie eine ausreichende Bandbreite für die Inline-Schnittstelle reservieren. Auf diese Weise können Sie sowohl Schnittstellen- als auch Next-Hop-Service-Sets konfigurieren, die für NAT verwendet werden. Die si-
Schnittstelle dient als "virtuelles Service-PIC".
Es wird nur statische NAT unterstützt. Portübersetzung, dynamisches NAT und ALGs werden nicht unterstützt. Daher funktionieren Anwendungen wie der SIP- oder FTP-Aktivmodus, die eine erweiterte Verarbeitung für NAT erfordern, nicht. Für die Verarbeitung von Stateful-Firewalls, ALG-Unterstützung und dynamischer Portübersetzung sind weiterhin eine MS-MPC-, MS-MIC-, MS-DPC- oder MS-PIC-Lösung erforderlich.
Inline NAT unterstützt weder das Sampling noch die Protokollierung von Paketen.
Vorteile von Inline-NAT
Eliminiert die Notwendigkeit einer Servicekarte
Unterstützt mehr NAT-Datenströme als eine Servicekarte
Plattformspezifisches Inline-NAT-Verhalten
Bahnsteig |
Unterschied |
---|---|
MX304-KARTON |
MX304-Router unterstützen Inline-NAT nicht |
Siehe auch
Beispiel: Konfigurieren der Inline-Network Address Translation – Schnittstellenbasierte Methode
Dieses Konfigurationsbeispiel veranschaulicht, wie schnittstellenbasierte Inline-Inline-Adressübersetzung (Network Address Translation, NAT) auf Geräten der MX-Serie mithilfe von (Service-Inline-)Schnittstellen mit si-
schnittstellenartigen Service-Sets konfiguriert werden.
In diesem Thema werden folgende Themen behandelt:
- Anforderungen
- Übersicht und Topologie
- Konfiguration für Inline-Network Address Translation
- Verifizierung
- Konfiguration für Twice NAT
- Konfiguration für Ziel-NAT
Anforderungen
In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:
-
Router der MX-Serie mit einer MPC-Linecard (Modular Port Concentrators)
-
Junos OS Version 11.4R1 oder höher
Übersicht und Topologie
Ab Junos OS Version 11.4R1 können MPC-Linecards einige Services auch ohne dedizierte Services Card (z. B. MS-MPC) ausführen. Inlinedienste bieten im Allgemeinen eine bessere Leistung als die Verwendung einer Dienstkarte, ihre Funktionalität ist jedoch in der Regel grundlegender. Inline-NAT unterstützt beispielsweise nur statisches NAT.
In diesem Beispiel stellt ein Gerät der MX-Serie mit einer MPC-Linecard Inline-NAT-Services für den Datenverkehr bereit, der zwischen zwei Endhosts fließt. Die Topologie für dieses Szenario ist in Abbildung 2 dargestellt

Wie in der Abbildung dargestellt, sendet Host H1 Datenverkehr an Server S1. Das Gerät der MX-Serie führt eine Quell-NAT aus, um die Quell-IP-Adresse von H1 von 10.1.1.2 in 192.0.2.2 zu übersetzen. Server S1 sendet dann Rückverkehr an Host H1 mit der Ziel-IP-Adresse 192.0.2.2, und das Gerät der MX-Serie setzt die IP-Adresse von H1 auf 10.1.1.2 zurück.
Die folgenden Konfigurationselemente werden in diesem Szenario verwendet:
-
Inline-Service-Schnittstelle: Eine virtuelle Schnittstelle, die sich auf der Packet Forwarding Engine der MPC befindet. Für den Zugriff auf Services fließt der Datenverkehr über diese
si-
(Service-Inline-)Schnittstellen ein und aus. -
Service-Set: Definiert die auszuführenden Service(s) und gibt an, welche(n) Inline-Schnittstelle(n) Datenverkehr in und aus dem Service-Set einspeisen. Es gibt zwei Möglichkeiten, Service-Sets zu implementieren:
-
Schnittstellenstil: Eine schnittstellenbasierte Methode, bei der Pakete, die an einer Schnittstelle eintreffen, über den Inline-Service weitergeleitet werden.
-
Next-Hop-Stil: Eine routenbasierte Methode, bei der statische Routen verwendet werden, um Pakete, die für ein bestimmtes Ziel bestimmt sind, über den Inline-Service weiterzuleiten.
In diesem Beispiel wird der Dienstsatz im Schnittstellenstil verwendet.
-
-
NAT-Regel: Verwendet eine Wenn-Dann-Struktur (ähnlich wie bei Firewall-Filtern), um Übereinstimmungsbedingungen zu definieren und dann die Adressübersetzung auf den übereinstimmenden Datenverkehr anzuwenden.
-
NAT-Pool: Ein benutzerdefinierter Satz von IP-Adressen, die von der NAT-Regel für die Übersetzung verwendet werden.
Diese Elemente kommen zusammen, wie in Abbildung 3 dargestellt

Konfiguration für Inline-Network Address Translation
Führen Sie die folgenden Aufgaben aus, um Inline-NAT mithilfe eines schnittstellenartigen Servicesatzes zu konfigurieren:
- CLI Schnellkonfiguration
- Aktivieren von Inlinediensten und Erstellen einer Inlineschnittstelle
- Konfigurieren von NAT-Regeln und -Pools
- Konfigurieren des Servicesets (im Stil einer Schnittstelle)
- Konfigurieren von physischen Schnittstellen
CLI Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle erforderlichen Details, um sie an Ihre Netzwerkkonfiguration anzupassen, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf der Hierarchieebene [Bearbeiten] ein.
## Enable inline services, create an si- interface, reserve bandwidth ## set chassis fpc 0 pic 0 inline-services bandwidth 1g set interfaces si-0/0/0 unit 0 family inet ## Configure a NAT rule and pool ## set services nat rule SRC-NAT1 match-direction input set services nat rule SRC-NAT1 term r1 from source-address 10.1.1.0/24 set services nat rule SRC-NAT1 term r1 then translated translation-type basic-nat44 set services nat rule SRC-NAT1 term r1 then translated source-pool p1 set services nat pool p1 address 192.0.2.0/24 ## Configure the (interface-style) service set ## set services service-set INT-STYLE-SS-NAT1 nat-rules SRC-NAT1 set services service-set INT-STYLE-SS-NAT1 interface-service service-interface si-0/0/0.0 ## Configure interfaces ## set interfaces xe-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces xe-0/0/0 description INSIDE set interfaces xe-1/0/0 unit 0 family inet address 192.168.1.1/24 set interfaces xe-1/0/0 description OUTSIDE set interfaces xe-0/0/0 unit 0 family inet service input service-set INT-STYLE-SS-NAT1 set interfaces xe-0/0/0 unit 0 family inet service output service-set INT-STYLE-SS-NAT1
Aktivieren von Inlinediensten und Erstellen einer Inlineschnittstelle
Schritt-für-Schritt-Anleitung
Aktivieren Sie Inline-Services für den entsprechenden FPC- und PIC-Slot, und definieren Sie die Bandbreite, die für Inline-Services reserviert werden soll.
Die FPC- und PIC-Einstellungen hier werden erstellt und einer
si-
Schnittstelle zugeordnet.[edit chassis fpc 0 pic 0] user@MX# set inline-services bandwidth 1g
Geben Sie auf der
si-
Schnittstelle die Protokollfamilie(n) an, für die NAT-Dienste benötigt werden.Anmerkung:Die FPC- und PIC-Einstellungen müssen hier mit den oben definierten Einstellungen übereinstimmen.
[edit interfaces si-0/0/0] user@MX# set unit 0 family inet
Konfigurieren von NAT-Regeln und -Pools
Schritt-für-Schritt-Anleitung
Konfigurieren Sie eine NAT-Regel, die den Datenverkehr abstimmt, der aus dem Subnetz von H1 (10.1.1.0/24) beim MX-Gerät ankommt, ihn mit grundlegendem IPv4-NAT übersetzt und eine IP-Adresse aus dem Pool
p1
verwendet.[edit services nat] user@MX# set rule SRC-NAT1 match-direction input user@MX# set rule SRC-NAT1 term r1 from source-address 10.1.1.0/24 user@MX# set rule SRC-NAT1 term r1 then translated translation-type basic-nat44 user@MX# set rule SRC-NAT1 term r1 then translated source-pool p1
Konfigurieren Sie den NAT-Pool.
[edit services nat] user@MX# set pool p1 address 192.0.2.0/24
Konfigurieren des Servicesets (im Stil einer Schnittstelle)
Schritt-für-Schritt-Anleitung
Konfigurieren Sie einen Servicesatz, der den Inline-NAT-Dienst (
nat-rules
) und die oben definierte Inlineschnittstelle verwendet. Verwenden Sie deninterface-service
Parameter, um anzugeben, dass es sich um einen Servicesatz im Schnittstellenstil handelt.Datenverkehr fließt in die Schnittstelle hinein und aus ihr
si-
heraus, um auf den Inline-NAT-Dienst zuzugreifen.[edit services] user@MX# set service-set INT-STYLE-SS-NAT1 nat-rules SRC-NAT1 user@MX# set service-set INT-STYLE-SS-NAT1 interface-service service-interface si-0/0/0.0
Konfigurieren von physischen Schnittstellen
Schritt-für-Schritt-Anleitung
Konfigurieren Sie die physischen Schnittstellen.
[edit interfaces] user@MX# set xe-0/0/0 unit 0 family inet address 10.1.1.1/24 user@MX# set xe-0/0/0 description INSIDE user@MX# set xe-1/0/0 unit 0 family inet address 192.168.1.1/24 user@MX# set xe-1/0/0 description OUTSIDE
Geben Sie auf der "inneren" Schnittstelle an, dass der Datenverkehr über den oben definierten Dienstsatz gesendet wird.
[edit interfaces xe-0/0/0 unit 0] user@MX# set family inet service input service-set INT-STYLE-SS-NAT1 user@MX# set family inet service output service-set INT-STYLE-SS-NAT1
Befund
chassis { fpc 0 { pic 0 { inline-services { bandwidth 1g; } } } } services { service-set INT-STYLE-SS-NAT1 { nat-rules SRC-NAT1; interface-service { service-interface si-0/0/0.0; } } nat { pool p1 { address 192.0.2.0/24; } rule SRC-NAT1 { match-direction input; term r1 { from { source-address { 10.1.1.0/24; } } then { translated { source-pool p1; translation-type { basic-nat44; } } } } } } } interfaces { si-0/0/0 { unit 0 { family inet; } } xe-0/0/0 { description INSIDE; unit 0 { family inet { service { input { service-set INT-STYLE-SS-NAT1; } output { service-set INT-STYLE-SS-NAT1; } } address 10.1.1.1/24; } } } xe-1/0/0 { description OUTSIDE; unit 0 { family inet { address 192.168.1.1/24; } } } }
Verifizierung
Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.
Überprüfen der Erreichbarkeit von Host H1 zu Server S1
Zweck
Überprüfen Sie die Erreichbarkeit zwischen H1 und S1.
Aktion
Stellen Sie auf Host H1 sicher, dass der Host den Server S1 pingen kann.
user@H1> ping 192.168.1.2 count 5 PING 192.168.1.2 (192.168.1.2): 56 data bytes 64 bytes from 192.168.1.2: icmp_seq=0 ttl=63 time=0.991 ms 64 bytes from 192.168.1.2: icmp_seq=1 ttl=63 time=14.186 ms 64 bytes from 192.168.1.2: icmp_seq=2 ttl=63 time=3.016 ms 64 bytes from 192.168.1.2: icmp_seq=3 ttl=63 time=3.742 ms 64 bytes from 192.168.1.2: icmp_seq=4 ttl=63 time=4.748 ms --- 192.168.1.2 ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max/stddev = 0.991/5.337/14.186/4.593 ms
Bedeutung
H1 kann S1 erfolgreich erreichen.
Überprüfen der Adressübersetzung
Zweck
Vergewissern Sie sich, dass die Adressübersetzung korrekt funktioniert.
Aktion
Vergewissern Sie sich auf dem MX-Gerät, dass die Inline-NAT-Konfigurationsdetails korrekt angewendet wurden.
user@MX> show services inline nat pool Interface: si-0/0/0, Service set: INT-STYLE-SS-NAT1 NAT pool: p1, Translation type: BASIC NAT44 Address range: 192.0.2.0-192.0.2.255 NATed packets: 5, deNATed packets: 5, Errors: 0
Stellen Sie auf Server S1 sicher, dass der Server die Pings von der NAT-übersetzten Quell-IP-Adresse von H1 (192.0.2.2) empfängt.
Geben Sie den folgenden Befehl ein, und senden Sie erneut Pings von H1 aus.
Anmerkung:Für dieses Setup wird ein weiteres MX-Gerät verwendet, um den Server S1 darzustellen, um die Überwachung des eingehenden Datenverkehrs zu ermöglichen.
user@S1> monitor traffic interface xe-1/1/1 no-resolve verbose output suppressed, use <detail> or <extensive> for full protocol decode Address resolution is OFF. Listening on xe-1/1/1, capture size 96 bytes 23:28:28.577377 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 3293, seq 0, length 64 23:28:28.577405 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 3293, seq 0, length 64 23:28:29.579253 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 3293, seq 1, length 64 23:28:29.579278 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 3293, seq 1, length 64 23:28:30.579275 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 3293, seq 2, length 64 23:28:30.579302 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 3293, seq 2, length 64 23:28:31.580279 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 3293, seq 3, length 64 23:28:31.580305 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 3293, seq 3, length 64 23:28:32.581266 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 3293, seq 4, length 64 23:28:32.581293 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 3293, seq 4, length 64 ^C 10 packets received by filter 0 packets dropped by kernel
Bedeutung
Schritt 1 oben bestätigt, dass die Inline-NAT-Dienstparameter und der schnittstellenartige Servicesatz ordnungsgemäß implementiert sind. Schritt 2 oben bestätigt, dass Server S1 die Pings von H1 korrekt von seiner NAT-übersetzten Quell-IP-Adresse empfängt.
Konfiguration für Twice NAT

Führen Sie die folgenden Aufgaben aus, um Twice NAT mithilfe eines Dienstsatzes im Schnittstellenstil zu konfigurieren:
- CLI Schnellkonfiguration
- Konfigurieren des Servicesets (im Stil einer Schnittstelle)
- Konfigurieren von physischen Schnittstellen
CLI Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle erforderlichen Details, um sie an Ihre Netzwerkkonfiguration anzupassen, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf der Hierarchieebene [Bearbeiten] ein.
## Configure a NAT rule and pool ## set services nat pool dst-pool-p1 address 100.1.1.2/32 set services nat pool dst-pool-p2 address 100.1.1.4/32 set services nat pool src-pool-p2 address 20.0.0.0/8 set services nat allow-overlapping-nat-pools set services nat rule TWICE_rule_1 match-direction output set services nat rule TWICE_rule_1 term TWICE_rule_1_term_1 from source-address 10.0.0.0/8 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_1 from destination-address 120.1.1.2/32 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_1 then translated source-pool src-pool-p1 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_1 then translated destination-pool dst-pool-p1 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_1 then translated translation-type twice-basic-nat-44 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_2 from source-address 10.0.0.0/8 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_2 from destination-address 120.1.1.4/32 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_2 then translated source-pool src-pool-p2 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_2 then translated destination-pool dst-pool-p2 set services nat rule TWICE_rule_1 term TWICE_rule_1_term_2 then translated translation-type twice-basic-nat-44 set services nat rule-set TWICE_NAT_RS1 rule TWICE_rule_1 set services service-set TWICE_SS_1 nat-rule-sets TWICE_NAT_RS1 set services service-set TWICE_SS_1 interface-service service-interface si-2/0/0 ## Configure interfaces ## set interfaces si-2/0/0 unit 0 family inet filter input log_filer set interfaces xe-2/0/0 unit 0 family inet address 10.1.1.251/16 set interfaces xe-2/0/1 unit 0 family inet service input service-set TWICE_SS_1 service-filter TWICE_SF_in set interfaces xe-2/0/1 unit 0 family inet service output service-set TWICE_SS_1 service-filter TWICE_SF_out set interfaces xe-2/0/1 unit 0 family inet address 100.1.1.251/16 ## Configure firewall filters ## set firewall family inet service-filter TWICE_SF_in term SF_R1_term_1 from source-address 100.1.1.2/32 set firewall family inet service-filter TWICE_SF_in term SF_R1_term_1 then service set firewall family inet service-filter TWICE_SF_in term SF_R1_term_2 from source-address 100.1.1.4/32 set firewall family inet service-filter TWICE_SF_in term SF_R1_term_2 then service set firewall family inet service-filter TWICE_SF_in term default then count non-matching-packets-in set firewall family inet service-filter TWICE_SF_out term SF_R1_out_term_1 from destination-address 120.1.1.2/32 set firewall family inet service-filter TWICE_SF_out term SF_R1_out_term_1 then service set firewall family inet service-filter TWICE_SF_out term SF_R1_out_term_2 from destination-address 120.1.1.4/32 set firewall family inet service-filter TWICE_SF_out term SF_R1_out_term_2 then service set firewall family inet service-filter TWICE_SF_out term default then count non-matching-packets-out set firewall family inet service-filter TWICE_SF_out term default then skip
Konfigurieren des Servicesets (im Stil einer Schnittstelle)
Konfigurieren Sie einen Servicesatz, der den Twice NAT-Dienst (
nat-rules
) verwendet. Verwenden Sie deninterface-service
Parameter, um anzugeben, dass es sich um einen Servicesatz im Schnittstellenstil handelt.[edit services] user@MX# set service-set TWICE_SS_1 nat-rule-sets TWICE_NAT_RS1 user@MX# set service-set TWICE_SS_1 interface-service service-interface si-2/0/0
Konfigurieren von physischen Schnittstellen
Schritt-für-Schritt-Anleitung
Konfigurieren Sie die physischen Schnittstellen.
[edit interfaces] user@MX# set si-2/0/0 unit 0 family inet filter input log_filer user@MX# set xe-2/0/0 unit 0 family inet address 10.1.1.251/16 user@MX# set xe-2/0/1 unit 0 family inet service input service-set TWICE_SS_1 service-filter TWICE_SF_in user@MX# set xe-2/0/1 unit 0 family inet service output service-set TWICE_SS_1 service-filter TWICE_SF_out user@MX# set xe-2/0/1 unit 0 family inet address 100.1.1.251/16
Geben Sie auf der Schnittstelle an, dass der Datenverkehr über den oben definierten Dienstsatz gesendet wird.
[edit interfaces] user@MX# set xe-2/0/1 unit 0 family inet service input service-set TWICE_SS_1 service-filter TWICE_SF_in user@MX# set xe-2/0/1 unit 0 family inet service output service-set TWICE_SS_1 service-filter TWICE_SF_out
Konfigurieren Sie die Filteroptionen der Firewall, um den Datenverkehr an die
si
Schnittstelle weiterzuleiten.[edit firewall] user@MX# set family inet service-filter TWICE_SF_in term SF_R1_term_1 from source-address 100.1.1.2/32 user@MX# set family inet service-filter TWICE_SF_in term SF_R1_term_1 then service user@MX# set family inet service-filter TWICE_SF_in term SF_R1_term_2 from source-address 100.1.1.4/32 user@MX# set family inet service-filter TWICE_SF_in term SF_R1_term_2 then service user@MX# set family inet service-filter TWICE_SF_in term default then count non-matching-packets-in user@MX# set family inet service-filter TWICE_SF_out term SF_R1_out_term_1 from destination-address 120.1.1.2/32 user@MX# set family inet service-filter TWICE_SF_out term SF_R1_out_term_1 then service user@MX# set family inet service-filter TWICE_SF_out term SF_R1_out_term_2 from destination-address 120.1.1.4/32 user@MX# set family inet service-filter TWICE_SF_out term SF_R1_out_term_2 then service user@MX# set family inet service-filter TWICE_SF_out term default then count non-matching-packets-out user@MX# set family inet service-filter TWICE_SF_out term default then skip
Konfiguration für Ziel-NAT

Führen Sie die folgenden Aufgaben aus, um die Ziel-NAT mithilfe eines schnittstellenartigen Servicesatzes zu konfigurieren:
- CLI Schnellkonfiguration
- Inline-Services aktivieren
- Konfigurieren des Servicesets (im Stil einer Schnittstelle)
- Konfigurieren von physischen Schnittstellen
CLI Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle erforderlichen Details, um sie an Ihre Netzwerkkonfiguration anzupassen, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf der Hierarchieebene [Bearbeiten] ein.
## Enable inline services, create an si- interface ## set chassis fpc 2 pic 0 inline-services set chassis fpc 2 pic 1 inline-services set services service-set DANT44_SS_1 nat-rule-sets DNAT44_RS_1 set services service-set DANT44_SS_1 interface-service service-interface si-2/0/0.0 ## Configure a NAT rule ## set services nat rule DNAT44_rule_1 match-direction output set services nat rule DNAT44_rule_1 term DNAT44_R1_term_1 from destination-address 21.1.1.2/32 set services nat rule DNAT44_rule_1 term DNAT44_R1_term_1 then translated destination-prefix 192.168.1.2/32 set services nat rule DNAT44_rule_1 term DNAT44_R1_term_1 then translated translation-type dnat-44 set services nat rule-set DNAT44_RS_1 rule DNAT44_rule_1 ## Configure interfaces (and the interface-style) and service filters ## set interfaces si-2/0/0 unit 0 family inet set interfaces xe-2/0/0 unit 0 family inet address 100.2.1.2/24 set interfaces xe-2/0/1 unit 0 family inet service input service-set DANT44_SS_1 service-filter SF_in set interfaces xe-2/0/1 unit 0 family inet service output service-set DANT44_SS_1 service-filter SF_out set interfaces xe-2/0/1 unit 0 family inet address 192.168.1.251/24 ## Configure the firewall filter options and static route options## set firewall family inet service-filter SF_in term SF_in_term1 from source-address 192.168.1.2/32 set firewall family inet service-filter SF_in term SF_in_term1 then service set firewall family inet service-filter SF_out term SF_out_term1 from destination-address 21.1.1.2/32 set firewall family inet service-filter SF_out term SF_out_term1 then service set routing-options static route 21.1.0.0/16 next-hop 100.2.1.2
Inline-Services aktivieren
Aktivieren Sie Inline-Services für den entsprechenden FPC- und PIC-Steckplatz.
Die FPC- und PIC-Einstellungen hier werden erstellt und einer
si-
Schnittstelle zugeordnet.[edit chassis fpc 2 pic 0] user@MX# set inline-services
[edit chassis fpc 2 pic 1] user@MX# set inline-services
Konfigurieren des Servicesets (im Stil einer Schnittstelle)
Konfigurieren Sie einen Servicesatz, der den Ziel-NAT-Dienst (
nat-rules
) verwendet. Verwenden Sie deninterface-service
Parameter, um anzugeben, dass es sich um einen Servicesatz im Schnittstellenstil handelt.[edit services service-set] user@MX# set DANT44_SS_1 nat-rule-sets DNAT44_RS_1 user@MX# set DANT44_SS_1 DANT44_SS_1 interface-service service-interface si-2/0/0.0
Konfigurieren von physischen Schnittstellen
Konfigurieren Sie die physischen Schnittstellen.
[edit interfaces] user@MX# set si-2/0/0 unit 0 family inet user@MX# set xe-2/0/0 unit 0 family inet address 100.2.1.2/24
Geben Sie auf der Schnittstelle an, dass der Datenverkehr über den zuvor definierten Dienstsatz gesendet wird.
[edit interfaces] user@MX# set xe-2/0/1 unit 0 family inet service input service-set DANT44_SS_1 service-filter SF_in user@MX# set xe-2/0/1 unit 0 family inet service output service-set DANT44_SS_1 service-filter SF_out user@MX# set interfaces xe-2/0/1 unit 0 family inet address 192.168.1.251/24
Konfigurieren Sie die Filteroptionen der Firewall, um den Datenverkehr an die
si
Schnittstellen weiterzuleiten.[edit firewall] user@MX# set firewall family inet service-filter SF_in term SF_in_term1 from source-address 192.168.1.2/32 user@MX# set firewall family inet service-filter SF_in term SF_in_term1 then service user@MX# set firewall family inet service-filter SF_out term SF_out_term1 from destination-address 21.1.1.2/32 user@MX# set firewall family inet service-filter SF_out term SF_out_term1 then service
Konfigurieren Sie die statischen Routing-Optionen.
[edit routing-optipons] user@MX# set static route 21.1.0.0/16 next-hop 100.2.1.2
Beispiel: Konfigurieren von Inline Network Address Translation – Routenbasierte Methode
In diesem Konfigurationsbeispiel wird veranschaulicht, wie routenbasierte Inline-Inline-Netzwerkadressübersetzung (NAT) auf Geräten der MX-Serie mithilfe von si-
(Service-Inline-)Schnittstellen mit Servicesätzen im Next-Hop-Stil konfiguriert wird.
In diesem Thema werden folgende Themen behandelt:
Anforderungen
In diesem Beispiel werden die folgenden Hardware- und Softwarekomponenten verwendet:
Router der MX-Serie mit einer MPC-Linecard (Modular Port Concentrators)
Junos OS Version 11.4R1 oder höher
Übersicht und Topologie
Ab Junos OS Version 11.4R1 können MPC-Linecards einige Services auch ohne dedizierte Services Card (z. B. MS-MPC) ausführen. Inlinedienste bieten im Allgemeinen eine bessere Leistung als die Verwendung einer Dienstkarte, ihre Funktionalität ist jedoch in der Regel grundlegender. Inline-NAT unterstützt beispielsweise nur statisches NAT.
In diesem Beispiel stellt ein Gerät der MX-Serie mit einer MPC-Linecard Inline-NAT-Services für den Datenverkehr bereit, der zwischen zwei Endhosts fließt. Die Topologie für dieses Szenario ist in Abbildung 6 dargestellt

Wie in der Abbildung dargestellt, sendet Host H1 Datenverkehr an Server S1. Das Gerät der MX-Serie führt eine Quell-NAT aus, um die Quell-IP-Adresse von H1 von 10.1.1.2 in 192.0.2.2 zu übersetzen. Server S1 sendet dann Rückverkehr an Host H1 mit der Ziel-IP-Adresse 192.0.2.2, und das Gerät der MX-Serie setzt die IP-Adresse von H1 auf 10.1.1.2 zurück.
Die folgenden Konfigurationselemente werden in diesem Szenario verwendet:
Inline-Service-Schnittstelle: Eine virtuelle Schnittstelle, die sich auf der Packet Forwarding Engine der MPC befindet. Für den Zugriff auf Services fließt der Datenverkehr über diese
si-
(Service-Inline-)Schnittstellen ein und aus.Service-Set: Definiert die auszuführenden Service(s) und gibt an, welche(n) Inline-Schnittstelle(n) Datenverkehr in und aus dem Service-Set einspeisen. Es gibt zwei Möglichkeiten, Service-Sets zu implementieren:
Schnittstellenstil: Eine schnittstellenbasierte Methode, bei der Pakete, die an einer Schnittstelle eintreffen, über den Inline-Service weitergeleitet werden.
Next-Hop-Stil: Eine routenbasierte Methode, bei der statische Routen verwendet werden, um Pakete, die für ein bestimmtes Ziel bestimmt sind, über den Inline-Service weiterzuleiten.
In diesem Beispiel wird der Dienstsatz im Next-Hop-Stil verwendet.
NAT-Regel: Verwendet eine Wenn-Dann-Struktur (ähnlich wie bei Firewall-Filtern), um Übereinstimmungsbedingungen zu definieren und dann die Adressübersetzung auf den übereinstimmenden Datenverkehr anzuwenden.
NAT-Pool: Ein benutzerdefinierter Satz von IP-Adressen, die von der NAT-Regel für die Übersetzung verwendet werden.
Routing-Instanz: Eine Sammlung von Routing-Tabellen, Schnittstellen und Routing-Protokollparametern, die getrennt von der Haupt-Routing-Instanz (Standard) ausgeführt werden.
Routenbasierte Inline-NAT wird in der Regel in Szenarien verwendet, in denen Routing-Instanzen involviert sind.
Diese Elemente kommen zusammen, wie in Abbildung 7 dargestellt.

Konfiguration
Führen Sie die folgenden Aufgaben aus, um Inline-NAT mit einem Dienstsatz im Stil des nächsten Hops zu konfigurieren:
- CLI Schnellkonfiguration
- Konfigurieren von physischen Schnittstellen
- Aktivieren von Inlinediensten und Erstellen einer Inlineschnittstelle
- Konfigurieren der Routing-Instanz und Identifizieren des Datenverkehrs, der über den Inline-NAT-Dienst gesendet werden soll
- Konfigurieren von NAT-Regeln und -Pools
- Konfigurieren des Servicesets (im Next-Hop-Stil)
CLI Schnellkonfiguration
Um dieses Beispiel schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle erforderlichen Details, um sie an Ihre Netzwerkkonfiguration anzupassen, und kopieren Sie dann die Befehle und fügen Sie sie in die CLI auf der Hierarchieebene [Bearbeiten] ein.
## Configure interfaces ## set interfaces xe-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces xe-0/0/0 description INSIDE set interfaces xe-1/0/0 unit 0 family inet address 192.168.1.1/24 set interfaces xe-1/0/0 description OUTSIDE ## Enable inline services, create an si- interface, reserve bandwidth ## set chassis fpc 0 pic 0 inline-services bandwidth 1g set interfaces si-0/0/0 unit 1 family inet set interfaces si-0/0/0 unit 1 service-domain inside set interfaces si-0/0/0 unit 2 family inet set interfaces si-0/0/0 unit 2 service-domain outside ## Configure routing instance, feed traffic into the inline NAT service ## set routing-instances RI-A instance-type virtual-router set routing-instances RI-A interface xe-0/0/0.0 set routing-instances RI-A interface si-0/0/0.1 set routing-instances RI-A routing-options static route 192.168.1.2/32 next-hop si-0/0/0.1 ## Configure a NAT rule and pool ## set services nat rule SRC-NAT1 match-direction input set services nat rule SRC-NAT1 term r1 from source-address 10.1.1.0/24 set services nat rule SRC-NAT1 term r1 then translated translation-type basic-nat44 set services nat rule SRC-NAT1 term r1 then translated source-pool p1 set services nat pool p1 address 192.0.2.0/24 ## Configure the (next-hop-style) service set ## set services service-set NH-STYLE-SS-NAT1 nat-rules SRC-NAT1 set services service-set NH-STYLE-SS-NAT1 next-hop-service inside-service-interface si-0/0/0.1 set services service-set NH-STYLE-SS-NAT1 next-hop-service outside-service-interface si-0/0/0.2
Konfigurieren von physischen Schnittstellen
Schritt-für-Schritt-Anleitung
Konfigurieren Sie die physischen Schnittstellen.
[edit interfaces] user@MX# set xe-0/0/0 unit 0 family inet address 10.1.1.1/24 user@MX# set xe-0/0/0 description INSIDE user@MX# set xe-1/0/0 unit 0 family inet address 192.168.1.1/24 user@MX# set xe-1/0/0 description OUTSIDE
Aktivieren von Inlinediensten und Erstellen einer Inlineschnittstelle
Schritt-für-Schritt-Anleitung
Aktivieren Sie Inline-Services für den entsprechenden FPC- und PIC-Slot, und definieren Sie die Bandbreite, die für Inline-Services reserviert werden soll.
Die FPC- und PIC-Einstellungen hier werden erstellt und einer
si-
Schnittstelle zugeordnet.[edit chassis fpc 0 pic 0] user@MX# set inline-services bandwidth 1g
Erstellen Sie auf der
si-
Benutzeroberfläche zwei logische Einheiten. Geben Sie für jede Einheit die Protokollfamilie (oder -familien) an, die NAT-Dienste benötigen, sowie die "inneren" oder "externen" Schnittstellen für die Dienstdomäne.Anmerkung:Die FPC- und PIC-Einstellungen müssen hier mit den oben definierten Einstellungen übereinstimmen.
[edit interfaces si-0/0/0] user@MX# set unit 1 family inet user@MX# set unit 1 service-domain inside user@MX# set unit 2 family inet user@MX# set unit 2 service-domain outside
Konfigurieren der Routing-Instanz und Identifizieren des Datenverkehrs, der über den Inline-NAT-Dienst gesendet werden soll
Schritt-für-Schritt-Anleitung
Konfigurieren Sie eine Routing-Instanz, die die physische Seite und
si-
Schnittstellen "ínside" sowie eine statische Route identifiziert, die den Datenverkehr identifiziert, der über diesi-
Schnittstelle an den Inline-NAT-Dienst weitergeleitet werden soll.Der Einfachheit halber identifiziert die hier verwendete statische Route einfach den Server S1.
[edit routing-instances] user@MX# set RI-A instance-type virtual-router user@MX# set RI-A interface xe-0/0/0.0 user@MX# set RI-A interface si-0/0/0.1 user@MX# set RI-A routing-options static route 192.168.1.2/32 next-hop si-0/0/0.1
Konfigurieren von NAT-Regeln und -Pools
Schritt-für-Schritt-Anleitung
Konfigurieren Sie eine NAT-Regel, die den Datenverkehr abstimmt, der aus dem Subnetz von H1 (10.1.1.0/24) beim MX-Gerät ankommt, ihn mit grundlegendem IPv4-NAT übersetzt und eine IP-Adresse aus dem Pool
p1
verwendet.[edit services nat] user@MX# set rule SRC-NAT1 match-direction input user@MX# set rule SRC-NAT1 term r1 from source-address 10.1.1.0/24 user@MX# set rule SRC-NAT1 term r1 then translated translation-type basic-nat44 user@MX# set rule SRC-NAT1 term r1 then translated source-pool p1
Konfigurieren Sie den NAT-Pool.
[edit services nat] user@MX# set pool p1 address 192.0.2.0/24
Konfigurieren des Servicesets (im Next-Hop-Stil)
Schritt-für-Schritt-Anleitung
Konfigurieren Sie einen Servicesatz, der den Inline-NAT-Dienst ()
nat-rules
und die oben definierten Inline-Schnittstellen verwendet. Verwenden Sie dennext-hop-service
Parameter, um anzugeben, dass es sich um einen Servicesatz im Stil des nächsten Hops handelt, und weisen Sie diesi-
Schnittstellen basierend auf den obigen Einstellungen als "inside" und "outside" zu.Datenverkehr fließt in und aus den
si-
Schnittstellen, um auf den Inline-NAT-Dienst zuzugreifen.[edit services] user@MX# set service-set NH-STYLE-SS-NAT1 nat-rules SRC-NAT1 user@MX# set service-set NH-STYLE-SS-NAT1 next-hop-service inside-service-interface si-0/0/0.1 user@MX# set service-set NH-STYLE-SS-NAT1 next-hop-service outside-service-interface si-0/0/0.2
Befund
chassis { fpc 0 { pic 0 { inline-services { bandwidth 1g; } } } } services { service-set NH-STYLE-SS-NAT1 { nat-rules SRC-NAT1; next-hop-service { inside-service-interface si-0/0/0.1; outside-service-interface si-0/0/0.2; } } nat { pool p1 { address 192.0.2.0/24; } rule SRC-NAT1 { match-direction input; term r1 { from { source-address { 10.1.1.0/24; } } then { translated { source-pool p1; translation-type { basic-nat44; } } } } } } } interfaces { si-0/0/0 { unit 1 { family inet; service-domain inside; } unit 2 { family inet; service-domain outside; } } xe-0/0/0 { description INSIDE; unit 0 { family inet { address 10.1.1.1/24; } } } xe-1/0/0 { description OUTSIDE; unit 0 { family inet { address 192.168.1.1/24; } } } } routing-instances { RI-A { instance-type virtual-router; interface xe-0/0/0.0; interface si-0/0/0.1; routing-options { static { route 192.168.1.2/32 next-hop si-0/0/0.1; } } } }
Verifizierung
Vergewissern Sie sich, dass die Konfiguration ordnungsgemäß funktioniert.
Überprüfen der Erreichbarkeit von Host H1 zu Server S1
Zweck
Überprüfen Sie die Erreichbarkeit zwischen H1 und S1.
Aktion
Stellen Sie auf Host H1 sicher, dass der Host den Server S1 pingen kann.
user@H1> ping 192.168.1.2 count 5 PING 192.168.1.2 (192.168.1.2): 56 data bytes 64 bytes from 192.168.1.2: icmp_seq=0 ttl=63 time=0.926 ms 64 bytes from 192.168.1.2: icmp_seq=1 ttl=63 time=0.859 ms 64 bytes from 192.168.1.2: icmp_seq=2 ttl=63 time=0.853 ms 64 bytes from 192.168.1.2: icmp_seq=3 ttl=63 time=0.825 ms 64 bytes from 192.168.1.2: icmp_seq=4 ttl=63 time=0.930 ms --- 192.168.1.2 ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max/stddev = 0.825/0.879/0.930/0.042 ms
Bedeutung
H1 kann S1 erfolgreich erreichen.
Überprüfen der Adressübersetzung
Zweck
Vergewissern Sie sich, dass die Adressübersetzung korrekt funktioniert.
Aktion
Vergewissern Sie sich auf dem MX-Gerät, dass die Inline-NAT-Konfigurationsdetails korrekt angewendet wurden.
user@MX> show services inline nat pool Interface: si-0/0/0, Service set: NH-STYLE-SS-NAT1 NAT pool: p1, Translation type: BASIC NAT44 Address range: 192.0.2.0-192.0.2.255 NATed packets: 5, deNATed packets: 5, Errors: 0, Skipped packets: 0
Stellen Sie auf Server S1 sicher, dass der Server die Pings von der NAT-übersetzten Quell-IP-Adresse von H1 (192.0.2.2) empfängt.
Geben Sie den folgenden Befehl ein, und senden Sie erneut Pings von H1 aus.
Anmerkung:Für dieses Setup wird ein weiteres MX-Gerät verwendet, um den Server S1 darzustellen, um die Überwachung des eingehenden Datenverkehrs zu ermöglichen.
user@S1> monitor traffic interface xe-1/1/1 no-resolve verbose output suppressed, use <detail> or <extensive> for full protocol decode Address resolution is OFF. Listening on xe-1/1/1, capture size 96 bytes 20:19:36.182690 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 4436, seq 0, length 64 20:19:36.182719 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 4436, seq 0, length 64 20:19:37.182918 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 4436, seq 1, length 64 20:19:37.182945 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 4436, seq 1, length 64 20:19:38.183914 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 4436, seq 2, length 64 20:19:38.183940 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 4436, seq 2, length 64 20:19:39.184872 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 4436, seq 3, length 64 20:19:39.184896 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 4436, seq 3, length 64 20:19:40.185882 In IP 192.0.2.2 > 192.168.1.2: ICMP echo request, id 4436, seq 4, length 64 20:19:40.185907 Out IP 192.168.1.2 > 192.0.2.2: ICMP echo reply, id 4436, seq 4, length 64 ^C 10 packets received by filter 0 packets dropped by kernel
Bedeutung
Schritt 1 oben bestätigt, dass die Inline-NAT-Dienstparameter und der Servicesatz im Next-Hop-Stil korrekt implementiert sind. Schritt 2 oben bestätigt, dass Server S1 die Pings von H1 korrekt von seiner NAT-übersetzten Quell-IP-Adresse empfängt.
Tabellarischer Änderungsverlauf
Die Unterstützung der Funktion hängt von der Plattform und der Version ab, die Sie benutzen. Verwenden Sie Funktionen entdecken , um festzustellen, ob eine Funktion auf Ihrer Plattform unterstützt wird.
twice-basic-nat-44
Inline-NAT auch