2 провайдера+LAN - MikroTik - 2 LAN

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

  1. Verum

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

    Здравствуйте, уважаемые форумчане!

    Разбираюсь с новой железкой. Сразу поставил себе непростую задачу, но, в силу недостатка знаний, не могу победить аппарат. Бьюсь уже неделю. Результат сомнительный.

    Исходные данные:
    - Роутер MikroTik RB2011UiAS-2HnD
    - Локальная сеть (LAN1) с адресацией 172.16.101.0/24 организации в домене (rabota), в которой через прописанный прокси работает один провайдер (WEB1), а без прокси другой (WEB2). В локалке работает DHCP. Пусть это будет на порту Gi05 на роутере.
    - Так же имеется "основная" локальная сеть на роутере (LAN2) с адресацией 192.168.11.0/24. На WLAN1 запущен DHCP.
    - Гостевая сеть (LAN3) с адресацией 192.168.12.0/24 на WLAN2 с DHCP.

    Задача:
    Открыть доступ в локальную сеть организации LAN1 с обеих сетей роутера LAN2 и LAN3, но ограничить для LAN3 скорость в Интернет, не ограничивая скорости в локалку LAN1. Соответственно, LAN2 никак не должна быть ограничена.

    Я смог добиться разного, но до цели не дошел:
    - получилось ограничить скорость доступа в интернет, но режет и на LAN2 и на LAN3. Маркировал трафик, пользуясь вот этой инструкцией: http://www.technotrade.com.ua/Articles/how_to_limit_throughput_mikrotik.php
    - пробовал в mangle rule прописать адрес источника - не помогло, интерфейс - не помогло, писал и адреса интерфейсов роутера и сами интерфейсы - не реагирует.
    - пробовал делать разные правила в Queues и играться с приоритетами - по нулям.

    Проблема, в первую очередь в том, что не хватает понимания в работе правил Firewall и Queues. Точнее, в назначении настроек в WinBox.

    Буду очень благодарен, если поделитесь более менее адекватным описанием Firewall и Queues. Желательно, на родном русском. Особенно, буду признателен за советы по настройке!

    На сайте https://spw.ru/ есть хорошее описание работы Firewall с примерами, но по нему так и не дошло, как же ОНО работает. Ни одно правило у меня не заработало. Несказанно счастлив был, когда удалось зарезать интернет по методу маркировки трафика. Во всем этом логика всегда простая, но я как в стену бьюсь - не могу ее уловить.
     
    Последнее редактирование модератором: 23 янв 2019
  2. Илья Князев

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

    Все смешалось в одну кучу. Рисуйте схему и прикладывайте конфиг. Будем разбираться.
     
  3. Verum

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

    Схему накидал. С конфигом сейчас бардак - пока возился, потерял системность работы. Почищу и скину.

    По поводу схемы:
    - хочется дать доступ без ограничений для группы "main" в сеть 172.16.101.0/24 и в интернет
    - ограничить скорость для "guest" в интернет, но оставить без изменений в сеть 172.16.101.0/24
     

    Вложения:

  4. Verum

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

    Сейчас все выглядит вот так:
    Код:
    # mar/09/2017 11:49:24 by RouterOS 6.37.4
    # software id = WI7Q-7GLL
    #
    /caps-man channel
    add band=2ghz-b/g/n extension-channel=disabled frequency=2457 name=channel1 \
        tx-power=20 width=20
    /interface bridge
    add name=bridge1
    add name=bridge2
    /interface ethernet
    set [ find default-name=ether6 ] name="Fa01 - master"
    set [ find default-name=ether7 ] master-port="Fa01 - master" name=Fa02
    set [ find default-name=ether8 ] master-port="Fa01 - master" name=Fa03
    set [ find default-name=ether9 ] master-port="Fa01 - master" name=Fa04
    set [ find default-name=ether10 ] master-port="Fa01 - master" name=Fa05
    set [ find default-name=ether1 ] name="Gi01 - master"
    set [ find default-name=ether2 ] master-port="Gi01 - master" name=Gi02
    set [ find default-name=ether3 ] master-port="Gi01 - master" name=Gi03
    set [ find default-name=ether4 ] master-port="Gi01 - master" name=Gi04
    set [ find default-name=ether5 ] name="Gi05 - WAN"
    /interface wireless
    # managed by CAPsMAN
    # channel: 2457/20/gn(20dBm), SSID: main, local forwarding
    set [ find default-name=wlan1 ] disabled=no
    /caps-man datapath
    add bridge=bridge1 local-forwarding=yes name=datapath1
    /caps-man security
    add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm \
        name=close passphrase=passmain
    add authentication-types=wpa2-psk encryption=aes-ccm group-encryption=aes-ccm \
        name=open passphrase=passguest
    /caps-man configuration
    add channel=channel1 datapath=datapath1 hide-ssid=no mode=ap name=cfg1 \
        rx-chains=0,1,2 security=close ssid=main tx-chains=0,1,2
    add channel=channel1 datapath=datapath1 mode=ap name=cfg2 security=open ssid=\
        guest
    /ip firewall layer7-protocol
    add name=HTTP regexp="http/(0\\.9|1\\.0|1\\.1) [1-5][0-9][0-9]|post [\\x09-\\x\
        0d -~]* http/[01]\\.[019]"
    add name=GIF_FILE regexp=gif
    add name=PNG_FILE regexp=png
    add name=JPG_FILE regexp=jpg
    /ip pool
    add name=pool1 ranges=192.168.11.10-192.168.11.200
    add name=pool2 ranges=192.168.12.10-192.168.12.200
    /ip dhcp-server
    add add-arp=yes address-pool=pool1 authoritative=yes disabled=no interface=\
        bridge1 name=server1
    add add-arp=yes address-pool=pool2 authoritative=yes disabled=no interface=\
        bridge2 name=server2
    /queue tree
    add disabled=yes max-limit=8M name=DOWNLOAD parent=global
    add disabled=yes max-limit=8M name=UPLOAD parent=global
    /queue type
    add kind=pcq name=pcq-download-512K pcq-classifier=dst-address \
        pcq-dst-address6-mask=64 pcq-rate=512k pcq-src-address6-mask=64 \
        pcq-total-limit=512KiB
    add kind=pcq name=pcq-upload-512K pcq-classifier=src-address \
        pcq-dst-address6-mask=64 pcq-rate=512k pcq-src-address6-mask=64 \
        pcq-total-limit=512KiB
    add kind=pcq name=PCQ-DOWNLOAD pcq-classifier=dst-address pcq-rate=1M
    add kind=pcq name=PCQ-UPLOAD pcq-classifier=src-address pcq-rate=1M
    /queue simple
    add max-limit=1M/1M name=queue1 packet-marks=FILTER priority=1/1 queue=\
        PCQ-UPLOAD/PCQ-DOWNLOAD target="Gi05 - WAN"
    /queue tree
    add disabled=yes name=FILTER-DOWNLOAD packet-mark=FILTER-DOWN parent=DOWNLOAD \
        priority=1 queue=PCQ-DOWNLOAD
    add disabled=yes name=FILTER-UPLOAD packet-mark=FILTER-UP parent=UPLOAD \
        priority=1 queue=PCQ-UPLOAD
    add disabled=yes name=FILTER-WEB-DOWN packet-mark=FILTER parent=DOWNLOAD \
        priority=1 queue=PCQ-DOWNLOAD
    add disabled=yes name=FILTER-WEB-UPLOAD packet-mark=FILTER parent=UPLOAD \
        priority=1 queue=PCQ-UPLOAD
    /caps-man manager
    set enabled=yes
    /caps-man provisioning
    add action=create-dynamic-enabled master-configuration=cfg1 \
        slave-configurations=cfg2
    /interface bridge port
    add bridge=bridge1 interface="Gi01 - master"
    add bridge=bridge1 interface=wlan1
    add bridge=bridge2 interface=wlan2
    /interface wireless cap
    #
    set bridge=bridge1 caps-man-addresses=172.16.101.124 enabled=yes interfaces=\
        wlan1
    /ip address
    add address=192.168.11.1/24 interface=wlan1 network=192.168.11.0
    add address=172.16.101.124/24 interface="Gi05 - WAN" network=172.16.101.0
    add address=192.168.12.1/24 interface=wlan2 network=192.168.12.0
    /ip dhcp-server network
    add address=192.168.11.0/24 dns-server=172.16.101.8,172.16.102.18 domain=\
        rabota gateway=192.168.11.1
    add address=192.168.12.0/24 gateway=192.168.12.1
    /ip dns
    set servers=172.16.101.8,172.16.102.18,172.16.103.28
    /ip dns static
    add address=192.168.11.1 disabled=yes name=main
    /ip firewall address-list
    add address=192.168.11.0/24 list=LAN
    add address=192.168.12.0/24 list=LAN
    add address=172.16.0.0/16 list=LAN-EXCEPTION
    /ip firewall mangle
    add action=accept chain=forward comment="############## FILTER #########" \
        disabled=yes
    add action=mark-connection chain=forward comment=HTTP layer7-protocol=HTTP \
        new-connection-mark=FILTER passthrough=yes protocol=tcp
    add action=mark-connection chain=forward comment=HTTPS new-connection-mark=\
        FILTER passthrough=yes port=443 protocol=tcp
    add action=mark-connection chain=forward comment=Proxy new-connection-mark=\
        FILTER passthrough=yes port=3128,8080 protocol=tcp
    add action=mark-connection chain=forward comment=FTP new-connection-mark=\
        FILTER passthrough=yes port=20,21 protocol=tcp
    add action=mark-connection chain=forward comment=SMTP new-connection-mark=\
        FILTER passthrough=yes port=25 protocol=tcp
    add action=mark-connection chain=forward comment=SMTPS new-connection-mark=\
        FILTER passthrough=yes port=465 protocol=tcp
    add action=mark-connection chain=forward comment=IMAP new-connection-mark=\
        FILTER passthrough=yes port=143 protocol=tcp
    add action=mark-connection chain=forward comment=POP3 new-connection-mark=\
        FILTER passthrough=yes port=110 protocol=tcp
    add action=mark-connection chain=forward comment=POP3S new-connection-mark=\
        FILTER passthrough=yes port=995 protocol=tcp
    add action=mark-connection chain=forward comment=IMAPS new-connection-mark=\
        FILTER passthrough=yes port=993 protocol=tcp
    add action=mark-connection chain=forward comment=GIF_FILE layer7-protocol=\
        GIF_FILE new-connection-mark=FILTER passthrough=yes
    add action=mark-connection chain=forward comment=PNG_FILE layer7-protocol=\
        PNG_FILE new-connection-mark=FILTER passthrough=yes
    add action=mark-connection chain=forward comment=JPG_FILE layer7-protocol=\
        JPG_FILE new-connection-mark=FILTER passthrough=yes
    add action=mark-packet chain=forward comment=FILTER-DOWNLOAD connection-mark=\
        HIGH dst-address-list=LAN new-packet-mark=FILTER-DOWN passthrough=yes \
        src-address-list=!LAN-EXCEPTION
    add action=mark-packet chain=prerouting comment=FILTER-UPLOAD \
        connection-mark=HIGH dst-address-list=!LAN-EXCEPTION new-packet-mark=\
        FILTER-UP passthrough=yes src-address-list=LAN
    add action=accept chain=forward comment=\
        "############## END FILTER ############" disabled=yes
    /ip firewall nat
    add action=masquerade chain=srcnat out-interface="Gi05 - WAN" to-addresses=\
        172.16.101.1
    /ip route
    add distance=1 gateway=172.16.101.1
    /ip service
    set telnet disabled=yes
    set ftp disabled=yes
    set www disabled=yes
    set ssh disabled=yes
    set api disabled=yes
    set api-ssl disabled=yes
    /lcd interface pages
    set 0 interfaces="sfp1,Gi01 - master,Gi02,Gi03,Gi04,Gi05 - WAN,Fa01 - master,F\
        a02,Fa03,Fa04,Fa05"
    /system clock
    set time-zone-name=Europe/Moscow
    /system package update
    set channel=bugfix
    Видно, что я пытаюсь фильтровать трафик на Gi05, хотя надо гостевую часть. Но фильтрации сейчас не происходит даже на Gi05
    Есть еще цепочки queues, которые у меня отключены. Пытался с ними тоже играться.
     
  5. Илья Князев

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

    Вы как-то сложно пошли )
    Код:
    /queue simple
    #Разрешаем гостям безлимит на 172.16.101.0/24
    add dst=172.16.101.0/24 name=Guest-To-Server target=192.168.12.0/24
    #Ограничиваем гостям все остальное 2 мбитами
    add max-limit=2M/2M name=Guest-To-Inet queue=\
        pcq-upload-default/pcq-download-default target=192.168.12.0/24
    
    А для main можно очередь не писать. Они и так без ограничений.
    Последовательность важна, очереди проверяются сверху вниз.
     
    Verum нравится это.
  6. Verum

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

    блин.

    Илья, приогромнейшее спасибо!
    Как ни странно, а цель достигнута. Все работает. Изящно.