Редирект с внутреннего на свой внешний интерфейс



  • Здравствуйте,
    возможно ли реализовать с помощью Pf следующий кейс:
    необходимо чтобы пользователь локальной сети по имени хоста, которое разрешается во внешний адрес, мог попасть через Pf на локальный хост. Т.е. перенаправить пакет пришедший из локального интерфейса на свой же внешний.
    Создание локальной DNS зоны мне не подходит, т.к. одновременно нужен PAT, ресурсы висят на нестандартных портах, а доступны должны быть на 80.
    Буду благодарен также за ссылки на похожие темы, т.к. не пойму по какому запросу искать, в выдаче все не то((



  • @Mainfin Здр
    Если не ошибаюсь , тут 2 решения

    1. Split DNS ( Вы пишите , что Вам такое не подходит)
    2. Nat Reflection
      https://docs.netgate.com/pfsense/en/latest/book/nat/nat-reflection.html

    Enable NAT Reflection for 1:1 NAT:

    This option allows clients on internal networks to reach locally hosted services by connecting to the external IP address of a 1:1 NAT entry. To fully activate the feature, check both Enable NAT Reflection for 1:1 NAT and Enable automatic outbound NAT for Reflection. The latter option is only necessary if clients and servers are in the same subnet.



  • Спасибо!
    NAT Reflection, возможно, то что мне нужно! А оно может работать с реверс прокси (HAProxy)?
    Дело еще в том, что сайтов довольно много (разработка) и внешних адресов на них не хватает. Можно ли использовать эту опцию глобально, а не только для 1:1?



  • @Mainfin said in Редирект с внутреннего на свой внешний интерфейс:

    Создание локальной DNS зоны мне не подходит, т.к. одновременно нужен PAT, ресурсы висят на нестандартных портах, а доступны должны быть на 80.
    Буду благодарен также за ссылки на похожие темы, т.к. не пойму по какому запросу искать, в выдаче все не то((

    SplitDNS еще и как подходит. Связка SplitDNS (разрешает внешний адрес во внутренний IP) + Port Forwarding на LAN (заворачивает обращение ко внешнему адресу и нужному вам порту на внутренний адрес и порт ,к-ый вам нужен) будет работать.

    Nat Reflection - это костыль. Да еще и 1:1.



  • @werter said in Редирект с внутреннего на свой внешний интерфейс:

    SplitDNS еще и как подходит. Связка SplitDNS (разрешает внешний адрес во внутренний IP) + Port Forwarding на LAN (заворачивает обращение ко внешнему адресу и нужному вам порту на внутренний адрес и порт ,к-ый вам нужен) будет работать.

    Nat Reflection - это костыль. Да еще и 1:1.

    Я думал SplitDNS может преобразовывать только адрес в адрес, а мне нужно имя в адрес
    я использую реверс прокси для nat на основе hostname. Есть внешний ДНС site_1.ru ... site_x.ru которые все указывают на 1 белый IP, а HAProxy слушает 80 порт и в зависимости от имени хоста в заголовке отправляет трафик в лан на десяток локальных вэб серверов.

    Попробую, спасибо.



  • Я думал SplitDNS может преобразовывать только адрес в адрес, а мне нужно имя в адрес

    Кхм, почитайте КАК работает DNS в целом.



  • @werter в целом я знаю)
    я в частности про то, что у меня снаружи все все имена на 1 IP ведут.
    я могу сделать локальным днсом site_1.ru = 192.168.1.5 но не могу сделать site_1.ru = 192.168.1.5:8134
    я как-то не подумал про Port Forwarding с LAN на LAN.
    Но я еще не делал, когда настрою, отпишусь, для таких как я.



  • Не с ЛАН на ЛАН , а с ЛАН на внешний адрес, к-ый указывается в dest

    По идее эта схема даже без сплитДНС заработает
    Поставьте это правило (после настроек port forwd) выше всех на ЛАН



  • @werter said in Редирект с внутреннего на свой внешний интерфейс:

    По идее эта схема даже без сплитДНС заработает

    Не работает или ума не хватает настроить.
    Ну т.е. работает, но только одно правило форварда, до HAProxy трафик не докатывается. А мне нужно чтобы port forward делал HAproxy, анализируя имя хоста запрашиваемого ресурса.



  • Скрины того ,что настроили. Логично же показать, да?


Log in to reply