Перейти к содержанию

VTP

Введение

VTP (VLAN Trunking Protocol) — проприетарный протокол Cisco, который используется для распространения информации о VLAN между коммутаторами внутри одной административной области (VTP domain). Это позволяет централизованно управлять VLAN'ами и упрощает настройку больших сетей.

Назначение VTP

Без VTP необходимо вручную создавать и настраивать VLAN на каждом коммутаторе. С VTP изменения, внесённые на одном коммутаторе, автоматически распространяются на другие коммутаторы в той же VTP-домене.

Преимущества VTP:

  • Централизованное управление VLAN
  • Упрощение конфигурации
  • Снижение количества ошибок

Недостатки:

  • Возможность непреднамеренной потери конфигурации VLAN
  • Уязвимость к ошибкам конфигурации и атакам (если не защищен)

Режимы работы VTP

VTP поддерживает три режима:

Server (Сервер)

  • Коммутатор может создавать, изменять и удалять VLAN
  • Распространяет информацию по VTP-домену
  • Сохраняет конфигурацию VLAN в NVRAM

Client (Клиент)

  • Не может создавать или удалять VLAN
  • Получает информацию от серверов и применяет её
  • Не сохраняет информацию в NVRAM

Transparent (Прозрачный)

  • Не участвует в VTP-домене
  • Пересылает VTP-объявления другим коммутаторам
  • Локально созданные VLAN сохраняются и действуют только на этом коммутаторе

Структура VTP Frame (VTP Packet)

  • VTP Version (1, 2, 3)
  • VTP Domain Name
  • VTP Password (если настроен)
  • Configuration Revision Number (номер конфигурации)
  • VLAN Information

VTP Domain и Configuration Revision Number

VTP Domain

VTP-домен — это логическая область управления VLAN, определяемая уникальным именем. Все коммутаторы, участвующие в распространении VLAN через VTP, должны иметь одинаковое имя VTP-домена. Коммутаторы с другим доменом будут игнорировать VTP-фреймы.

  • Имя домена задаётся вручную или автоматически (при первом получении VTP-фрейма)
  • Домен может быть защищён паролем — VTP-фреймы без соответствующего пароля игнорируются
  • Все коммутаторы в одном VTP-домене могут быть связаны через транковое соединение

Configuration Revision Number

Это целое число, которое увеличивается при каждом изменении конфигурации VLAN на сервере VTP. Коммутаторы в режиме клиента или сервера обновляют свои данные о VLAN только в том случае, если полученное VTP-сообщение содержит более высокий номер ревизии, чем текущий.

Важно!

  • Если вы случайно подключите к сети старый коммутатор с более высокой ревизией, но пустой конфигурацией, он может "затереть" всю VLAN-информацию.
  • Перед добавлением нового коммутатора необходимо сбросить номер ревизии: удалить файл vlan.dat и перезагрузить устройство.

Типы VTP

VTP Version 1

  • Первая и базовая версия протокола
  • Поддерживает VLAN с идентификаторами от 1 до 1005
  • Не поддерживает расширенные VLAN (1006–4094)
  • Не пересылает VTP-объявления из одной базы данных в другую (например, MST и Private VLAN)
  • Работает по умолчанию на большинстве устройств Cisco

VTP Version 2

  • Расширяет возможности VTP v1
  • Обеспечивает совместимость с сетями Token Ring (в настоящее время редко используется)
  • Поддерживает VLAN-транзакции типа „резервные VLAN“
  • Автоматически включается при обнаружении VTP v2-сообщений от соседних коммутаторов
  • Всё ещё не поддерживает расширенные VLAN (1006–4094)

VTP Version 3

  • Наиболее продвинутая и безопасная версия
  • Поддержка всех диапазонов VLAN (включая расширенные: 1006–4094)
  • Поддержка Private VLAN и MST (Multiple Spanning Tree)
  • Улучшенное управление и разграничение ролей (Primary Server, Secondary Server)
  • Поддержка Authentication Digest (усиленная проверка подлинности)
  • Возможность включать или выключать распространение VLAN на определённых интерфейсах
  • Не принимает VTP-объявления из старых версий (только если настроено на совместимость)

Управление VLAN через VTP

Знание о том, как создавать, изменять и удалять VLAN с помощью VTP, а также о том, как управлять их свойствами (например, именами и типами), является важным аспектом работы с VTP.

Создание VLAN

Создание новой VLAN осуществляется на VTP-сервере. После этого информация автоматически распространяется на все устройства в том же VTP-домене.

Switch(config)# vlan 10
Switch(config-vlan)# name HR
  • vlan 10 — создаёт VLAN с ID 10
  • name HR — задаёт имя VLAN

Изменение VLAN

Switch(config)# vlan 10
Switch(config-vlan)# name Human_Resources
  • Позволяет изменить имя уже существующей VLAN

Удаление VLAN

Switch(config)# no vlan 10
  • Удаляет VLAN 10 на сервере, после чего эта VLAN удаляется и на всех клиентах VTP

Проверка VLAN

Switch# show vlan brief
  • Показывает все текущие VLAN и их назначение на порты

Особенности управления

  • Управлять VLAN можно только на коммутаторах в режиме VTP Server или Transparent
  • В режиме Client VLAN нельзя создавать или изменять вручную — они приходят от сервера
  • После создания или удаления VLAN автоматически увеличивается Configuration Revision Number, что сигнализирует остальным коммутаторам о необходимости обновления

Управление типами VLAN

Хотя в большинстве случаев администратор работает с Ethernet VLAN, стоит понимать, что существуют и другие типы (FDDI, Token Ring и т.д.), однако они редко используются в современных сетях

Switch(config-vlan)# state active
  • Устанавливает VLAN в активное состояние (по умолчанию)
Switch(config-vlan)# mtu 1500
  • Настраивает максимальный размер MTU для VLAN (используется редко)

В большинстве случаев для управления достаточно настроить ID и имя VLAN, но знание дополнительных параметров может пригодиться в специфических сценариях.

Синхронизация и обновления

Синхронизация VLAN через VTP осуществляется посредством VTP-объявлений (VTP advertisements), которые передаются между коммутаторами по trunk-соединениям.

Типы VTP-объявлений

  1. Summary Advertisements — отправляются сервером каждые 5 минут или при изменении конфигурации VLAN. Содержат:
    • Номер конфигурации (Revision Number)
    • Имя VTP-домена
    • Версию VTP
    • Подпись аутентификации (если настроена)
  2. Subset Advertisements — передаются после Summary, содержат подробную информацию о VLAN (номер, имя, состояние и т.д.).
  3. Advertisement Requests — отправляются клиентами или серверами, если они обнаруживают более новую версию конфигурации у соседа (по номеру ревизии).

Механизм обновления

  • Коммутаторы получают VTP-объявления только от устройств в том же VTP-домене.
  • Если полученное объявление содержит более высокий Revision Number, коммутатор:
    • Заменяет локальную таблицу VLAN полученными данными
    • Обновляет номер ревизии
  • Если номер ревизии равен или ниже, объявление игнорируется

Опасность рассинхронизации

Если в сеть подключается коммутатор с:

  • Тем же доменом,
  • Более высокой ревизией,
  • Но пустой или устаревшей таблицей VLAN

то он может "затереть" всю актуальную конфигурацию на остальных коммутаторах. Поэтому перед добавлением новых устройств нужно:

  • Очистить vlan.dat
  • Сбросить конфигурацию VTP (например, командой delete vlan.dat и перезагрузкой)

Роль Trunk-портов

  • VTP-объявления передаются только по trunk-портам.
  • Access-порты не участвуют в синхронизации VLAN.
  • Поэтому важно, чтобы между коммутаторами были правильно настроены trunk-соединения.

Проверка синхронизации

Switch# show vtp status
  • Покажет текущий номер ревизии
  • Покажет, был ли принят последний пакет VTP
  • Индикация: "Last Updater ID" — IP-адрес устройства, от которого получено последнее обновление

Безопасность

VTP может быть уязвим для атак, таких как:

  • Случайное или злонамеренное внесение изменений в VLAN
  • Подключение неавторизованных коммутаторов с более высокой версией конфигурации
  • Распространение ложной информации по всей сети

Использование пароля VTP

Для предотвращения таких атак необходимо использовать VTP-аутентификацию:

Switch(config)# vtp password securepass
  • Все коммутаторы в одном VTP-домене должны использовать одинаковый пароль
  • Если пароли не совпадают, VTP-объявления будут игнорироваться

Ограничение роли VTP Server

  • Разрешать только одному или ограниченному числу коммутаторов работать в режиме Server
  • Все остальные — в режиме Client или Transparent
  • Это уменьшит риск непреднамеренного распространения неправильной информации

Очистка конфигурации новых коммутаторов

  • Перед добавлением нового устройства необходимо удалить файл vlan.dat, чтобы избежать распространения старой или пустой конфигурации с более высоким Revision Number:
Switch# delete flash:vlan.dat
Switch# reload

Использование Transparent режима

  • Для изоляции критически важных участков сети можно использовать VTP Transparent
  • Такие коммутаторы не участвуют в распространении VLAN, но могут передавать объявления другим узлам

Мониторинг VTP

  • Постоянно отслеживать статус VTP:
Switch# show vtp status
  • Контролировать ревизии, домен и источник последнего обновления

Настройка VTP в Cisco

Подготовка оборудования

Для начала вам потребуется минимум два коммутатора, чтобы продемонстрировать работу VTP. В Cisco Packet Tracer выберите два коммутатора (например, 2960), а также несколько ПК, которые будут подключены к этим коммутаторам.

Создание топологии

  1. Разместите два коммутатора на рабочем пространстве.
  2. Подключите их друг к другу через Trunkпорт с использованием кабеля Ethernet.
  3. Подключите несколько ПК к каждому из коммутаторов для дальнейшей демонстрации.

Настройка VTP

Теперь перейдем к настройке VTP на каждом из коммутаторов.

Коммутатор 1 (VTP Server)

  1. Настройте VTP домен: Включите консоль на первом коммутаторе и выполните команду для задания VTP-домена. Мы будем использовать домен с именем "MyVTPDomain".

    bash Switch1> enable Switch1# configure terminal Switch1(config)# vtp domain MyVTPDomain

  2. Установите режим VTP Server: В VTP-домене один коммутатор должен быть в режиме Server, чтобы изменения конфигурации VLAN могли быть распространены. Этот режим активируется по умолчанию.

    bash Switch1(config)# vtp mode server

  3. (Опционально) Установите пароль для VTP: Если вы хотите повысить безопасность, установите пароль для VTP, чтобы коммутаторы обменивались VTP-объявлениями только при совпадении пароля.

    bash Switch1(config)# vtp password securepass

  4. Создание VLAN: На VTP-сервере вы можете создать VLAN. Эти VLAN автоматически будут распространены на другие коммутаторы в том же домене VTP.

    bash Switch1(config)# vlan 10 Switch1(config-vlan)# name HR

    Здесь создается VLAN с ID 10 и именем "HR". После этого этот VLAN будет доступен на всех коммутаторах в том же VTP-домене.

  5. Проверьте настройки VTP: Используйте команду show vtp status, чтобы проверить состояние VTP на коммутаторе:

    bash Switch1# show vtp status

    Убедитесь, что параметры, такие как домен, режим и номер конфигурации (Revision Number), отображаются корректно.

Коммутатор 2 (VTP Client)

Теперь настроим второй коммутатор как VTP Client. Он будет получать информацию о VLAN от коммутатора VTP Server.

  1. Настройка VTP домена на коммутаторе 2:

    bash Switch2> enable Switch2# configure terminal Switch2(config)# vtp domain MyVTPDomain

  2. Установите режим VTP Client: Этот коммутатор будет получать обновления VLAN от сервера. Чтобы установить режим Client, используйте команду:

    bash Switch2(config)# vtp mode client

  3. Проверьте настройки VTP: После настройки проверьте параметры VTP на втором коммутаторе, чтобы убедиться, что он настроен правильно:

    bash Switch2# show vtp status

    Вы должны увидеть, что режим установлен в Client, а домен совпадает с доменом на сервере.

Проверка и тестирование

  1. Проверка наличия VLAN: Теперь, когда все настроено, можно проверить, распространились ли VLAN на оба коммутатора. На каждом из коммутаторов выполните команду:

    bash Switch1# show vlan brief

    Эта команда должна показать список всех VLAN, в том числе VLAN 10, который мы создали на VTP-сервере.

  2. Подключите ПК и проверите соединение: Подключите ПК к порту каждого из коммутаторов, который принадлежит VLAN 10, и проверьте, могут ли они общаться друг с другом.

Подключение дополнительных коммутаторов

Для добавления дополнительных коммутаторов, повторите шаги для настройки VTP Client на каждом новом коммутаторе и убедитесь, что они используют тот же домен и пароль.

Дополнительные команды и диагностика

  • Проверка статуса VTP:

    Для диагностики используйте команду show vtp status, чтобы убедиться, что параметры, такие как домен, режим и номер ревизии, установлены правильно на всех коммутаторах.

    bash Switch1# show vtp status

  • Отладка VTP:

    Если нужно отследить события VTP, можно включить отладку:

    bash Switch1# debug sw-vlan vtp events

Мониторинг и диагностика

Умение отслеживать состояние VTP и диагностировать проблемы — ключевая задача сетевого администратора. Несоответствие информации о VLAN между коммутаторами может привести к нарушению работы всей сети.

14.1 Команды мониторинга

Switch# show vtp status
  • Показывает текущий VTP-домен, режим, номер ревизии, последнего обновлявшего коммутатора и другие параметры
Switch# show vlan brief
  • Отображает список VLAN, их ID и назначение портов
Switch# show vtp password
  • Показывает установленный пароль (если задан)
Switch# debug sw-vlan vtp events
  • Включает отладку событий VTP, отображает отправку и получение VTP-объявлений в реальном времени

14.2 Частые проблемы и их диагностика

Проблема: VLAN не распространяются

  • Проверьте trunk-порты (должны быть активны)
  • Убедитесь, что коммутаторы находятся в одном VTP-домене
  • Проверьте пароль VTP (если используется)
  • Убедитесь, что один из коммутаторов — в режиме Server

Проблема: VLAN исчезли после подключения нового коммутатора

  • Вероятно, новый коммутатор имел более высокий номер ревизии, но пустую таблицу VLAN
  • Решение: удалить vlan.dat и сбросить номер ревизии перед подключением к сети

14.3 Лучшие практики диагностики

  • Постоянно контролируйте Revision Number
  • При любых изменениях логируйте действия на сервере VTP
  • Используйте отладку (debug) для анализа сложных случаев
  • Перед внедрением изменений — создавайте резервную копию конфигурации VLAN

Лучшие практики и безопасность

  • Используйте VTP Version 3 — улучшенная безопасность
  • Устанавливайте пароль VTP
  • Избегайте автоматического присоединения коммутаторов к сети
  • Используйте Transparent Mode для пограничных устройств
  • Резервное копирование VLAN базы данных (vlan.dat)

Заключение

VTP — мощный инструмент централизованного управления VLAN, но требует осторожности и понимания принципов работы. Его неправильная настройка может привести к серьёзным сбоям в работе сети.