Перейти к содержанию

Структура создания правила NAT#

NAT настраивается в качестве набора правил. Каждое правило предписывает NAT осуществить требуемое преобразование адресов. Правила NAT нумеруются и исполняются в соответствующем порядке. Следует учесть, что в настроенном правиле NAT номер является неизменяемым идентификатором. Номер правила NAT не может быть изменен так же, как, например, изменяются атрибуты правила. Для изменения номера правила NAT следует удалить правило и создать его заново с новым номером. Также можно воспользоваться командами copy и rename, позволяющими копировать и переименовывать имена соответствующих узлов конфигурации.

Примечание

Следует оставлять интервалы между номерами правил NAT

По этой причине следует назначать правилам NAT номера, оставляя пустые интервалы между номерами. Например, можно создать набор правил NAT с номерами 10, 20, 30 и 40. Таким образом, если позже потребуется добавить еще одно правило для выполнения в конкретном месте в последовательности правил, это будет легко сделать без удаления текущего набора правил.

Схема, использующаяся в примерах, представлена ниже

Схема-настройки

Схема настройки

Узел конфигурации#

Для создания или изменения правила NAT используются команды set и узел конфигурации service nat ipv4 с указанием номера, который будет являться идентификатором правила; см. пример ниже:

Пример – Создание правила NAT#
admin@edge# set service nat ipv4 rule 10

Настройка типа NAT#

Существует возможность создания правил преобразования сетевых адресов отправителя, преобразования сетевых адресов получателя и правил маскировки (типы: source (SNAT), destination (DNAT) или masquerade ("маскировка")). Для осуществления двунаправленного преобразования сетевых адресов следует определить два правила: одно для SNAT и одно для DNAT. В примере ниже определяется правило SNAT с номером 10.

Пример – Создание правила преобразования сетевого адреса отправителя (SNAT)#
admin@edge# set service nat ipv4 rule 10 type source
admin@edge# set service nat ipv4 rule 15 type destination

Настройка критериев фильтрации трафика#

Фильтры позволяют контролировать, к каким пакетам следует применять правила преобразования сетевых адресов. Для правила NAT могут быть созданы фильтры трех видов: на основе протоколов (protocols), на основе адреса отправителя (source), а также на основе адреса получателя (destination).

Фильтр на основе протоколов#

Параметр protocols позволяет указать сетевые протоколы, к пакетам которых следует применять правила преобразования сетевых адресов. Таким образом, адреса будут изменяться только для пакетов указанных протоколов. По умолчанию определены все (all) протоколы.

В примере ниже настраивается применение правила 15 к пакетам протокола TCP. Преобразование сетевых адресов будет осуществляться только для пакетов протокола TCP.

Пример – Фильтрация пакетов на основе протоколов#
admin@edge# set service nat ipv4 rule 15 protocol tcp

Фильтр на основе данных отправителя#

Параметр source позволяет фильтровать пакеты на основе адреса отправителя и/или номера сетевого порта. Преобразование сетевых адресов будет применяться только к сетевым пакетам, адрес отправителя и/или номер сетевого порта которых совпадает с указанным. (Указание номера сетевого порта является необязательным.)

Если фильтр на основе адреса отправителя не определен, по умолчанию преобразование сетевых адресов применяется к пакетам с любым адресом отправителя и/или номером сетевого порта.

В примере ниже настраивается применение правила 10 только к пакетам, адрес отправителя которых равен 192.168.11.1.

Пример – Фильтрация на основе адреса отправителя#
admin@edge# set service nat ipv4 rule 10 source address 192.168.11.1

В примере ниже настраивается применение правила 15 к пакетам, адрес отправителя которых принадлежит сети 192.168.11.0/24, а номер сетевого порта отправителя равен 80.

Пример – Фильтрация на основе сети отправителя и номера сетевого порта#
admin@edge# set service nat ipv4 rule 15 source address 192.168.11.0/24 
admin@edge# set service nat ipv4 rule 15 source port 80

Фильтр на основе адреса получателя#

Параметр destination позволяет фильтровать пакеты на основе адреса и/или номера сетевого порта получателя. Преобразование сетевых адресов будет применяться только к сетевым пакетам, адрес и номер сетевого порта получателя которых совпадает с указанным. (Указание номера сетевого порта является необязательным.)

Если фильтрация на основе адреса получателя не определена, по умолчанию преобразование сетевых адресов применяется к пакетам с любым адресом и номером сетевого порта получателя. В примере ниже настраивается применение правила 10 к пакетам, адрес получателя которых равен 192.168.11.254.

Пример – Фильтрация на основе адреса получателя#

admin@edge# set service nat ipv4 rule 10 destination address 192.168.11.254
Фильтрация может выполняться не только на основе адреса получателя, но и на основе его номера порта.

Настройка адресов преобразования#

Параметры inside-address и outside-address позволяют определить вид преобразования, которое будет осуществляться в правиле. Они определяют данные, используемые для замены исходных адресов сетевых пакетов.

Внутренний адрес#

Параметр inside-address используется для настройки преобразования сетевого адреса получателя (DNAT). Позволяет определить адрес, который будет использоваться для замены IP-адреса получателя входящего сетевого пакета. Также может использоваться преобразование номеров портов (port translation), в этом случае номер сетевого порта указывается как часть определяемого внутреннего адреса.

В примере ниже настраивается применение правила 20, которое будет подставлять адрес 192.168.10.1 в качестве IP-адреса входящего пакета для пакетов, удовлетворяющих условиям, определенным в правиле.

Пример – Установка внутреннего IP-адреса для настройки DNAT#
admin@edge# set service nat ipv4 rule 15 inside-address address 192.168.10.1

В примере ниже показано применение правила 15, которое будет подставлять адреса от 192.168.10.1 до 192.168.10.3 в качестве IP-адресов получателя для входящих пакетов, удовлетворяющих условиям правила.

Пример – Установка диапазона внутренних адресов для настройки DNAT#
admin@edge# set service nat ipv4 rule 15 inside-address address 192.168.10.1-192.168.10.3

Внешний адрес#

Параметр outside-address используется для настройки преобразования сетевого адреса отправителя (SNAT). Он позволяет определить адрес, который будет использоваться для замены IP-адреса отправителя исходящих пакетов. Также может использоваться преобразование номеров портов (port translation), номер сетевого порта указывается как часть определяемого внешнего адреса.

Необходимо учитывать следующее:

  • Указание внешнего адреса является обязательным для правил преобразования отправителя (SNAT).
  • Внешним адресом должен быть один из адресов, назначенных выходному интерфейсу.
  • Внешний адрес не может быть указан для правил "маскировки" (тип masquerade). Так как при маскировке используется основной IP-адрес выходного интерфейса. Однако для правил "маскировки" (тип masquerade) может быть указан номер сетевого порта.

В примере ниже настраивается применение правила 10, которое осуществляет подстановку адреса 192.168.10.254 в качестве IP-адреса отправителя для сетевых пакетов, удовлетворяющих условиям правила.

Пример – Установка внешнего адреса для настройки SNAT#
admin@edge# set service nat ipv4 rule 10 outside-address address 192.168.10.254

В примере ниже показано применение правила 10 для подстановки адресов от 192.168.10.252 до 192.168.10.254 в качестве IP-адресов отправителя для исходящих пакетов, удовлетворяющих критерию правила.

Пример - Установка диапазона внешних адресов для настройки SNAT#
admin@edge# set service nat ipv4 rule 15 outside-address address 192.168.10.252-192.168.10.254

Настройка интерфейсов#

Для правил преобразования сетевых адресов (NAT) можно указать интерфейс, через который пакеты будут отправляться, или интерфейс, на котором сетевые пакеты будут приниматься. Необходимо учитывать следующее:

  • Для правила преобразования адреса получателя (тип destination) (DNAT) указывается входной интерфейс. Интерфейс, через который входящий трафик попадает в устройство, осуществляющее преобразование сетевых адресов.
  • Для правил преобразования сетевого адреса отправителя (тип source) (SNAT) указывается выходной интерфейс. Это интерфейс, через который исходящий трафик покидает устройство, осуществляющее преобразование сетевых адресов.
  • Для правил "маскировки" (тип masquerade), указывается выходной интерфейс. Это интерфейс, через который исходящий трафик покидает устройство, осуществляющее преобразование сетевых адресов.

В примере ниже для правила 15 указывается, что для принятия входящего трафика будет прослушиваться интерфейс eth0.

Пример - Установка входного интерфейса для правила DNAT#

admin@edge# set service nat ipv4 rule 15 inbound-interface eth0
В примере ниже для правила 10 устанавливается отправка исходящего трафика через интерфейс eth1.

Пример - Установка выходного интерфейса для правила SNAT#
admin@edge# set service nat ipv4 rule 10 outbound-interface eth1

Итоговая конфигурация#

Итоговая конфигурация будет выглядеть следующим образом:

admin@edge# show service nat
   ipv4 {
      rule 10 {
         destination {
            address 192.168.11.254
         }
         outbound-interface eth1
         outside-address {
            address 192.168.10.254
         }
         source {
            address 192.168.11.1
         }
         type source
      }
      rule 15 {
         inbound-interface eth0
         inside-address {
            address 192.168.10.1
         }
         protocol tcp
         source {
            address 192.168.11.0/24
            port 80
         }
         type destination
      }
   }