Настройка Hairpin NAT на EdgeGW для NSX-V
Настройка Hairpin NAT необходима в случае, когда, находясь внутри одной сети, требуется обратиться к локальному ресурсу с использованием его внешнего IP-адреса. Пример с web-сервером представлен далее.
Без настройки Hairpin NAT соединение по внешнему IP-адресу между локальными хостами и web-сервером не установится.
На nsx-edge настроено 2 правила на внешнем интерфейсе ClientsExternalNetwork:
- SNAT – для доступа в интернет с виртуальных машин;
- DNAT – для доступа к web-серверу из интернета.
Важно
SNAT и DNAT для Hairpin необходимо настроить на внутренний интерфейс, в котором расположены хосты. В примере он называется internal_network
.
В результате будет получена схема обмена пакетами между VM, находящихся в одной сети:
- VM-1 оправляет пакет со своего локального IP
192.168.0.3
(SRC IP) на176.118.23.164
WEB Server (DST IP). - EDGE меняет в пакете SRC IP
192.168.0.3
на свой192.168.0.1
, а DST IP с176.118.23.164
меняет на192.168.0.2
. - Server, получив запрос от EDGE, отправляет ответ в его сторону.
- Получив ответ от WEB Server, EDGE меняет SRC/DST IP на изначальные, а VM-1 получает правильный ответный пакет, ожидаемый системой.
Выглядит это следующим образом:
Настройка схемы на EDGE через Панель управления
В разделе EDGE зайдите в настройки SERVICES.
В разделе NAT к существующим правилам DNAT/SNAT добавьте правило "Hairpin NAT". Для этого необходимо добавить SNAT RULE.
Укажите применение правила к внутреннему интерфейсу. В примере это
internal_network
. Применить правило возможно как ко всей внутренней сети, так и к одному IP адресу.Добавьте аналогичное правило DNAT RULE с пробросом на порт
80
. Порт может быть любым.Проверьте корректность введенной информации и интерфейса, к которому будет применяться правило. Нажмите на кнопку KEEP.
Проверьте доступность соседней VM с локальной машины через public IP.