Dell Networking SONiC. Перевод сетевых адресов (NAT)

Сводка: В этой статье рассказывается о переводе сетевых адресов (NAT) в Dell Networking SONiC. В этой статье используется коммутатор под управлением Dell SONiC 4.1.

Данная статья применяется к Данная статья не применяется к Эта статья не привязана к какому-либо конкретному продукту. В этой статье указаны не все версии продуктов.

Инструкции

 
Предварительные условия
Для демонстрации концепций используется стандартное именование интерфейсов. См. статью Dell 202172 Dell Networking серии S: Базовая конфигурация интерфейса — SONiC 4.0 для получения дополнительной информации об именовании интерфейсов


Индекс

Введение

ПРИМЕЧАНИЕ. Перевод сетевых адресов (NAT) доступен только в пакетах Cloud Standard, Cloud Premium, Enterprise Standard и Enterprise Premium. Протокол NAT недоступен в пакете Edge Standard.

Перевод сетевых адресов позволяет назначать публичный IP-адрес устройствам, которые имеют доступ к ресурсам за пределами сети. NAT сохраняет использование IP-адресов в локальной сети.

Протокол NAT в сети не требуется для маршрутизируемого трафика между частными IP-адресами. Шлюз NAT преобразует частные IP-адреса локальных сетевых устройств в глобальный уникальный общедоступный IP-адрес, когда они обмениваются данными с удаленными устройствами.
 
ПРИМЕЧАНИЕ. Перевод сетевых адресов не поддерживается в Z9432F-ON.
 

Включить NAT

Чтобы включить NAT и войти в команды конфигурации NAT в режиме конфигурации NAT, выполните следующие действия.
  • Чтобы включить ПРОТОКОЛ NAT, с помощью
sonic(config-nat)# enable

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# enable
  • Чтобы отключить NAT, сйдите по этой ссылке:

DELLSONiC(config-nat)# no enable
 

Порядок конфигурации NAT

После включения NAT можно выполнить следующие действия в любом порядке:
  • Настройка зон NAT
  • Добавление статической запись NAT
  • Добавление статической запись NAT с портом L4
  • Создание пула адресов NAT
  • Настройка привязки NAT
  • Настройка динамического тайм-аута NAT
 

Создание зон NAT

Настройка зоны NAT на интерфейсах L3 таким образом, чтобы преобразование адреса NAT выполнялся на пакетах, когда пакет проходит через зону на настроенных интерфейсах. Зона NAT может быть настроена на любой Ethernet, VLAN, агрегированный канал или интерфейс обратной связи, который настроен с IP-адресом. Диапазон значений зон NAT — от 0 до 3.

Исходная зона пакета — это зона входящего интерфейса, в который поступает пакет. Целевая зона пакета — это зона интерфейса следующего перехода L3 из поиска маршрута L3 адреса назначения.
  • Входящий трафик, входящий в исходный интерфейс, пересылается через преобразование статического целевого сетевого адреса (DNAT).
  • Исходящий трафик, отправляемый в интерфейс назначения, динамически переводит преобразование адреса исходной сети (SNAT).
  • Интерфейсы L3 по умолчанию находятся в зоне NAT 0. Зона NAT 0 считается внутренней зоной.
 
  • Чтобы создать зону NAT, с помощью
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
  • Удаление зоны NAT:

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

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

Создайте статическую запись NAT.

Для обмена данными за пределами сети через Интернет пользователь может вручную настроить статическую запись NAT для замены локального IP-адреса на глобальный уникальный IP-адрес. Статические сетевые платы можно создать с переводом порта L4 или без нее. Статические NAT со ссылкой на порт L4 могут преобразовать локальный IP-адрес и номер порта TCP или UDP в глобальный IP-адрес с номером порта TCP или UDP.
  • Чтобы создать статический NAT без преобразования порта L4, с помощью
sonic(conf-nat)# static basic global-ip local-ip [snat | dnat] [twice_nat_id value]
  • Исходный NAT (SNAT) — преобразует исходный IP-адрес в локальной сети в глобальный IP-адрес, отправляемый во внешнюю сеть. Удаленные устройства вне сетей используют глобальный адрес для доступа к локальному устройству.
  • Destination NAT (DNAT) — преобразует IP-адрес назначения в пакетах, полученных от внешней сети и передаваемых через локальную сеть, в локальный IP-адрес, используемый в локальной сети. ПО умолчанию используется DNAT.
  • twice_nat_id — выполняет преобразование адресов на исходный и целевой IP-адреса для статических записей с одинаковым значением.
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
  • Чтобы создать статический NAT с преобразованием порта L4, с помощью
sonic(conf-nat)# static {tcp | udp} global-ip global-port local-ip local-port [snat | dnat] [twice_nat_id value]
  • Исходный протокол NAT (SNAT) — преобразует IP-адрес исходной системы и порт TCP/UDP в глобальный IP-адрес и порт TCP/UDP, отправляемые во внешнюю сеть. Удаленные устройства вне сетей используют глобальный адрес и порт L4 для доступа к локальному устройству.
  • Destination NAT (DNAT) — преобразует IP-адрес назначения и порт TCP/UDP в пакетах, которые получены от внешней сети и проходят по локальной сети, в локальный IP-адрес и порт TCP/UDP, используемый в локальной сети. ПО умолчанию используется DNAT.
  • twice_nat_id — преобразование адресов на исходный и целевой IP-адреса для статических записей с одинаковым значением идентификатора.
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
  • Удаление статической строки NAT:
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


Пример статического NAT

В примере ниже показано, что сеть A использует маршрутизатор с включенным протоколом NAT. Когда хост 100.100.100.101 в сегменте локальной сети отправляет трафик в сторону внешнего назначения (200.200.200.201), трафик отправляется в адрес маршрутизатора NAT, который будет направлен в адрес хоста 200.200.200.201 из Интернета. Маршрутизатор NAT преобразует исходный IP-адрес (SRC IP) 100.100.100.101 в новый исходный IP-адрес 1.1.1.2. Маршрутизатор NAT выполняет преобразование исходного сетевого адреса (SNAT), где внутренний закрытый адрес 100.100.100.101 переведен на внешний адрес 1.1.1.2. Маршрутизатор NAT выполняет преобразование целевого сетевого адреса (DNAT) для возврата трафика с хоста 200.200.200.201 обратно в сеть A на хост 100.100.100.101.
Пример Statis NAT
Рис. 1. Пример перевода статических сетевых адресов
  • Настройте зоны NAT:
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:

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# enable
  • Создайте статический NAT без преобразования порта L4:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# static basic 1.1.1.2 100.100.100.101

 

Создайте динамический NAT. 

Динамический ПРОТОКОЛ NAT заменяет локальный адрес адресом из пула глобальных адресов.
Динамический перевод полезен, когда несколько пользователей в частной сети получают доступ к Интернету.
 

Настройка пула адресов NAT  

Настройте пул доступных глобальных адресов, определив диапазон глобальных IP-адресов и (при необходимости) диапазон портов TCP/UDP, используемый для преобразования локального адреса. 

  • Создайте пул адресов NAT:
sonic(conf-nat)# pool pool-name global-ip-range [global-port-range]
  1. Введите диапазон глобальных IP-адресов в формате IP-адрес ip-адреса.
  2. Введите диапазон номеров портов TCP/UDP в формате port-number-port-number.
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
  • Удаление пула адресов NAT:
sonic(conf-nat)# no pool pool-name

DELLSONiC(config-nat)# no pool Pool1
  • Удаление всех пулов адресов NAT:
sonic(conf-nat)# no pools
 

Настройка привязки NAT

  • Создание привязки NAT к пулу адресов NAT:
sonic(conf-nat)# binding binding-name pool-name [acl-name] [snat | dnat] [twice_nat_id value]
  • SNAT — переводит исходный IP-адрес в глобальный IP-адрес в пуле. SNAT — это настройка по умолчанию в привязке NAT.
  • DNAT — преобразует IP-адрес назначения в глобальный IP-адрес пула.
  • twice_nat_id выполняет преобразование адресов как на исходный, так и на целевой IP-адреса с помощью пула адресов для статических записей с одинаковым значением идентификатора.
  • acl-name — для ограничения IP-адресов в глобальном пуле адресов NAT можно использовать список управления доступом (ACL). Оператор разрешения разрешает IP-адреса, которые имеют атрибуты, настроенные в правиле разрешения. В заявлении об отклонении отклоняется пакеты с атрибутами, настроенными в правиле запрета. В ACL запись do_not_nat позволяет перенаправить пакеты вместо перевода.
ПРИМЕЧАНИЕ. ACL-NAME — это дополнительный аргумент. Если аргумент ACL-NAME не задан, привязка NAT применяется для соответствия всем трафику.
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
  • Удаление привязки NAT:
sonic(conf-nat)# no binding binding-name

DELLSONiC(config-nat)# no binding Bind1
  • Удалите все привязки NAT:
sonic(conf-nat)# no bindings

 

Настройка тайм-аута Dynamic NAT 

По умолчанию тайм-аут конфигураций динамического преобразования адресов только через 10 минут (600 секунд)

отсутствия активного трафика Отсутствует тайм-аут для статических записей NAT. Чтобы изменить динамическое значение тайм-аута NAT, укажите новое значение в секундах (от 300 до 432000).

  • Изменение тайм-аута конфигураций динамического преобразования адресов:
sonic(conf-nat)# timeout <300..432000>

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

Также можно скорректировать тайм-ауты ввода NAT для записей L4 UDP и TCP NAT.
Чтобы изменить тайм-аут TCP для преобразования адресов, введите новое значение тайм-аута в секундах (от 300 до 432000; по умолчанию 86400). Чтобы изменить тайм-аут UDP для преобразования адресов, введите новое значение в секундах (от 120 до 600; по умолчанию 300).

  • Изменение конфигураций динамического преобразования адресов тайм-аута UDP/TCP:
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

 

Пример dynamic NAT 

В примере ниже показано, что сеть A использует маршрутизатор с включенным протоколом NAT. Когда хост 100.100.100.101 в сегменте локальной сети отправляет трафик в сторону внешнего назначения (200.200.200.201), трафик отправляется в адрес маршрутизатора NAT, который будет направлен в адрес хоста 200.200.200.201 из Интернета. Маршрутизатор NAT преобразует исходный IP-адрес (SRC IP) 100.100.100.101 в новый исходный IP-адрес 1.1.1.2. Маршрутизатор NAT выполняет преобразование исходного сетевого адреса (SNAT), где внутренний закрытый адрес 100.100.100.101 переведен на внешний адрес 1.1.1.2. Маршрутизатор NAT выполняет преобразование целевого сетевого адреса (DNAT) для возврата трафика с хоста 200.200.200.201 обратно в сеть A на хост 100.100.100.101. Тот же перевод NAT происходит для связи PC2 с PC3.

Пример dynamic NAT
Рис. 2. 
Пример перевода динамических сетевых адресов

  • Настройте зоны NAT:
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:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# enable
  • Создайте пул NAT:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# pool Pool1 1.1.1.2
  • Создание привязки NAT:
admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure terminal
DELLSONiC(config)# nat
DELLSONiC(config-nat)# binding Bind1 Pool1
 

Просмотр конфигурации NAT 

Используйте эти команды для отображения записей таблицы NAT конфигурации и операций, а также таблицы NAT.

  • Таблица перевода NAT:
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, выполните:
DELLSONiC# clear nat translations
  • Просмотр статистики перевода NAT:
DELLSONiC# show nat statistics
-----------------------------------------------------------------------------
Protocol       Source                        Destination                   Packets             Bytes
-----------------------------------------------------------------------------
udp            100.100.100.100:63            ---                           15522575563164      993444836042496
  • Просмотр конфигурации NAT и NAT:
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:
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:
DELLSONiC# show nat config bindings
Binding Name  Pool Name      Access-List         Nat Type       Twice-Nat Id
-----------------------------------------------------------------------------
EXT1          POOL1          ----                ----           ---
EXT2          POOL2          NAT_IPS             ----           ---
  • Просмотр глобальной конфигурации NAT:
DELLSONiC# show nat config globalvalues
Admin Mode     : enabled
Global Timeout : 600 secs
TCP Timeout    : 86400 secs
UDP Timeout    : 300 secs
  • Просмотр зон интерфейса L3:
DELLSONiC# show nat config zones
Port                Zone
-------------------------------------------------
Eth1/1              2
PortChannel12       2
Vlan200             1
Loopback1           1
  • Просмотр количества переводов NAT:

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

Затронутые продукты

Enterprise SONiC Distribution, PowerSwitch S5212F-ON, PowerSwitch S5224F-ON, PowerSwitch S5232F-ON, PowerSwitch S5248F-ON, PowerSwitch S5296F-ON, PowerSwitch Z9264F-ON, PowerSwitch Z9332F-ON
Свойства статьи
Номер статьи: 000220835
Тип статьи: How To
Последнее изменение: 08 Feb 2024
Версия:  5
Получите ответы на свои вопросы от других пользователей Dell
Услуги технической поддержки
Проверьте, распространяются ли на ваше устройство услуги технической поддержки.