Вопрос по теории

Тема в разделе "Общий форум", создана пользователем LMA, 15 авг 2018.

  1. LMA

    LMA Участник

    Коллеги подскажите, а как работает action=reject в цепочке forward?
     
  2. Также как и drop, но клиенту отправляется сообщение с ошибкой.
     
  3. LMA

    LMA Участник

    Route.jpg
    т.е. вот ситуация:
    ПК находится в одной сети (users-net), веб сервер находится в другой сети (www-net).
    Правило взаимодействия между сетями настроено так: chain=forward src-address=users-net dst-address=www-net action=reject.
    Если пользователь с ПК пытается открыть сайт, расположенный на сервере www, то роутер получив пакет с ПК, дропнет его, и сам роутер ответит ПК, что хост www недоступен по такой то причине. А до сервера www пакет соответственно не дойдет, т.к. его дропнули ранее.
    Правильно?
     
  4. Да правильно
     
  5. LMA

    LMA Участник

    Понял, спасибо!
    Я просто уточнить хотел.
     
  6. LMA

    LMA Участник

    Можно в этой же теме ещё один вопрос по теории?))) На этот раз про mangle
     
  7. LMA

    LMA Участник

    На картинке привожу простую схему сети, приближенную к реальным сетям, с которыми приходится работать:
    • Есть три площадки - офис, завод, склад.
    • Провайдеры у всех разные, и все дают разную скорость, для офиса внешний линк 100Мб\сек, для склада - 10Мб\сек, для завода - 60Мб\сек.
    • Все площадки объединены посредством VPN по топологии "звезда", офис - центр (завод и офис через ipip с ipsec, склад и офис через чистый ipsec в туннельном режиме).
    • На заводе и в офисе, в качестве шлюзовых маршрутизаторов стоят ccr1016 (порты соответственно гигабитные).
    • На складе стоит rb2011, у него часть портов гигабитные, часть 100Мб
    • На всех площадках сети сегментированы (пользовательские сети, серверные сети, гостевые, ДМЗ и т.д.), поэтому активно используем vlan и транки. Для примера, на схеме показаны две локальных подсети, на одном физическом интерфейсе eth5, vlan41 (192.168.41.0/24) - пользовательский сегмент, и vlan51 (192.168.51.0/24) - серверный сегмент (который содержит для примера файловый сервер), пользовательский сегмент на заводе - 192.168.31.0/24 (я его на схеме не указал).


    Вопрос 1: Задача маркировать трафик загрузки файлов на сервер с клиентского ПК, и скачивания файла с сервера на клиентский ПК. Для упрощения принимаем, что сервер для upload и download открывает подключение по 445 tcp порту. Вопрос в том, правильны ли мои действия (рассуждения)?

    правила mangle для загрузки файла из локальной сети 192.168.41.0 на сервер:
    add chain=forward src-address=192.168.41.0/24 dst-address=192.168.51.0/24 protocol=tcp dst-port=445 connection-mark=no-mark action=mark-connection new-connection-mark=vl41uploadfiles connection-state=new
    add chain=forward connection-mark=vl41uploadfiles action=mark-packed new-packed-mark=vl41uploadfiles

    правила mangle для скачивания файла с сервера на ПК в локальной сети 192.168.41.0:
    add chain=forward src-address=192.168.51.0/24 dst-address=192.168.41.0/24 protocol=tcp src-port=445 connection-mark=no-mark action=mark-connection new-connection-mark=vl41downloadfiles connection-state=new
    add chain=forward connection-mark=vl41downloadfiles action=mark-packed new-packed-mark=vl41downloadfiles

    Аналогично и для удаленной заводской сети
    правила mangle для загрузки файла из удаленной сети 192.168.31.0 на сервер:
    add chain=forward src-address=192.168.31.0/24 dst-address=192.168.51.0/24 protocol=tcp dst-port=445 connection-mark=no-mark action=mark-connection new-connection-mark=net31uploadfiles connection-state=new
    add chain=forward connection-mark=net31uploadfiles action=mark-packed new-packed-mark=net31uploadfiles

    правила mangle для скачивания файла с сервера на ПК в удаленной сети 192.168.31.0:
    add chain=forward src-address=192.168.51.0/24 dst-address=192.168.31.0/24 protocol=tcp src-port=445 connection-mark=no-mark action=mark-connection new-connection-mark=net31downloadfiles connection-state=new
    add chain=forward connection-mark=net31downloadfiles action=mark-packed new-packed-mark=net31downloadfiles

    Опять же повторю вопрос, правильно так маркировать или нет, т.к. в таком ключе планирую отмаркировать весь трафик известных служб, для последующей приоритезации.

    Вопрос 2
    : Как правильно маркировать http(s) трафик upload и download?
    Т.е. вот такая схема имеет место быть?

    Маркировка подключения к сайтам из пользовательской сети офиса
    add chain=forward src-address=192.168.41.0/24 protocol=tcp dst-port=80,443 connection-mark=no-mark action=mark-connection new-mark-connection=vl41uplinternet connection-state=new
    add chain=forward connection-mark=vl41uplinternet action=mark-packet new-mark-packet=vl41uplinternet
    Маркировка загрузок с сайтов из пользовательской сети офиса
    add chain=forward dst-address=192.168.41.0/24 protocol=tcp src-port=80,443 connection-mark=no-mark action=mark-connection new-mark-connection=vl41downinternet connection-state=new
    add chain=forward connection-mark=vl41downinternet action=mark-packet new-mark-packet=vl41downinternet

    Приведенные примеры маркировки верные?

    Вопрос 3: Выбор интерфейсов.
    Касаемо фильтра, правила должны привязываются к тому интерфейсу, через который пойдет трафик (либо к физическому, либо к логическому), а в случае очередей interface Queue Tree, как правильно делать? Т.е. если у нас на интерфейсе eth5 есть несколько vlan интерфейсов, в дереве queue tree parent-ом будет физический eth5, или логические vlan интерфейсы. Для для интерфейса, подключенного в провайдерсую сеть вопрос аналогичен (на схеме это eth1), на нем создаются туннельные интерфейсы, а parent-ом берем физический интерфейс, или по ситуации?
    Я вообще предполагаю, что надо брать физический интерфейс, т.к. сумма скоростей на логических интерфейсах не превысит скорость физического и то же касается и очереди. А если у нас на одном физическом интерфейсе несколько vlan и нам надо приоритезировать трафик проходящий с одного vlan в другой (в рамках одного физического интерфейса), надо брать родителем физический интерфейс для upload и download деревьев или соответствующие логические (логических интерфейсов кстати у нас обычно больше двух на одном физическом).

    Есть ещё вопросы связанные непосредственно с приоритезацией (проектированием деревьев queue tree), но смогу их корректно сформулировать, когда прояснится вопрос выбора parent интерфейса.
     

    Вложения:

  8. Sergey_S

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

    Это MTCTCE, в рамках курса и разберешься =)
     
  9. LMA

    LMA Участник

    На самом деле сертификат МТСТСЕ у меня имеется, но чисто субъективно у официалов очень слабо дается теория по части QoS (не буду озвучивать название учебного центра, в котором проходил обучение), как рассчитывать HTB научили, а вот правильно делать маркировку не научили (например акцентировать внимание на том, что сначала маркируем соединение, затем по соединению маркируем пакеты), по выбору интерфейса так же мало информации было на курсе, я когда сертификат получил, много дров наломал, пришлось оплачивать дополнительные курсы у неофициального учебного центра, чтобы разобраться в MTCTCE.

    Теперь могу сказать, что по первой части моего вопроса ответ такой:
    • трафик маркируется для соединения в обе стороны, т.е. разово отмаркировал, и используешь эту маркировку для правил queue входщего трафика и исходящего.
    По второму вопросу ответ примерно такой:
    • Если на внешнем интерфейсе провайдер дает 100Мб/сек, а у меня через этот интерфейс и vpn и NAT, то очередей будет по количеству сабинтерфейсов плюс физический, при этом в качестве MaxLimit мы сможем на всех корнях указать максимальную скорость физического интерфейса, а сумма LimitAt в листьях по всем всем деревьям на данном физическом интерфейсе не должна превышать скорость на физическом интерфейсе.

    Как то так.
     
  10. Илья Князев

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

    Если VPN-ы типа GRE/IPIP и EoIP там есть inherit dscp
    Тогда в мангл вешаем на пакеты DSCP, а потом на основании DSCP маркируем пакеты на WAN интерфейсе.