MikroTik: как перенаправить трафик на (TL-MR3020 + 4G модем)?

Тема в разделе "Вопросы начинающих", создана пользователем dpavlovskiy, 29 май 2018.

  1. dpavlovskiy

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

    Добрый день!

    Есть роутер MikroTik, к нему через ether2 подключен маршрутизатор TL-MR3020 с 4G модемом.
    На MikroTik, в разъем ether1 - подключен интернет со статическим ip: 109.167.131.88

    Как сделать что-то типа прокси, что бы при обращении на 109.167.131.88:5100 - трафик перенаправлялся на 4G модем и обратно? То есть, при обращении на статический ip с портом выходить в интернет через соответствующий порту 4G модем.
    Хочется подключить несколько таких прокси:
    ether1 (109.167.131.88:5100) <-> ether2 (TL-MR3020 + 4G)
    ether1 (109.167.131.88:5101) <-> ether3 (TL-MR3020 + 4G)

    Заранее спасибо!
     
  2. Вам нужно использовать действие dst-nat, скорей всего
     
  3. dpavlovskiy

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

    Денис, спасибо за ответ!

    ether1 - статический ip: 109.167.131.88 (на который делаем запрос из интернета на порт 51000)
    ether4 = роутер, на который хочется перенаправить трафик (dhcp ip: 192.168.1.110, gateway: 192.168.1.1)

    Даже есть делать входящий порт 80 или 443 или любой другой, то результата нет.

    Сейчас настроено так:
    /ip firewall nat
    add action=dst-nat chain=dstnat comment=test dst-port=51000 in-interface=ether1 protocol=tcp to-addresses=192.168.1.110 to-ports=443

    /ip firewall Mangle
    add chain=prerouting dst-address=109.167.131.88 protocol=tcp dst-port=51000 action=mark-routing new-routing-mark=ProxyMark

    /ip route
    add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=ether4 routing-mark= ProxyMark scope=30 target-scope=10

    Лог такой:
    19:03:17 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.74.70:35586->109.167.131.88:51000, NAT 188.170.74.70:35586->(109.167.131.88:51000->192.168.1.110:443), len 64
    19:03:18 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.74.70:26060->109.167.131.88:51000, NAT 188.170.74.70:26060->(109.167.131.88:51000->192.168.1.110:443), len 64
    19:03:18 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.74.70:31894->109.167.131.88:51000, NAT 188.170.74.70:31894->(109.167.131.88:51000->192.168.1.110:443), len 64
    19:03:18 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.74.70:35586->109.167.131.88:51000, NAT 188.170.74.70:35586->(109.167.131.88:51000->192.168.1.110:443), len 6

    Если попробовать в сделать так:
    /ip route
    add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=192.168.1.1 routing-mark= ProxyMark scope=30 target-scope=10

    То есть сменить ether4 на 192.168.1.1, то пишет: "192.168.1.1 unreachable"
    Хотя это gateway роутера, на который нужно отправить трафик...
    /ip route - вообще должен видеть gateway 192.168.1.1?
    Если сменить обратно на ether4, получаем - "reachable".

    По моему, не проходит трафик на роутер (192.168.1.110 ether4)

    Уже всю голову сломал... Please help!)
     
  4. Илья Князев

    Илья Князев Администратор Команда форума

    /ip firewall nat
    add action=dst-nat chain=dstnat comment=test dst-port=51000 in-interface=ether1 protocol=tcp to-addresses=192.168.1.110 to-ports=443
    Теперь надо чтобы на модем оно пришло с адреса роутера, иначе модем ответит по своей теблице маршрутизации в интернет. Добавляем
    add action=masquerade chain=srcnat dst-port=433 out-interface=ether2 protocol=tcp
     
  5. dpavlovskiy

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

    Илья, спасибо за быстрый отклик!

    ether1 - статический ip: 109.167.131.88 (на который делаем запрос из интернета)
    ether4 = роутер, на который хочется перенаправить трафик (dhcp ip: 192.168.1.100, gateway: 192.168.1.1)

    Текущая версия настройки с Вашим дополнением:
    ip firewall nat add action=dst-nat chain=dstnat comment=test dst-port=51000 in-interface=ether1 protocol=tcp to-addresses=192.168.1.100 to-ports=443
    ip firewall mangle add chain=prerouting dst-address=109.167.131.88 protocol=tcp dst-port=51000 action=mark-routing new-routing-mark=ProxyMark passthrough=yes
    ip route add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=ether4 routing-mark=ProxyMark scope=30 target-scope=10
    ip firewall nat add action=masquerade chain=srcnat dst-port=443 out-interface=ether4 protocol=tcp

    Лог изменился, но страницы пока не открываются.
    Может я не правильно проверяю.. Я в браузере в настройках ввожу proxy: 109.167.131.88:51000, пытаюсь открыть любой сайт с https
    Вообще эта схема нужна для работы с запросами curl, но с браузером удобней проверять...

    Лог:
    20:39:06 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:19538->109.167.131.88:51000, NAT (188.170.72.143:19538->109.167.131.88:19538)->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:06 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:15360->109.167.131.88:51000, NAT (188.170.72.143:15360->109.167.131.88:15360)->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:06 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:38886->109.167.131.88:51000, len 64
    20:39:06 firewall,info dstnat: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:38886->109.167.131.88:51000, len 64
    20:39:06 firewall,info srcnat: in:(unknown 0) out:ether4, src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:38886->192.168.1.100:443, NAT 188.170.72.143:38886->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:07 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:42312->109.167.131.88:51000, len 64
    20:39:07 firewall,info dstnat: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:42312->109.167.131.88:51000, len 64
    20:39:07 firewall,info srcnat: in:(unknown 0) out:ether4, src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:42312->192.168.1.100:443, NAT 188.170.72.143:42312->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:07 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:4346->109.167.131.88:51000, len 64
    20:39:07 firewall,info dstnat: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:4346->109.167.131.88:51000, len 64
    20:39:07 firewall,info srcnat: in:(unknown 0) out:ether4, src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:4346->192.168.1.100:443, NAT 188.170.72.143:4346->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:08 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:42312->109.167.131.88:51000, NAT (188.170.72.143:42312->109.167.131.88:42312)->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:08 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:4346->109.167.131.88:51000, NAT (188.170.72.143:4346->109.167.131.88:4346)->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:09 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:42312->109.167.131.88:51000, NAT (188.170.72.143:42312->109.167.131.88:42312)->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:09 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:4346->109.167.131.88:51000, NAT (188.170.72.143:4346->109.167.131.88:4346)->(109.167.131.88:51000->192.168.1.100:443), len 64
    20:39:10 firewall,info prerouting: in:ether1 out:(unknown 0), src-mac 00:1b:0d:ed:5b:c0, proto TCP (SYN), 188.170.72.143:42312->109.167.131.88:51000, NAT (188.170.72.143:42312->109.167.131.88:42312)->(109.167.131.88:51000->192.168.1.100:443), len 64
     
  6. Илья Князев

    Илья Князев Администратор Команда форума

    А, вот вы чего хотите. Я думал вам надо до веб-интрефейса модема добраться.
    Настройте на Микротике Прокси-сервер /ip web-proxy
    Имейте ввиду что вы получите открытый проксяк для всего мира.
     
  7. dpavlovskiy

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

    Илья, у меня на роутере 192.168.1.100 - установлен 4G модем, вот в этом и есть цель, мне нужно выходить в сеть через этот 4G модем, что бы внешний мир видел его ip.
    Просто не хотел перегружать тему вопроса, что бы не запутать всех)
    Я пробовал включать Web Proxy, но не очень понял принцип его действия, так как при обращении через него, на выходе в интернет, я получал свой статический ip 109.167.131.88 - а мне нужен ip оператора того самого 4G модема. Своего рода самодельный прокси. Я реализовал эту схему на Linux, но к сожалению мне нужно больше 4G соединений, по этому решил попробовать связку Mikrotik + Роутер + 4G модем, для последующего умножения (Роутер + 4G). То есть, при обращении на 109.167.131.88:51000 -> Mikrotik -> (Роутер+4G) -> интернет c ip 4G модема.

    А схема с mangle думаете не заработает?
     
  8. Илья Князев

    Илья Князев Администратор Команда форума

    У вас вообще схема странная очень.
    Я бы поднимал VPN и крутил Mangle.
     
  9. dpavlovskiy

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

    Вы можете помочь с настройками? Я далеко не профи в сетях, и мне очень сложно даются все манипуляции...
    Реально настроить в Mikrotik Web proxy, что бы был redirect на необходимый ether? Чтобы при обращении на порт, выходить в сеть через определенный ether, в моем случае - ether4 с 4G
     
  10. Вам нужно выходить в Интернет таким способом или на какой-то определенный сервер, сервис ?
     
  11. dpavlovskiy

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

    Да, это CURL запросы должны быть...
     
  12. ВПН до микротика реально поднимать ?
     
  13. dpavlovskiy

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

    Не очень понимаю как это сделать... У меня сеть идет сразу в MikroTik...
     
  14. Тогда действуйте так.
    Web-proxy тут не нужен
    Вам нужно настроить:
    1. DualWAN (три или четыре канала сколько там у вас) вот тут тема рассматривается https://spw.ru/forum/threads/dostup-k-mikrotik-iz-vne-po-wan1-wan2.452/
    2. Далее в зависимости от порта назначения перенаправлять трафик на нужный роутер действием в mangle routing mark.
     
  15. dpavlovskiy

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

    У меня Mikrotik HAP lite, у него 2 WAN + 3 LAN - разве можно перенастроить порты?
     
  16. да можно
     
  17. Илья Князев

    Илья Князев Администратор Команда форума

    Денис, так нельзя. Он получит открытый релей для ВСЕГО трафика, а не только своего.
    Здесь только VPN.
     
  18. Если я правильно понял, сеть локальная за Микротиком откуда нужно предоставить сервис. Ну если нет, тогда да ВПН в помощь.