Настройка VLAN Trunking на управляемых коммутаторах

Неправильная настройка VLAN trunking может привести к потере связи между отделами и создать уязвимости для атак. Мы настраиваем trunk-порты на коммутаторах Cisco, MikroTik и Linux-серверах, обеспечивая корректную передачу трафика и защиту от VLAN hopping. Наша команда реализует проект под ключ — от аудита текущей конфигурации до внедрения и последующей поддержки.
Часто задаваемые вопросы

Мы сталкивались с ситуацией, когда после обновления прошивки на коммутаторах Cisco Catalyst 3750 компания потеряла связь между отделами на 4 часа. Причина — сбился native VLAN на trunk-порту. Трафик управления ушел в неверный сегмент, DHCP перестал работать, производственный цех остался без управления. Типичная история: native VLAN mismatch — одна из самых частых ошибок при настройке VLAN trunking. Она возникает, когда на двух концах trunk указаны разные native VLAN, и коммутаторы начинают интерпретировать нетегированные кадры в разных VLAN. Результат — потеря связности, нестабильная работа протоколов управления и потенциальная уязвимость для атаки VLAN hopping.

Наш опыт показывает, что правильная настройка VLAN trunking — база для безопасной и отказоустойчивой сети. Мы разберем не только базовые конфигурации на Cisco, MikroTik и Linux, но и частые ошибки, которые допускают даже опытные инженеры. Более 10 лет мы настраиваем VLAN-сети для производственных и офисных предприятий, выполнили 50+ проектов. Гарантируем корректную работу и предоставляем лицензионную документацию.

Проблемы, которые решаем

Самые частые проблемы, с которыми к нам обращаются:

  • Native VLAN mismatch — оба конца trunk должны использовать один и тот же native VLAN. На Cisco это видно по сообщению CDP-4-NATIVE_VLAN_MISMATCH. Если не совпадает, кадры управления (CDP, STP) попадают в неправильный VLAN, нарушая топологию.
  • Trunk allowed vlan неправильно задан — если не использовать ключ add, список перезаписывается, и часть VLAN теряется. Например, switchport trunk allowed vlan 10 удалит все остальные. Ошибка приводит к тому, что устройства в других VLAN теряют связность через trunk.
  • Неправильный pvid на access порту — устройство не получает IP, так как DHCP-сервер находится в другом VLAN. Это часто случается при миграции или добавлении новых портов.

Мы также решаем проблемы с VTP, асимметричной маршрутизацией и неправильной конфигурацией STP в смешанных вендорных средах.

Почему native VLAN mismatch — самая критичная ошибка?

Кадры native VLAN передаются без тега. Если на одном конце trunk native VLAN = 1, а на другом = 999, то коммутатор, отправляя кадр управления в native VLAN, получит на другом конце кадр, интерпретируемый как принадлежащий VLAN 999. Это может вызвать петли STP, потерю CDP-соседей и даже открыть доступ к управляющим VLAN для атак. В нашей практике был случай, когда из-за mismatch злоумышленник смог получить доступ к VLAN управления через подмену native VLAN (VLAN hopping).

Как диагностировать native VLAN mismatch?

На Cisco выполните show interfaces trunk — в выводе вы увидите native VLAN для каждого trunk. Если на соседнем коммутаторе он отличается — это mismatch. Дополнительно проверьте show vlan brief и show spanning-tree vlan 1 (или ваш native VLAN).

show interfaces trunk show vlan brief show spanning-tree vlan 999 

Также полезно включить debbug: debug condition interface Gi1/0/48, debug sw-vlan trunk.

Как настроить trunk на Cisco пошагово?

Разберем реальный кейс. Клиент: среднее производственное предприятие, ~200 рабочих мест, 5 VLAN, ядро на Cisco Catalyst 3850. После обновления прошивки с 16.3 до 16.9 пропала связь между VLAN 10 (бухгалтерия) и VLAN 20 (склад). Диагностика показала, что на аплинке между коммутаторами ядра и доступа различался native VLAN. На ядре был native 1, на доступе — 999.

  1. На коммутаторе доступа: interface Gi1/0/24; switchport trunk native vlan 1.
  2. Проверили show interfaces trunk — native VLAN совпал.
  3. Протестировали связность — проблема ушла.

Рекомендуем использовать неиспользуемый VLAN для native (например, 999), чтобы избежать смешивания с рабочими VLAN. Но главное — согласовать на обоих концах.

interface GigabitEthernet1/0/24
 switchport mode trunk
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 999
 switchport trunk allowed vlan add 10,20,30
 no shutdown

Сравнение VLAN-решений: MikroTik vs Cisco

MikroTik с версии 7.x использует bridge vlan-filtering, что интуитивно понятнее. Вы добавляете порты в bridge, задаете pvid для access, а затем в /interface bridge vlan указываете, какие VLAN тегированные (tagged) на каких портах. Это сравнение: Cisco требует больше команд, но дает гибкость, MikroTik — прозрачность. В нашей практике настройка простой сети из 5 VLAN на MikroTik занимает в 2 раза меньше времени, чем на Cisco.

/interface bridge add name=br0 vlan-filtering=yes
/interface bridge port
add bridge=br0 interface=ether2 pvid=10
add bridge=br0 interface=ether3 pvid=20
add bridge=br0 interface=ether8 pvid=1
/interface bridge vlan
add bridge=br0 vlan-ids=10 untagged=ether2 tagged=ether8
add bridge=br0 vlan-ids=20 untagged=ether3 tagged=ether8
add bridge=br0 vlan-ids=30 tagged=ether8
/interface vlan add interface=br0 name=vlan10 vlan-id=10
/ip address add address=192.168.10.1/24 interface=vlan10

Настройка trunk на Linux сервере

На Linux используйте модуль 8021q и iproute2. Проверьте загрузку модуля: modprobe 8021q. Затем создайте VLAN-интерфейс:

ip link add link eth0 name eth0.10 type vlan id 10 ip link set eth0.10 up ip addr add 192.168.10.5/24 dev eth0.10 

Или через Netplan (на Ubuntu):

network: version: 2 ethernets: eth0: mtu: 9000 vlans: eth0.10: id: 10 link: eth0 addresses: [192.168.10.5/24] 

Linux-сервер может терминировать VLAN или маршрутизировать между ними. Для коммутации уровня 2 потребуется bridge.

Сравнение подходов: таблица

Вендор Функция trunk Команда / конфиг Особенность
Cisco IOS switchport mode trunk switchport trunk allowed vlan X Native VLAN mismatch — частая ошибка
MikroTik 7.x bridge vlan-filtering /interface bridge vlan Простота, но нужно включать фильтрацию
Linux 802.1q модуль, iproute2 ip link add link eth0 name eth0.X Гибкость, но не L2 коммутация

Таблица симптомов и решений

Симптом Причина Проверка Решение
Устройство не получает IP Неправильный pvid на access порту show vlan brief, проверить pvid порта Назначить pvid, соответствующий VLAN DHCP-сервера
Два устройства в одном VLAN не видят друг друга через trunk VLAN не разрешен на trunk show interfaces trunk на обоих концах Добавить VLAN в switchport trunk allowed vlan add
Потеря пакетов, нестабильная работа протоколов Native VLAN mismatch show interfaces trunk, сравнить native VLAN Согласовать native VLAN на обоих коммутаторах

Пример лога ошибки native VLAN mismatch на Cisco:

%CDP-4-NATIVE_VLAN_MISMATCH: Native VLAN mismatch discovered on GigabitEthernet1/0/24 (999), with FastEthernet2/0/1 (1). 

Это сообщение говорит о несовпадении: на порту native 999, а на соседнем — 1.

Что входит в настройку VLAN trunking под ключ

  • Аудит текущей сети и схемы VLAN.
  • Проектирование сегментации и trunk-соединений.
  • Настройка access и trunk портов на коммутаторах.
  • Конфигурация VLAN на маршрутизаторах и серверах.
  • Тестирование связности и устранение ошибок.
  • Документация (схема, конфиги, инструкция).

Сроки: от 1 дня для простой сетки, до 3 дней для иерархической сети с резервированием.

Типичные ошибки и чек-лист

  • Не использовать add в Cisco — пишите switchport trunk allowed vlan add 10.
  • Не забывайте про native VLAN — используйте неиспользуемый ID (999, 4000).
  • На MikroTik не забывайте включать vlan-filtering=yes.
  • На Linux проверьте, что модуль 8021q загружен (modprobe 8021q).
  • Для защиты от VLAN hopping запретите native VLAN на access портах и используйте команду switchport nonegotiate на Cisco.

Наши сертифицированные инженеры (CCNP, MikroTik MTCNA) имеют более 10 лет опыта настройки VLAN-сетей. Свяжитесь с нами для консультации по вашей сети. Закажите полный аудит и настройку VLAN trunking под ключ — мы гарантируем корректную работу и предоставим документацию.

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1394
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1369
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    816
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1141