SUR CETTE PAGE
NAT pour l’instance de routage VRF
Présentation du NAT
La traduction d’adresses réseau (NAT) est une méthode permettant de modifier ou de traduire les informations d’adresse réseau dans les en-têtes de paquets. Le NAT a été décrit dans la RFC 1631 pour résoudre les problèmes d’épuisement des adresses IPv4. Le NAT est un outil utile pour les pare-feu, la redirection du trafic, le partage de charge et les migrations réseau.
Dans un déploiement SD-WAN, les pare-feu sont déployés dans les emplacements en étoile. Différents sites sont connectés au pare-feu en étoile. Les paquets sont envoyés de ces sites à des serveurs Internet publics ou à des sites distants. Au concentrateur, une fois le traitement de sécurité terminé, le paquet est examiné pour déterminer s’il est un serveur Internet public ou un périphérique MPLS next-hop. Si la destination est un serveur Internet public, le NAT convertit l’adresse IP privée VRF (Virtual Routing and Forwarding) en une adresse IP publique et établit une session. De même, le NAT est nécessaire pour que le trafic provenant des serveurs Internet publics atteigne un réseau privé VRF.
Les types de NAT suivants sont pris en charge sur les équipements Juniper Networks :
NAT statique
Destination NAT
Source NAT
Exemple : Configuration du NAT source pour convertir l’adresse IP privée d’une instance VRF en adresse IP privée d’une autre instance VRF
Cet exemple décrit comment configurer un NAT source entre deux réseaux MPLS.
Exigences
Avant de commencer
-
Comprendre le fonctionnement des pare-feu dans un déploiement SD-WAN pour le NAT. Voir Présentation du NAT.
-
Comprendre les instances de routage et de transfert virtuelles. Voir Instances de routage et de transfert virtuels dans les déploiements SD-WAN.
Exemples de prérequis
-
Configuration logicielle requise : toute version de Junos prise en charge.
-
Configuration matérielle requise : Sur les appareils pris en charge.
Vue d’ensemble
Le NAT source est la traduction de l’adresse IP source d’un paquet quittant l’appareil Juniper Networks. Le NAT source est utilisé pour permettre aux hôtes avec des adresses IP privées d’accéder à un réseau public.
Dans cet exemple, le pare-feu connecte deux réseaux privés MPLS pour convertir l’adresse IP privée de l’adresse IP privée d’un VRF à l’adresse IP privée d’un autre VRF. Sur la Figure 1, le pare-feu spoke est configuré avec des instances de routage VRF-a et VRF-b, qui sont connectées au pare-feu du hub. Le site C et le site D sont connectés à un autre pare-feu en étoile. Dans le pare-feu du hub, les adresses IP sources 192.168.1.200 et 192.168.1.201 des instances de routage VRF-a et VRF-b sont traduites en 203.0.113.200 et 203.0.113.201.
du NAT source
La configuration
Procédure
Configuration rapide de la CLI
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, copiez et collez les commandes dans la CLI au niveau de la [edit] hiérarchie, puis entrez commit en mode configuration.
set routing-instances VRF-a instance-type vrf set routing-instances VRF-a route-distinguisher 30:200 set routing-instances VRF-a vrf-target target:100:100 set routing-instances VRF-a vrf-table-label set routing-instances VRF-b instance-type vrf set routing-instances VRF-b route-distinguisher 40:200 set routing-instances VRF-b vrf-target target:200:100 set routing-instances VRF-b vrf-table-label set routing-instances VRF-a1 instance-type vrf set routing-instances VRF-a1 route-distinguisher 60:200 set routing-instances VRF-a1 vrf-target target:300:100 set routing-instances VRF-a1 vrf-table-label set routing-instances VRF-b1 instance-type vrf set routing-instances VRF-b1 route-distinguisher 50:200 set routing-instances VRF-b1 vrf-target target:400:100 set routing-instances VRF-b1 vrf-table-label set security nat source pool vrf-a_p address 203.0.113.200 set security nat source rule-set vrf-a_rs from routing-instance VRF-a set security nat source rule-set vrf-a_rs to routing-instance VRF-a1 set security nat source rule-set vrf-a_rs rule rule1 match source-address 192.168.1.200 set security nat source rule-set vrf-a_rs rule rule1 then source-nat pool vrf-a_p set security nat source pool vrf-b_p address 203.0.113.201 set security nat source rule-set vrf-b_rs from routing-instance VRF-b set security nat source rule-set vrf-b_rs to routing-instance VRF-b1 set security nat source rule-set vrf-b_rs rule rule2 match source-address 192.168.1.201 set security nat source rule-set vrf-b_rs rule rule2 then source-nat pool vrf-b_p
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration.
Pour configurer le mappage NAT source :
Les VPN de couche 3 nécessitent une table VRF pour distribuer les routes au sein des réseaux. Créez une instance VRF et spécifiez la valeur vrf.
[edit routing-instances] user@host#set VRF-a instance-type vrf user@host#set VRF-b instance-type vrf user@host#set VRF-a1 instance-type vrf user@host#set VRF-b1 instance-type vrf
Attribuez un distingueur de route à l’instance de routage.
[edit routing-instances] user@host#set VRF-a route-distinguisher 30:200 user@host#set VRF-b route-distinguisher 40:200 user@host#set VRF-a1 route-distinguisher 60:200 user@host#set VRF-b1 route-distinguisher 50:200
Créez une stratégie de communauté pour importer ou exporter toutes les routes.
[edit routing-instances] user@host#set VRF-a vrf-target target:100:100 user@host#set VRF-b vrf-target target:200:100 user@host#set VRF-a1 vrf-target target:300:100 user@host#set VRF-b1 vrf-target target:400:100
Attribuez une étiquette VPN unique à toutes les routes du VRF.
[edit routing-instances] user@host#set VRF-a vrf-table-label user@host#set VRF-a1 vrf-table-label user@host#set VRF-b vrf-table-label user@host#set VRF-b1 vrf-table-label
Créez un pool NAT source.
[edit security nat source] user@host#set vrf-a_p address 203.0.113.200 user@host#set vrf-b_p address 203.0.113.201
Créez un ensemble de règles NAT source.
[edit security nat source] user@host#set rule-set vrf-a_rs from routing-instance VRF-a user@host#set rule-set vrf-a_rs to routing-instance VRF-a1 user@host#set rule-set vrf-b_rs from routing-instance VRF-b user@host#set rule-set vrf-b_rs to routing-instance VRF-b1
Configurez une règle qui correspond aux paquets et traduit l’adresse IP source en une adresse IP dans le pool NAT source.
[edit security nat source] user@host# set rule-set vrf-a_rs rule rule1 match source-address 192.168.1.200 user@host# set rule-set vrf-a_rs rule rule1 then source-nat pool vrf-a_p user@host# set rule-set vrf-b_rs rule rule2 match source-address 192.168.1.201 user@host# set rule-set vrf-b_rs rule rule2 then source-nat pool vrf-b_p
Résultats
En mode configuration, confirmez votre configuration en entrant les show security nat commandes and show routing-instances . Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration de cet exemple pour la corriger.
[edit]
user@host# show security nat
source {
pool vrf-a_p {
address {
203.0.113.200/32;
}
}
pool vrf-b_p {
address {
203.0.113.201/32;
}
}
rule-set vrf-a_rs {
from routing-instance VRF-a;
to routing-instance VRF-a1;
rule rule1 {
match {
source-address 192.168.1.200/32;
}
then {
source-nat {
pool {
vrf-a_p;
}
}
}
}
}
rule-set vrf-b_rs {
from routing-instance VRF-b;
to routing-instance VRF-b1;
rule rule2 {
match {
source-address 192.168.1.201/32;
}
then {
source-nat {
pool {
vrf-b_p;
}
}
}
}
}
}
[edit]
user@host# show routing-instances
VRF-a {
instance-type vrf;
route-distinguisher 30:200;
vrf-target target:100:100;
vrf-table-label;
}
VRF-a1 {
instance-type vrf;
route-distinguisher 60:200;
vrf-target target:300:100;
vrf-table-label;
}
VRF-b {
instance-type vrf;
route-distinguisher 40:200;
vrf-target target:200:100;
vrf-table-label;
}
VRF-b1 {
instance-type vrf;
route-distinguisher 50:200;
vrf-target target:400:100;
vrf-table-label;
}
Si vous avez terminé de configurer l’appareil, entrez en commit mode configuration.
Vérification
Vérification de l’utilisation des règles NAT source
Objet
Vérifiez qu’il existe du trafic correspondant à la règle NAT source.
Mesures à prendre
À partir du mode opérationnel, entrez la show security nat source rule all commande. Dans le champ Accès à la traduction, vérifiez s’il existe un trafic qui correspond à la règle NAT source.
user@host>show security nat source rule all
Total rules: 2
Total referenced IPv4/IPv6 ip-prefixes: 2/0
source NAT rule: rule1 Rule-set: vrf-a_rs
Rule-Id : 1
Rule position : 1
From routing instance : VRF-a
To routing instance : VRF-a1
Match
Source addresses : 192.168.1.200 - 192.168.1.200
Action : vrf-a_p
Persistent NAT type : N/A
Persistent NAT mapping type : address-port-mapping
Inactivity timeout : 0
Max session number : 0
Translation hits : 0
Successful sessions : 0
Failed sessions : 0
Number of sessions : 0
source NAT rule: rule2 Rule-set: vrf-b_rs
Rule-Id : 2
Rule position : 2
From routing instance : VRF-b
To routing instance : VRF-b1
Match
Source addresses : 192.168.1.201 - 192.168.1.201
Action : vrf-b_p
Persistent NAT type : N/A
Persistent NAT mapping type : address-port-mapping
Inactivity timeout : 0
Max session number : 0
Translation hits : 0
Successful sessions : 0
Failed sessions : 0
Number of sessions : 0
Exemple : Configuration de la NAT de destination pour convertir une adresse IP publique en adresse IP privée unique VRF d’une instance VRF
Cet exemple décrit comment configurer le mappage NAT de destination d’une adresse IP publique à l’adresse privée du VRF unique pour diriger les paquets vers l’instance VRF appropriée.
Exigences
Comprendre le fonctionnement des pare-feu dans un déploiement SD-WAN pour le NAT. Voir Présentation du NAT.
Comprendre les instances de routage et de transfert virtuelles. Voir Instances de routage et de transfert virtuels dans les déploiements SD-WAN.
Vue d’ensemble
Le NAT de destination est la traduction de l’adresse IP de destination d’un paquet entrant dans l’équipement Juniper Networks. Le NAT de destination est utilisé pour rediriger le trafic destiné à un hôte virtuel (identifié par l’adresse IP de destination d’origine) vers l’hôte réel (identifié par l’adresse IP de destination traduite).
Dans cet exemple, un pare-feu est configuré avec le NAT de destination pour convertir une adresse IP publique en adresse IP privée VRF d’une instance VRF. L’adresse IP publique peut être configurée par instance VRF. Sur la Figure 2, le pare-feu est configuré avec deux instances VRF, VRF-a et VRF-b. Le pare-feu remplace l’adresse IP publique par l’adresse IP privée d’une instance VRF.
de destination
La configuration
Procédure
Configuration rapide de la CLI
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, copiez et collez les commandes dans la CLI au niveau de la [edit] hiérarchie, puis entrez commit en mode configuration.
set routing-instances VRF-a instance-type vrf set routing-instances VRF-a route-distinguisher 30:200 set routing-instances VRF-a vrf-target target:100:100 set routing-instances VRF-a vrf-table-label set routing-instances VRF-b instance-type vrf set routing-instances VRF-b route-distinguisher 40:200 set routing-instances VRF-b vrf-target target:200:100 set routing-instances VRF-b vrf-table-label set security nat destination pool vrf-a_p routing-instance VRF-a set security nat destination pool vrf-a_p address 192.168.1.200 set security nat destination rule-set rs from interface ge-0/0/0 set security nat destination rule-set rs rule vrf-a_r match destination-address 203.0.113.200 set security nat destination rule-set rs rule vrf-a_r then destination-nat pool vrf-a_p set security nat destination pool vrf-b_p routing-instance VRF-b set security nat destination pool vrf-b_p address 192.168.1.201 set security nat destination rule-set rs from interface ge-0/0/1 set security nat destination rule-set rs rule vrf-b_r match destination-address 203.0.113.201 set security nat destination rule-set rs rule vrf-b_r then destination-nat pool vrf-b_p
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration.
Pour configurer le mappage NAT de destination pour un seul VRF :
Les VPN de couche 3 nécessitent une table VRF pour distribuer les routes au sein des réseaux. Créez une instance VRF et spécifiez la valeur vrf.
[edit routing-instances] user@host#set VRF-a instance-type vrf user@host#set VRF-b instance-type vrf
Attribuez un distingueur de route à l’instance de routage.
[edit routing-instances] user@host#set VRF-a route-distinguisher 30:200 user@host#set VRF-b route-distinguisher 40:200
Créez une stratégie de communauté pour importer ou exporter toutes les routes.
[edit routing-instances] user@host#set VRF-a vrf-target target:100:100 user@host#set VRF-b vrf-target target:200:100
Attribuez une étiquette VPN unique à toutes les routes du VRF.
[edit routing-instances] user@host#set VRF-a vrf-table-label user@host#set VRF-b vrf-table-label
Spécifiez un pool d’adresses IP NAT de destination.
[edit security nat destination] user@host# set pool vrf-a_p address 192.168.1.200 user@host# set pool vrf-b_p address 192.168.1.201
Affectez l’instance de routage au pool de destination.
[edit security nat destination] user@host# set pool vrf-a_p routing-instance VRF-a user@host# set pool vrf-b_p routing-instance VRF-b
Créez un ensemble de règles NAT de destination.
[edit security nat destination] user@host# set rule-set rs from interface ge-0/0/0 user@host# set rule-set rs from interface ge-0/0/1
Configurez une règle qui correspond aux paquets et traduit l’adresse IP de destination en une adresse IP dans le pool d’adresses IP NAT de destination.
[edit security nat destination] user@host# set rule-set rs rule vrf-a_r match destination-address 203.0.113.200 user@host# set rule-set rs rule vrf-a_r then destination-nat pool vrf-a_p user@host# set rule-set rs rule vrf-b_r match destination-address 203.0.113.201 user@host# set rule-set rs rule vrf-b_r then destination-nat pool vrf-b_p
Résultats
En mode configuration, confirmez votre configuration en entrant les show security nat commandes and show routing-instances . Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration de cet exemple pour la corriger.
[edit]
user@host# show security nat
destination {
pool vrf-a_p {
routing-instance {
VRF-a;
}
address 192.168.1.200/32;
}
pool vrf-b_p {
routing-instance {
VRF-b;
}
address 192.168.1.201/32;
}
rule-set rs {
from interface [ ge-0/0/0.0 ge-0/0/1.0 ];
rule vrf-a_r {
match {
destination-address 203.0.113.200/32;
}
then {
destination-nat {
pool {
vrf-a_p;
}
}
}
}
rule vrf-b_r {
match {
destination-address 203.0.113.201/32;
}
then {
destination-nat {
pool {
vrf-b_p;
}
}
}
}
}
}
[edit]
user@host# show routing-instances
VRF-a {
instance-type vrf;
route-distinguisher 30:200;
vrf-target target:100:100;
vrf-table-label;
}
VRF-b {
instance-type vrf;
route-distinguisher 40:200;
vrf-target target:200:100;
vrf-table-label;
}
Si vous avez terminé de configurer l’appareil, entrez en commit mode configuration.
Vérification
Vérification de l’utilisation des règles NAT de destination
Objet
Vérifiez qu’il existe un trafic correspondant à la règle NAT de destination.
Mesures à prendre
À partir du mode opérationnel, entrez la show security nat destination rule all commande. Dans le champ Accès à la traduction, vérifiez s’il existe un trafic qui correspond à la règle NAT de destination.
user@host> show security nat destination rule all
Total destination-nat rules: 2
Total referenced IPv4/IPv6 ip-prefixes: 2/0
Destination NAT rule: vrf-a_r Rule-set: rs
Rule-Id : 1
Rule position : 1
From interface : ge-0/0/0.0
: ge-0/0/1.0
Destination addresses : 203.0.113.200 - 203.0.113.200
Action : vrf-a_p
Translation hits : 0
Successful sessions : 0
Failed sessions : 0
Number of sessions : 0
Destination NAT rule: vrf-b_r Rule-set: rs
Rule-Id : 2
Rule position : 2
From interface : ge-0/0/0.0
: ge-0/0/1.0
Destination addresses : 203.0.113.201 - 203.0.113.201
Action : vrf-b_p
Translation hits : 0
Successful sessions : 0
Failed sessions : 0
Number of sessions : 0
Exemple : Configuration de la NAT statique pour convertir l’adresse IP privée d’une instance VRF en adresse IP publique
Cet exemple décrit comment configurer un mappage NAT statique d’une seule adresse IP privée VRF à une adresse IP publique.
Exigences
Comprendre le fonctionnement des pare-feu dans un déploiement SD-WAN pour le NAT. Voir Présentation du NAT.
Vue d’ensemble
Dans cet exemple, un pare-feu est configuré avec une NAT statique pour convertir l’adresse IP privée VRF d’une instance VRF en adresse IP publique d’une instance VRF. Des NAT statiques peuvent être appliquées sur le NAT source et le NAT de destination. Sur la Figure 3, le pare-feu est configuré avec deux instances VRF, VRF-a et VFR-b. Le pare-feu convertit l’adresse IP privée d’une instance VRF en adresse IP publique.
statique
La configuration
Procédure
Configuration rapide de la CLI
Pour configurer rapidement cet exemple, copiez les commandes suivantes, collez-les dans un fichier texte, supprimez les sauts de ligne, modifiez tous les détails nécessaires pour qu’ils correspondent à votre configuration réseau, copiez et collez les commandes dans la CLI au niveau de la [edit] hiérarchie, puis entrez commit en mode configuration.
set routing-instances VRF-a instance-type vrf set routing-instances VRF-a route-distinguisher 30:200 set routing-instances VRF-a vrf-target target:100:100 set routing-instances VRF-a vrf-table-label set routing-instances VRF-b instance-type vrf set routing-instances VRF-b route-distinguisher 40:200 set routing-instances VRF-b vrf-target target:200:100 set routing-instances VRF-b vrf-table-label set security nat static rule-set rs from interface ge-0/0/0 set security nat static rule-set rs rule vrf-a_r match static-address 203.0.113.200 set security nat static rule-set rs rule vrf-a_r then static-nat prefix 192.168.1.200 set security nat static rule-set rs rule vrf-a_r then static-nat prefix routing-instance VRF-a set security nat static rule-set rs from interface ge-0/0/1 set security nat static rule-set rs rule vrf-b_r match static-address 203.0.113.201 set security nat static rule-set rs rule vrf-b_r then static-nat prefix 192.168.1.201 set security nat static rule-set rs rule vrf-b_r then static-nat prefix routing-instance VRF-b
Procédure étape par étape
L’exemple suivant vous oblige à naviguer à différents niveaux dans la hiérarchie de configuration.
Pour configurer le mappage NAT statique pour l’adresse IP d’un seul VRF :
Les VPN de couche 3 nécessitent une table VRF pour distribuer les routes au sein des réseaux. Créez une instance VRF et spécifiez la valeur vrf.
[edit routing-instances] user@host#set VRF-a instance-type vrf user@host#set VRF-b instance-type vrf
Attribuez un distingueur de route à l’instance de routage.
[edit routing-instances] user@host#set VRF-a route-distinguisher 30:200 user@host#set VRF-b route-distinguisher 40:200
Créez une stratégie de communauté pour importer ou exporter toutes les routes.
[edit routing-instances] user@host#set VRF-a vrf-target target:100:100 user@host#set VRF-b vrf-target target:200:100
Attribuez une étiquette VPN unique à toutes les routes du VRF.
[edit routing-instances] user@host#set VRF-a vrf-table-label user@host#set VRF-b vrf-table-label
Créez un ensemble de règles NAT statiques.
[edit security nat static] user@host# set rule-set rs from interface ge-0/0/0 user@host# set rule-set rs from interface ge-0/0/1
Configurez une règle qui correspond aux paquets et traduit l’adresse de destination dans les paquets en une adresse IP privée.
[edit security nat static] user@host# set rule-set rs rule vrf-a_r match static-address 203.0.113.200 user@host# set rule-set rs rule vrf-a_r then static-nat prefix 192.168.1.200 user@host# set rule-set rs rule vrf-a_r then static-nat prefix routing-instance VRF-a user@host# set rule-set rs rule vrf-b_r match static-address 203.0.113.201 user@host# set rule-set rs rule vrf-b_r then static-nat prefix 192.168.1.201 user@host# set rule-set rs rule vrf-b_r then static-nat prefix routing-instance VRF-b
Résultats
En mode configuration, confirmez votre configuration en entrant les show security nat commandes and show routing-instances . Si la sortie n’affiche pas la configuration prévue, répétez les instructions de configuration de cet exemple pour la corriger.
[edit]
user@host# show security nat
static {
rule-set rs {
from interface [ ge-0/0/0.0 ge-0/0/1.0 ];
rule vrf-a_r {
match {
destination-address 203.0.113.200/32;
}
then {
static-nat {
prefix {
192.168.1.200/32;
routing-instance VRF-a;
}
}
}
}
rule vrf-b_r {
match {
destination-address 203.0.113.201/32;
}
then {
static-nat {
prefix {
192.168.1.201/32;
routing-instance VRF-b;
}
}
}
}
}
}
[edit]
user@host# show routing-instances
VRF-a {
instance-type vrf;
route-distinguisher 30:200;
vrf-target target:100:100;
vrf-table-label;
}
VRF-b {
instance-type vrf;
route-distinguisher 40:200;
vrf-target target:200:100;
vrf-table-label;
}
Si vous avez terminé de configurer l’appareil, entrez en commit mode configuration.
Vérification
Vérification de l’utilisation des NAT statiques
Objet
Vérifiez qu’il existe du trafic correspondant à la règle NAT statique.
Mesures à prendre
À partir du mode opérationnel, entrez la show security nat static rule commande. Dans le champ Accès à la traduction, vérifiez s’il existe un trafic qui correspond à la règle NAT statique.
user@host> show security nat static rule all
Total static-nat rules: 2
Total referenced IPv4/IPv6 ip-prefixes: 4/0
Static NAT rule: vrf-a_r Rule-set: rs
Rule-Id : 1
Rule position : 1
From interface : ge-0/0/0.0
: ge-0/0/1.0
Destination addresses : 203.0.113.200
Host addresses : 192.168.1.200
Netmask : 32
Host routing-instance : VRF-a
Translation hits : 0
Successful sessions : 0
Failed sessions : 0
Number of sessions : 0
Static NAT rule: vrf-b_r Rule-set: rs
Rule-Id : 2
Rule position : 2
From interface : ge-0/0/0.0
: ge-0/0/1.0
Destination addresses : 203.0.113.201
Host addresses : 192.168.1.201
Netmask : 32
Host routing-instance : VRF-b
Translation hits : 0
Successful sessions : 0
Failed sessions : 0
Number of sessions : 0