Продолжаем эпопею по настройке странного на Микротиках. Сегодня речь пойдет про vlan и способов их приготовить я вам предложу аж сразу три.

Первый способ – это, что называется «в лоб». Берём и на каждый порт создаём нужный интерфейс типа VLAN, это даст нам tagged-порты или порты типа trunk. Далее всю это гору vlan-интерфейсов с соответствующими номерами vlan объединяем в бридж. Туда же добавляем нужные порты, которые станут untagged-портами или портами типа access. Плюсы – гибкость, можно настроить вообще что угодно в любой комбинации и, пожалуй, наглядность. Минусы – очень много телодвижений. Я бы даже сказал некультурно много.

Второй вариант мне куда ближе – собираем порты в бридж и интерфейсы типа VLAN вешаем уже на бридж. Порты будут пропускать тегированный трафик. Далее так же делаем по бриджу на каждый vlan и добавляем порты, которые предполагаются нетегированными. Плюсы – простота. Минусы – все порты, входящие в бридж с vlan’ами будут пропускать их все. То есть конфигурация типа «1 порт пропускает 10 и 20 vlan’ы, а 2 – 20 и 30» невозможна. Я придерживаюсь идеологии, что в своей сети магистральные порты должны по умолчанию уметь пропускать все vlan’ы, поэтому это мой выбор.

Третий вариант предполагает использование встроенных возможностей чипа железки. Отсюда вытекает единственный мне известный, зато офигительно жирный минус – чип всю эту кухню должен поддерживать. Плюсы – работа строится очень похоже на то, что предлагают все остальные известные мне вендоры. Кроме того, этот функционал работает очень быстро, потому что выполняется прямо на чипе, то есть практически на уровне рефлексов и спинного мозга. Сейчас всё расскажу поподробнее и опираться буду на соответствующую статью базы знаний Mikrotik.

Что за чипы стоят у вас можно глянуть в разделе Switch -> Switch. И да, разные группы портов могут обслуживать разные чипы. Возможности, соответственно, для разных групп портов могут оказаться разными. Ладно, начнём. Первым делом лезем в настройки Switch -> Port и там настраиваем нужные порты

Опция vlan-mode – режим работы порта

disabledЗначение по умолчанию. Прикидываемся тупой неуправляемой железкой и с высокой колокольни плюем на vlan-метки в пакетах
fallbackЕсли vlan-id в пакете есть и не совпадает с номером vlan для какого-нибудь порта, пакет отбрасывается. Если vlan-id не указан, пакет направляется согласно метке в поле default vlan
checkНетегированный трафик выкидываем в помойку. Если vlan-id в пакете не соответствует ни одному vlan какого-нибудь порта – пакет идёт в помойку
secureПропускаем только пакеты, у которых vlan-id соответствует номеру vlan входящего порта и этот номер vlan соответствует какому-нибудь порту. Короче, все, что не прошло проверку на входе и выходе – спускаем в унитаз. Нетегированный трафик тоже

Опция vlan-header – как поступать с заголовками

leave-as-isЗначение по умолчанию. Никаких действий с входящим трафиком не предпринимать, используется для гибридных портов
add-if-missingВешаем vlan-метку на выходе, а на входе используем значение поля default vlan, используется для trunk-портов
always-stripСнимаем vlan-метку на выходе, используется для access-портов

Опция default-vlan-id содержит номер default vlan. По умолчанию – auto, но можно явно указать своё значение. Маркирует нетегированный трафик на порту и используется вместе с опцией always-strip для access-портов. Для гибридных портов также используется для нетегированного трафика.

Раздел Switch -> VLAN – это наша таблица vlan‘ов. Здесь все просто vlan-id – номер vlan’а, а ports – список портов, к которым он привязан.

Ну и, наконец, главный вопрос – чего я вообще полез раскуривать эту тему настолько глубоко? Всё до скучного просто – провайдер заходит к нам оптикой и питает интернетом не только нас. Ясное дело, использует vlan’ы. И, чтобы не плодить сущности, отдаёт нам тегированный порт. Заводить vlan в виде интерфейса ради одного порта не хотелось. Правда, на самом деле выяснилось, что чип функционал vlan не умеет – железка похожей модели, но чип глупый 🙁

Добавить комментарий