[РЕШЕНО] Возврат соединения в Local Bridge

Тема в разделе "Вопросы начинающих", создана пользователем Huzver, 1 ноя 2017.

  1. Huzver

    Huzver Новый участник

    Добрый день, имею такую схему
    R1 :
    Статический WAN IP - 1.1.1.1
    LAN-Bridge - 192.168.88.0/24 IP=192.168.88.1
    LAN Pool 192.168.88.5-192.168.88.29

    R2:
    WAN IP динамический
    LAN-Bridge - 192.168.88.0/24 IP=192.168.88.2
    LAN Pool 192.168.88.30-192.168.88.59

    Между роутерами поднят OpenVPN и поверх него поднят EoIP, интерфейсы которого засунуты в LAN-Bridge
    В Bridge Filter заблокированы исходящие DHCP запросы через интерфейсы EoIP (forward)

    Так вот, я пытаюсь достучаться до R2 и устройств в его подсети через статический адрес роутера R1
    Сейчас у меня это работает через маркировку по определенным портам и маскарадинг по данной маркировке в LAN-Bridge

    Это связано с тем, что делая dst-nat на R1 запрос уходит к R2 и его устройствам, но возвращается уже через дефолтный маршрут R2, т.е. не туда откуда он пришел.
    Пробовал делать второй дефолтный маршрут 0.0.0.0/0 через 192.168.88.1 с rout-mark
    Впрочем загвоздка начинается в Mangle. В принципе достаточно одного правила prerouting на входящем интерфейсе LAN-Bridge

    Но что-то мне подсказывает, что это не правильно. Должен быть другой путь более простой.
    Можно ли сделать возврат соединения на самом R2 используя Mangle и Route?
    Какие лучше будет прописать правила?

    Схема в аттаче.
     

    Вложения:

    • index.jpg
      index.jpg
      Размер файла:
      129,1 КБ
      Просмотров:
      8
  2. Huzver

    Huzver Новый участник

    Видимо тут нет тех, кто может помочь разобраться в вопросе...
     
  3. У вас в одной подсети два роутера, поэтому имеете проблемы с маршрутизацией пакетов. Вам необходим один широковещательный домен ?
     
  4. Huzver

    Huzver Новый участник

    Меня интересуют все возможные варианты.
    Вариант с маркировкой по портам и маскарадинг по марке обратно в локалку на R1 работает, но я бы хотел использовать обычный вариант с dst-nat

    Т.к. на данный момент если я подключаюсь через R1 к устройствам в сети R2 мы имеем внешним IP какой-то адрес в интернете, соответственно ответы возвращаются через дефолтный маршрут R2, а не обратно на R1 и уже потом в ISP1 откуда и пришел запрос.

    Попробовал prerouting использовать для сетевого моста в in-interface и исключением сети 192.168.88.0/24
    Так я вылавливал все IP не входящие в локальную подсеть, которые приходили из интерфейса бриджа. Но вместе с ними я ловил еще и Broadcast запросы, запросы по UDP, что-то вроде:
    proto UDP, 192.168.88.5:61067->239.255.255.250:1900, len 165

    Соответственно добавил маршрут
    0.0.0.0/0 через 192.168.88.1 с distance=2 и назначил ему routing-mark
    index2.jpg
     
    Последнее редактирование: 7 ноя 2017
  5. Huzver

    Huzver Новый участник

    Коллеги с соседнего форума подсказали направление.
    Удалось сделать малой кровью без всяких маркировок и лишних маршрутов.
    Используем SRC-NAT, т.е. будем теми, кого знает R2
    Код:
    chain=dstnat action=dst-nat to-addresses=192.168.88.30 to-ports=80 protocol=tcp
    in-interface=WAN dst-port=8085 log=no log-prefix=""
    
    chain=dstnat action=dst-nat to-addresses=192.168.88.30 to-ports=22 protocol=tcp
    in-interface=WAN dst-port=8086 log=no log-prefix=""
    
    chain=srcnat action=src-nat to-addresses=192.168.88.1 protocol=tcp
    dst-address=192.168.88.30 dst-port=80,22 log=no log-prefix=""
     
    Денис Друженков нравится это.