Dell Networking SONiC: Network Address Translation (NAT)

Samenvatting: In dit artikel wordt uitgelegd over Network Address Translation (NAT) in Dell Networking SONiC. Dit artikel gebruikt een switch met Dell SONiC 4.1.

Dit artikel is van toepassing op Dit artikel is niet van toepassing op Dit artikel is niet gebonden aan een specifiek product. Niet alle productversies worden in dit artikel vermeld.

Instructies

 
Vereisten
Standaardinterface-naamgeving wordt gebruikt om de concepten aan te tonen. Zie het Dell artikel 202172, Dell Networking S serie: Basic Interface Configuration - SONiC 4.0 voor meer informatie over interfacenamen


Index

Inleiding

OPMERKING: Network Address Translation (NAT) is alleen beschikbaar in de bundels Cloud Standard, Cloud Premium, Enterprise Standard en Enterprise Premium. NAT is niet beschikbaar in de Edge Standard-bundel.

Network Address Translation maakt het proces mogelijk dat een openbaar IP-adres toewijst aan apparaten die toegang hebben tot bronnen buiten het netwerk. NAT bespaart IP-adresgebruik in het lokale netwerk.

NAT is niet vereist binnen het netwerk om verkeer tussen privé-IP-adressen te routeren. Een NAT-gateway vertaalt de privé-IP-adressen van lokale netwerkapparaten naar een wereldwijd uniek, openbaar IP-adres wanneer ze communiceren met externe apparaten.
 
OPMERKING: Network Address Translation wordt niet ondersteund op de Z9432F-ON.
 

NAT inschakelen

NAT inschakelen en NAT-configuratieopdrachten invoeren in nat-configuratiemodus:
  • Nat inschakelen:
sonic(config-nat)# enable

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# enable
  • Nat uitschakelen:

DELLSONiC(config-nat)# no enable
 

NAT-configuratievolgorde

Nadat NAT is ingeschakeld, kunnen de volgende stappen in elke willekeurige volgorde worden voltooid:
  • NAT-zones configureren
  • Voeg een statische NAT-vermelding toe
  • Voeg een statische NAT-vermelding toe met een L4-poort
  • Een NAT-adresgroep maken
  • NAT-binding configureren
  • Een dynamische NAT-time-out configureren
 

NAT-zones maken

Een NAT-zone configureren op L3-interfaces zodat NAT-adresomzetting wordt uitgevoerd op pakketten wanneer een pakket een zone doorloopt op geconfigureerde interfaces. Een NAT-zone kan worden geconfigureerd op elke Ethernet-, VLAN-, poortkanaal- of loopback-interface die is geconfigureerd met een IP-adres. Het bereik van NAT-zonenummers ligt tussen 0 en 3.

De bronzone van een pakket is de zone van de binnenkomende interface waarop het pakket wordt ontvangen. De doelzone van het pakket is de zone van de L3 next-hop-interface van de L3-routezoekactie van het doeladres.
  • Binnenkomend verkeer dat op een broninterface wordt ingevoerd, wordt L3 doorgestuurd met behulp van statische Dnat-vertaling (Destination Network Address Translation).
  • Uitgaand verkeer dat wordt verzonden op een doelinterface wordt dynamisch vertaald met Source Network Address Translation (SNAT).
  • L3-interfaces bevinden zich standaard in NAT-zone 0. NAT-zone 0 wordt beschouwd als een binnenzone.
 
  • Een NAT-zone maken:
sonic(conf-if-interface)# nat-zone <0..3>

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC (config)# interface Eth1/2
DELLSONiC (conf-if-Eth1/2)# ip address 20.20.20.20/24
DELLSONiC (conf-if-Eth1/2)# nat-zone 1
DELLSONiC (conf-if-Eth1/2)# exit
DELLSONiC (config)# interface Vlan 5
DELLSONiC (conf-if-Vlan5)# ip address 23.23.23.23/24
DELLSONiC (conf-if-Vlan5)# nat-zone 1
DELLSONiC (conf-if-Vlan5)# exit
DELLSONiC (config)# interface PortChannel 2
DELLSONiC (conf-if-po2)# ip address 25.25.25.25/24
DELLSONiC (conf-if-po2)# nat-zone 1
DELLSONiC (conf-if-po2)# exit
DELLSONiC (config)# interface Loopback 1
DELLSONiC (conf-if-lo1)# ip address 10.10.10.10/32
DELLSONiC (conf-if-lo1)# nat-zone 2
  • Een NAT-zone verwijderen:

sonic(conf-if-interface)# no nat-zone <0..3>

DELLSONiC (conf-if-lo1)# no nat-zone 2
 

Maak een statische NAT-vermelding.

Om buiten het netwerk via internet te communiceren, kan een gebruiker handmatig een statische NAT-vermelding configureren om een lokaal IP-adres te vervangen door een wereldwijd uniek IP-adres. Statische NAT's kunnen worden gemaakt met of zonder L4-poortvertaling. Statische NAT's met een L4-poortreferentie kunnen een lokaal IP-adres en TCP- of UDP-poortnummer omzetten in een globaal IP-adres met TCP- of UDP-poortnummer.
  • Een statische NAT zonder L4-poortvertaling maken:
sonic(conf-nat)# static basic global-ip local-ip [snat | dnat] [twice_nat_id value]
  • Source NAT (SNAT) - Vertaalt een bron-IP-adres in het lokale netwerk naar een wereldwijd IP-adres dat naar een extern netwerk wordt verzonden. Externe apparaten in externe netwerken gebruiken het algemene adres om toegang te krijgen tot het lokale apparaat.
  • Doel-NAT (DNAT) - Vertaalt een doel-IP-adres in pakketten, die worden ontvangen van een extern netwerk en het lokale netwerk doorboren, naar een lokaal IP-adres dat wordt gebruikt in het lokale netwerk. DNAT is de standaardinstelling.
  • twice_nat_id waarde - Voert adresvertaling uit op zowel bron- als doel-IP-adressen voor statische vermeldingen die dezelfde waarde hebben.
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# static basic 125.4.4.4 12.1.1.1
DELLSONiC(config-nat)# static basic 100.100.100.100 15.15.15.15 snat twice-nat-id 5
DELLSONiC(config-nat)# static basic 200.200.200.5 17.17.17.17 dnat twice-nat-id 5
  • Een statische NAT maken met L4-poortvertaling:
sonic(conf-nat)# static {tcp | udp} global-ip global-port local-ip local-port [snat | dnat] [twice_nat_id value]
  • Source NAT (SNAT) - Vertaalt een bron-IP-adres en TCP/UDP-poort in het lokale netwerk naar een globaal IP-adres en TCP/UDP-poort die naar een extern netwerk worden verzonden. Externe apparaten in externe netwerken gebruiken het algemene adres en de L4-poort om toegang te krijgen tot het lokale apparaat.
  • Doel-NAT (DNAT) - Vertaalt een doel-IP-adres en TCP/UDP-poort in pakketten, die worden ontvangen van een extern netwerk en het lokale netwerk doorboren, naar een lokaal IP-adres en TCP/UDP-poort die in het lokale netwerk worden gebruikt. DNAT is de standaardinstelling.
  • twice_nat_id waarde - Voert adresvertaling uit op zowel bron- als doel-IP-adressen voor statische vermeldingen met dezelfde ID-waarde.
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# static udp 148.56.7.7 8991 10.11.1.12 2000
DELLSONiC(config-nat)# static tcp 123.3.4.1 901 11.11.1.1 1000
DELLSONiC(config-nat)# static tcp 65.55.46.6 106 20.0.0.6 206 dnat twice-nat-id 200
DELLSONiC(config-nat)# static tcp 65.55.45.5 100 20.0.0.5 200 snat twice-nat-id 200
  • Een NAT statische vermelding verwijderen:
sonic(conf-nat)# no static basic global-ip
sonic(conf-nat)# no static {tcp | udp} global-ip global-port

DELLSONiC(config-nat)# no static basic 125.4.4.4
DELLSONiC(config-nat)# no static basic 100.100.100.100
DELLSONiC(config-nat)# no static basic 200.200.200.5
DELLSONiC(config-nat)# no static udp 148.56.7.7 8991
DELLSONiC(config-nat)# no static tcp 123.3.4.1 901
DELLSONiC(config-nat)# no static tcp 65.55.46.6 106
DELLSONiC(config-nat)# no static tcp 65.55.45.5 100


Statisch NAT-voorbeeld

In het onderstaande voorbeeld ziet u dat Netwerk A een router gebruikt waarop NAT is ingeschakeld. Wanneer Host 100.100.100.101 op het LAN-segment verkeer verzendt naar een externe bestemming (200.200.200.201), wordt het verkeer verzonden naar de NAT-router om via internet naar Host 200.200.200.201 te worden geleid. De NAT-router vertaalt het bron-IP (SRC IP) 100.100.100.101 naar een nieuwe bron-IP 1.1.1.2. De NAT-router voert een Source Network Address Translation (SNAT) uit waarbij het interne privéadres van 100.100.100.101 wordt vertaald naar het externe adres van 1.1.1.2. De NAT-router voert een Destination Network Address Translation (DNAT) uit voor het retourverkeer van host 200.200.200.201 terug naar netwerk A naar host 100.100.100.101.
Voorbeeld van Statis NAT
Afbeelding 1: Voorbeeld van statische netwerkadresvertaling
  • Configureer de NAT-zones:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC (config)# interface Eth1/10
DELLSONiC (conf-if-Eth1/10)# ip address 100.100.100.1/24
DELLSONiC (conf-if-Eth1/10)# nat-zone 0
DELLSONiC (conf-if-Eth1/10)# exit
DELLSONiC (config)# interface Eth1/20
DELLSONiC (conf-if-Eth1/20)# ip address 1.1.1.2/30
DELLSONiC (conf-if-Eth1/20)# nat-zone 1
DELLSONiC (conf-if-Eth1/20)# exit
  • NAT inschakelen:

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# enable
  • Maak een statische NAT zonder L4-poortvertaling:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# static basic 1.1.1.2 100.100.100.101

 

Maak een dynamische NAT. 

Dynamische NAT vervangt een lokaal adres door een adres uit een pool met algemene adressen.
Dynamische vertaling is handig wanneer meerdere gebruikers op een particulier netwerk toegang hebben tot internet.
 

NAT-adresgroep configureren  

Configureer een pool met beschikbare algemene adressen door het globale IP-adresbereik te definiëren en optioneel het TCP/UDP-poortbereik dat wordt gebruikt voor lokale adresomzetting. 

  • Nat-adresgroep maken:
sonic(conf-nat)# pool pool-name global-ip-range [global-port-range]
  1. Voer het globale IP-adresbereik in de indeling ip-address-ip-address in.
  2. Voer het TCP/UDP-poortnummerbereik in de indeling poortnummer-poortnummer in.
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# pool Pool1 19.19.19.19
DELLSONiC(config-nat)# pool Pool2 20.0.0.7 1024-65535
DELLSONiC(config-nat)# pool Pool3 65.55.45.10-65.55.45.15 500-1000
  • Een NAT-adresgroep verwijderen:
sonic(conf-nat)# no pool pool-name

DELLSONiC(config-nat)# no pool Pool1
  • Verwijder alle NAT-adresgroepen:
sonic(conf-nat)# no pools
 

NAT-binding configureren

  • Maak een NAT-binding aan een NAT-adresgroep:
sonic(conf-nat)# binding binding-name pool-name [acl-name] [snat | dnat] [twice_nat_id value]
  • SNAT - Vertaalt een bron-IP-adres naar een globaal IP-adres in de pool. SNAT is de standaardinstelling in NAT-binding.
  • DNAT - Vertaalt een doel-IP-adres naar een wereldwijd IP-adres in de pool.
  • twice_nat_id waarde - Voert adresvertaling uit op zowel bron- als doel-IP-adressen met behulp van de adresgroep voor statische vermeldingen met dezelfde ID-waarde.
  • acl-naam - Om de IP-adressen in een globale NAT-adresgroep te beperken, kunt u een toegangsbeheerlijst (ACL) gebruiken. Een permit statement staat de IP-adressen toe met de kenmerken geconfigureerd in de permitregel. Een weigeringsverklaring weigert pakketten met de kenmerken die zijn geconfigureerd in de geweigerde regel. In een ACL kunnen pakketten met de do_not_nat-vermelding worden gerouteerd in plaats van vertaald.
OPMERKING: ACL-NAME is een optioneel argument. Als het argument ACL-NAME niet wordt gegeven, is de NAT-binding van toepassing op alle verkeer.
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# binding Bind1 Pool1 10_ACL_IPV4
DELLSONiC(config-nat)# binding Bind2 Pool2 12_ACL_IPV4 snat twice-nat-id 25
DELLSONiC(config-nat)# binding Bind3 Pool3 15_ACL_IPV4 dnat twice-nat-id 25
  • Een NAT-binding verwijderen:
sonic(conf-nat)# no binding binding-name

DELLSONiC(config-nat)# no binding Bind1
  • Verwijder alle NAT-bindingen:
sonic(conf-nat)# no bindings

 

Dynamische NAT-time-out configureren 

Standaard is er na 10 minuten (600 seconden) alleen een time-out voor dynamische adresvertalingsconfiguraties als er geen actief verkeer

is, is er geen time-out voor statische NAT-vermeldingen. Als u de dynamische NAT-time-outwaarde wilt wijzigen, specificeert u een nieuwe waarde in seconden (300 tot 432000).

  • Time-out dynamische adresvertalingsconfiguraties wijzigen:
sonic(conf-nat)# timeout <300..432000>

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# timeout 1200

De NAT-invoer time-outs voor L4 UDP- en TCP NAT-vermeldingen kunnen ook worden aangepast.
Als u de TCP-time-out voor adresvertaling wilt wijzigen, voert u een nieuwe time-outwaarde in seconden in (300 naar 432000; standaard 86400). Als u de UDP-time-out voor adresvertaling wilt wijzigen, voert u een nieuwe waarde in seconden in (120 tot 600; standaard 300).

  • Wijzig dynamische adresvertalingsconfiguraties UDP/TCP time-out:
sonic(conf-nat)# udp-timeout <120..600>
sonic(conf-nat)# tcp-timeout <300..432000>

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# udp-timeout 600
DELLSONiC(config-nat)# tcp-timeout 66460

 

Dynamisch NAT-voorbeeld 

In het onderstaande voorbeeld ziet u dat Netwerk A een router gebruikt waarop NAT is ingeschakeld. Wanneer Host 100.100.100.101 op het LAN-segment verkeer verzendt naar een externe bestemming (200.200.200.201), wordt het verkeer verzonden naar de NAT-router om via internet naar Host 200.200.200.201 te worden geleid. De NAT-router vertaalt het bron-IP (SRC IP) 100.100.100.101 naar een nieuwe bron-IP 1.1.1.2. De NAT-router voert een Source Network Address Translation (SNAT) uit waarbij het interne privéadres van 100.100.100.101 wordt vertaald naar het externe adres van 1.1.1.2. De NAT-router voert een Destination Network Address Translation (DNAT) uit voor het retourverkeer van host 200.200.200.201 terug naar netwerk A naar host 100.100.100.101. Dezelfde NAT-vertaling vindt plaats voor PC2-communicatie met PC3.

Dynamisch NAT-voorbeeld
Afbeelding 2: 
Voorbeeld van dynamische netwerkadresvertaling

  • Configureer de NAT-zones:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC (config)# interface Vlan 100
DELLSONiC (conf-if-Vlan100)# ip address 100.100.100.1/24
DELLSONiC (conf-if-Vlan100)# nat-zone 0
DELLSONiC (conf-if-Vlan100)# exit
DELLSONiC (config)# interface Vlan 300
DELLSONiC (conf-if-Vlan300)# ip address 300.300.300.1/24
DELLSONiC (conf-if-Vlan300)# nat-zone 0
DELLSONiC (conf-if-Vlan300)# exit
DELLSONiC (config)# interface Eth1/20
DELLSONiC (conf-if-Eth1/20)# ip address 1.1.1.2/30
DELLSONiC (conf-if-Eth1/20)# nat-zone 1
DELLSONiC (conf-if-Eth1/20)# exit
  • NAT inschakelen:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# enable
  • Maak een NAT-groep:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# pool Pool1 1.1.1.2
  • Maak een NAT-binding:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# binding Bind1 Pool1
 

NAT-configuratie weergeven 

Gebruik deze opdrachten om de NAT-configuratie en -bewerking en NAT-tabelvermeldingen weer te geven.

  • Nat-vertalingstabel weergeven:
S5296F-Mid-SPINE# show nat translations
Protocol            Source              Destination         Translated Source   Translated Destination
----------------------------------------------------------------------------------------------------------------------------
all                 10.32.20.3          ----                100.100.100.1       ----
all                 ----                100.100.100.1       ----                10.32.20.3
udp                 ----                10.32.20.2:311      ----                100.100.100.100:63
udp                 100.100.100.100:63  ----                10.32.20.2:311      ----
  • Nat-vertalingsvermeldingen wissen:
DELLSONiC# clear nat translations
  • Nat-vertaalstatistieken weergeven:
DELLSONiC# show nat statistics
-----------------------------------------------------------------------------
Protocol       Source                        Destination                   Packets             Bytes
-----------------------------------------------------------------------------
udp            100.100.100.100:63            ---                           15522575563164      993444836042496
  • NAT- en NAT-configuratie weergeven:
DELLSONiC# show nat config static
---------------------------------------------------------------------------------------------------------------------
Nat Type       IP Protocol         Global IP                     Global L4 Port      Local IP                      Local L4 Port       Twice-Nat Id
----------------------------------------------------------------------------------------------------------------------------
dnat           all                 100.100.100.1                 ----                10.32.20.3                    ----                ----
 
  • NAT-pools weergeven:
DELLSONiC# show nat config pool
Pool Name           Global IP Range               Global L4 Port Range
-----------------------------------------------------------------------------
POOL1               100.100.100.2                 1024-6034
POOL2               100.100.100.3-100.100.100.4   ----
  • NAT-bindingsconfiguratie weergeven:
DELLSONiC# show nat config bindings
Binding Name  Pool Name      Access-List         Nat Type       Twice-Nat Id
-----------------------------------------------------------------------------
EXT1          POOL1          ----                ----           ---
EXT2          POOL2          NAT_IPS             ----           ---
  • Algemene NAT-configuratie weergeven:
DELLSONiC# show nat config globalvalues
Admin Mode     : enabled
Global Timeout : 600 secs
TCP Timeout    : 86400 secs
UDP Timeout    : 300 secs
  • L3-interfacezones weergeven:
DELLSONiC# show nat config zones
Port                Zone
-------------------------------------------------
Eth1/1              2
PortChannel12       2
Vlan200             1
Loopback1           1
  • NAT-vertalingsaantallen weergeven:

DELLSONiC# show nat translations count
Static NAT Entries        ................. 2
Static NAPT Entries       ................. 0
Dynamic NAT Entries       ................. 0
Dynamic NAPT Entries      ................. 2
Static Twice NAT Entries  ................. 0
Static Twice NAPT Entries ................. 0
Dynamic Twice NAT Entries ................. 0
Dynamic Twice NAPT Entries ................ 0
Total SNAT/SNAPT Entries   ................ 2
Total DNAT/DNAPT Entries   ................ 2
Total Entries    .......................... 4

Getroffen producten

Enterprise SONiC Distribution, PowerSwitch S5212F-ON, PowerSwitch S5224F-ON, PowerSwitch S5232F-ON, PowerSwitch S5248F-ON, PowerSwitch S5296F-ON, PowerSwitch Z9264F-ON, PowerSwitch Z9332F-ON
Artikeleigenschappen
Artikelnummer: 000220835
Artikeltype: How To
Laatst aangepast: 08 feb. 2024
Versie:  5
Vind antwoorden op uw vragen via andere Dell gebruikers
Support Services
Controleer of uw apparaat wordt gedekt door Support Services.