Настройка SD-WAN через ZTP¶
Обзор¶
Настройка SD-WAN через ZTP (Zero Touch Provisioning) — способ настройки сети SD-WAN, при котором узел CPE получает параметры сети от контроллера автоматически через ZTP Hub, без ручного вмешательства администратора.
При настройке ZTP на SD-WAN важную роль играет ZTP Hub, который выступает в роли посредника между контроллером и узлом CPE. Его основная задача — передать токен контроллера узлу CPE, чтобы узел смог безопасно подключиться к контроллеру и получить от него конфигурацию сети SD-WAN. В токене содержится информация о контроллере: IP-адрес и порт подключения. Сам ZTP Hub устанавливается на сервере Linux, внутри Docker-контейнера.
IP-адрес ZTP Hub указывается на узле CPE на этапе чистой установки образа ПО Факел. Подробная информация содержится в разделе: Установка ПО Факел.
В процессе установки ZTP Hub развернет веб-сервер и веб-интерфейс: с их помощью администратор зарегистрирует контроллер и узел CPE.
Порядок установления связи между контроллером и узлом CPE через ZTP выглядит так:
Узел CPE регистрируется на ZTP Hub по своему серийному номеру.
ZTP Hub обращается к контроллеру, чтобы он сгенерировал токен для узла CPE. Токен содержит информацию о контроллере: IP-адрес и порт.
ZTP Hub сохраняет токен у себя и ожидает подключения узла CPE.
На узле CPE указывается IP-адрес ZTP Hub.
Узел CPE обращается к ZTP Hub.
ZTP Hub выдает узлу CPE токен контроллера.
Узел CPE обращается к контроллеру, предъявляет токен и регистрируется на контроллере.
Контроллер отправляет конфигурацию сети узлу CPE и начинает управлять сетью SD-WAN.
Связь между контроллером и узлом CPE установлена.
Пример настройки¶
Общий порядок настройки соединения SD-WAN через ZTP:
Установить Docker на сервер Linux.
Развернуть на сервере и запустить ZTP Hub.
Настроить контроллер.
Зарегистрировать контроллер через веб-интерфейс ZTP Hub.
Зарегистрировать узел CPE через веб-интерфейс ZTP Hub.
1. Установка Docker на сервер Linux
Установите Docker (версия 20.10 или выше) и Docker Compose (версия 1.29 или выше) на сервер Linux.
Актуальная инструкция по установке опубликована на сайте ПО Docker: https://docs.docker.com/engine/install/ubuntu
2. Запуск ZTP Hub на сервере
Шаг |
Команда |
Описание |
|---|---|---|
1 |
Скачайте с сайта https://fakel.io/ архив с файлами для установки ZTP Hub |
|
2 |
tar -xzf fakel-ztp-hub-main.tar.gz |
Распаковывает архив в текущую директорию |
3 |
cd fakel-ztp-hub-main |
Переходит в директорию с распакованными файлами |
4 |
sudo mkdir /usr/share/ztphub |
Создает директорию /usr/share/ztphub для файлов ZTP Hub |
5 |
sudo chmod -R 750 /usr/share/ztphub |
Для директории /usr/share/ztphub дает право владельцу входить в директорию, читать и записывать, группе пользователей входить в директорию и читать, а всем остальным отказывает в доступе |
6 |
your-ztp-hub.net { tls internal reverse_proxy /ws app:8001 reverse_proxy app:8000 } |
Откройте конфигурационный файл Caddy внутри директории /usr/share/ztphub и добавьте в файл указанные строки. Вместо |
7 |
docker compose -f deploy.yml pull |
Скачивает образы контейнеров Docker, указанные в файле deploy.yml |
8 |
docker compose -f deploy.yml up -d |
Запускает скаченные образы контейнеров Docker, указанные в файле deploy.yml |
9 |
Проверяет доступность ZTP Hub по указанному адресу. Вы также можете подключиться локально по адресу: http://localhost:8000/ |
3. Настройка контроллера
Примечание
Если вы настраиваете топологию Hub and Spoke, то назначьте контроллеру роль gw. Если вы настраиваете топологию Full Mesh, то всем участникам необходимо назначить роль cpe.
Шаг |
Команда |
Описание |
|---|---|---|
1 |
set sdwan identifier |
Присваивает идентификатор |
2 |
set sdwan mode |
Переводит маршрутизатор в режим контроллера |
3 |
set sdwan default_dn organization |
Задает на контроллере различительное имя организации |
4 |
set sdwan wan |
Ассоциирует WAN-канал |
5 |
set sdwan topology |
Создает топологию с именем |
6 |
set sdwan topology |
Указывает подсеть IPv4 |
7 |
set sdwan topology |
Добавляет узел с идентификатором |
8 |
set sdwan topology |
Добавляет узел с идентификатором |
9 |
set sdwan topology |
Задает тип топологии «полносвязная группа» |
10 |
set service sla twamp-server |
Включает сервер TWAMP для отслеживания состояния канала связи в сети SD-WAN |
11 |
set sdwan resources |
Указывает подсеть |
12 |
set sdwan resources |
Указывает приложение с именем |
13 |
set sdwan resources |
Задает идентификатор удаленного узла |
17 |
set sdwan resources |
Задает максимально допустимый размер задержки в |
18 |
set sdwan resources |
Задает максимально допустимый размер джиттера в |
19 |
set sdwan resources |
Задает максимум |
4. Регистрация контроллера на ZTP Hub
Чтобы зарегистрировать контроллер на ZTP Hub:
Отобразите серийный номер маршрутизатора через команду
sh version. Серийный номер появится в строке Hardware S/N.Перейдите по веб-адресу, где вы разворачивали ZTP Hub. Вы попадете в веб-интерфейс ZTP Hub.
В веб-интерфейсе перейдите в форму Controllers → Register Controller.
Введите в поля формы имя контроллера, серийный номер, IP-адрес, пользовательское имя и пароль для контроллера.
Нажмите кнопку Register Controller, чтобы зарегистрировать контроллер с введенными данными.
Если регистрация пройдет успешно, контроллер отобразится в разделе Registered Controllers.
5. Регистрация узла CPE на ZTP Hub
Чтобы зарегистрировать узел CPE на ZTP Hub:
Отобразите серийный номер маршрутизатора через команду
sh version. Серийный номер появится в строке Hardware S/N.Перейдите по веб-адресу, где вы разворачивали ZTP Hub. Вы попадете в веб-интерфейс ZTP Hub.
В веб-интерфейсе перейдите в форму Devices → Register Device.
Введите в поля формы имя CPE, серийный номер CPE и идентификатор контроллера, с которым CPE будет устанавливать связь.
Нажмите кнопку Register Device, чтобы зарегистрировать узел CPE с введенными данными.
Если регистрация пройдет успешно, узел CPE отобразится в разделе Registered Devices.
Список команд¶
Режим «Конфигурирование»¶
sdwan controller address [<x.x.x.x> | <h:h:h:h:h:h:h:h>]¶
Синтаксис:
set sdwan controller address
[<x.x.x.x> | <h:h:h:h:h:h:h:h>]delete sdwan controller address
[<x.x.x.x> | <h:h:h:h:h:h:h:h>]show sdwan controller address
Аргументы:
<x.x.x.x>– IPv4-адрес контроллера;<h:h:h:h:h:h:h:h>– IPv6-адрес контроллера.
Режим: «Конфигурирование».
sdwan controller port <1-65535>¶
Синтаксис:
set sdwan controller port
<1-65535>delete sdwan controller port
<1-65535>show sdwan controller port
Аргументы:
<1-65535>– порт контроллера. Диапазон значений: от 1 до 65535.
Режим: «Конфигурирование».
sdwan controller_dn country <2 character>¶
Синтаксис:
set sdwan controller_dn country
<2 character>delete sdwan controller_dn country
<2 character>show sdwan controller_dn country
Аргументы:
<2 character>– различительное имя страны. Формат: ISO 3166-1 alpha-2. Пример: jp (Япония). Значение по умолчанию: ru (Россия).
Режим: «Конфигурирование».
sdwan controller_dn location <text>¶
Синтаксис:
set sdwan controller_dn location
<text>delete sdwan controller_dn location
<text>show sdwan controller_dn location
Аргументы:
<text>– различительное имя локации. Формат: числовой.
Режим: «Конфигурирование».
sdwan controller_dn organization <text>¶
Синтаксис:
set sdwan controller_dn organization
<text>delete sdwan controller_dn organization
<text>show sdwan controller_dn organization
Аргументы:
<text>– различительное имя организации. Формат: произвольный.
Режим: «Конфигурирование».
sdwan controller_dn organization_unit <text>¶
Синтаксис:
set sdwan controller_dn organization_unit
<text>delete sdwan controller_dn organization_unit
<text>show sdwan controller_dn organization_unit
Аргументы:
<text>– различительное имя подразделения организации. Формат: произвольный.
Режим: «Конфигурирование».
sdwan default_dn country <text>¶
Синтаксис:
set sdwan default_dn country
<text>delete sdwan default_dn country
<text>show sdwan default_dn country
Аргументы:
<2 character>– различительное имя страны по умолчанию. Формат: ISO 3166-1 alpha-2. Пример: jp (Япония).
Режим: «Конфигурирование».
sdwan default_dn location <text>¶
Синтаксис:
set sdwan default_dn location
<text>delete sdwan default_dn location
<text>show sdwan default_dn location
Аргументы:
<text>– различительное имя локации по умолчанию. Формат: числовой.
Режим: «Конфигурирование».
sdwan default_dn organization <text>¶
Синтаксис:
set sdwan default_dn organization
<text>delete sdwan default_dn organization
<text>show sdwan default_dn organization
Аргументы:
<text>– различительное имя организации по умолчанию. Формат: произвольный.
Режим: «Конфигурирование».
sdwan default_dn organization_unit <text>¶
Синтаксис:
set sdwan default_dn organization_unit
<text>delete sdwan default_dn organization_unit
<text>show sdwan default_dn organization_unit
Аргументы:
<text>– различительное имя подразделения организации по умолчанию. Формат: произвольный.
Режим: «Конфигурирование».
sdwan identifier <0-4294967295>¶
Синтаксис:
set sdwan identifier
<0-4294967295>delete sdwan identifier
<0-4294967295>show sdwan identifier
Аргументы:
<0-4294967295>– идентификатор узла CPE в сети SD-WAN. Диапазон значений: от 0 до 4294967295.
Режим: «Конфигурирование».
sdwan mode [<stand-alone> | <remote-node> | <central-controller>]¶
Синтаксис:
set sdwan mode
[<stand-alone> | <remote-node> | <central-controller>]delete sdwan mode
[<stand-alone> | <remote-node> | <central-controller>]show sdwan mode
Аргументы:
<stand-alone>– маршрутизатор работает автономно, без централизованного управления по SD-WAN;<remote-node>– узел CPE;<central-controller>– центральный контроллер.
Режим: «Конфигурирование».
sdwan resources <name> address <x.x.x.x/x>¶
Синтаксис:
set sdwan resources
<name>address<x.x.x.x/x>delete sdwan resources
<name>address<x.x.x.x/x>show sdwan resources
<name>address
Аргументы:
<name>— имя логической группы ресурсов;<x.x.x.x/x>— подсеть IPv4.
Режим: «Конфигурирование».
sdwan resources <name> app <text>¶
Синтаксис:
set sdwan resources
<name>app<text>delete sdwan resources
<name>app<text>show sdwan resources
<name>app
Аргументы:
<name>— имя логической группы ресурсов;<text>— имя приложения. Формат: произвольный.
Режим: «Конфигурирование».
sdwan resources <name> location <text>¶
Синтаксис:
set sdwan resources
<name>location<text>delete sdwan resources
<name>location<text>show sdwan resources
<name>location
Аргументы:
<name>— имя логической группы ресурсов;<text>— название местоположения группы ресурсов. Формат: произвольный.
Режим: «Конфигурирование».
sdwan resources <name> max_delay <0.001-1000>¶
Синтаксис:
set sdwan resources
<name>max_delay<0.001-1000>delete sdwan resources
<name>max_delay<0.001-1000>show sdwan resources
<name>max_delay
Аргументы:
<name>— имя логической группы ресурсов;<0.001-1000>— размер задержки. Диапазон значений: от 0.001 до 1000. Формат: миллисекунды.
Режим: «Конфигурирование».
sdwan resources <name> max_jitter <0.001-1000>¶
Синтаксис:
set sdwan resources
<name>max_jitter<0.001-1000>delete sdwan resources
<name>max_jitter<0.001-1000>show sdwan resources
<name>max_jitter
Аргументы:
<name>— имя логической группы ресурсов;<0.001-1000>— размер джиттера. Диапазон значений: от 0.001 до 1000. Формат: миллисекунды.
Режим: «Конфигурирование».
sdwan resources <name> max_lost <0.001-1000>¶
Синтаксис:
set sdwan resources
<name>max_lost<0.001-1000>delete sdwan resources
<name>max_lost<0.001-1000>show sdwan resources
<name>max_lost
Аргументы:
<name>— имя логической группы ресурсов;<0.001-1000>— количество утраченных пакетов. Формат: проценты.
Режим: «Конфигурирование».
sdwan resources <name> port [<port> | <1-65535> | <start-end>]¶
Синтаксис:
set sdwan resources
<name>port[<port> | <1-65535> | <start-end>]delete sdwan resources
<name>port[<port> | <1-65535> | <start-end>]show sdwan resources
<name>port
Аргументы:
<name>— имя логической группы ресурсов;<port>— номер порта;<1-65535>— диапазон портов. Диапазон значений: от 1 до 65535;<start-end>— диапазон портов. Диапазон значений: от 1 до 65535.
Режим: «Конфигурирование».
sdwan topology <name> description <text>¶
Синтаксис:
set sdwan topology
<name>description<text>delete sdwan topology
<name>description<text>show sdwan topology
<name>description
Аргументы:
<name>– имя топологии SD-WAN;<text>– описание топологии SD-WAN.
Режим: «Конфигурирование».
sdwan topology <name> internal-address-range <x.x.x.x/x>¶
Синтаксис:
set sdwan topology
<name>internal-address-range<x.x.x.x/x>delete sdwan topology
<name>internal-address-range<x.x.x.x/x>show sdwan topology
<name>internal-address-range
Аргументы:
<name>– имя топологии SD-WAN;<x.x.x.x/x>– подсеть IPv4 внутри топологии SD-WAN.
Режим: «Конфигурирование».
sdwan topology <name> member <0-4294967295> role [<cpe> | <gw>]¶
Синтаксис:
set sdwan topology
<name>member<0-4294967295>role[<cpe> | <gw>]delete sdwan topology
<name>member<0-4294967295>role[<cpe> | <gw>]show sdwan topology
<name>member<0-4294967295>role
Аргументы:
<name>– имя топологии SD-WAN;<0-4294967295>– идентификатор удаленного узла CPE. Диапазон значений: от 0 до 4294967295.<cpe>— маршрутизатор будет выполнять роль CPE;<gw>— маршрутизатор будет выполнять роль шлюза.
Режим: «Конфигурирование».
sdwan topology <name> type [<full-mesh> | <hub-spoke>]¶
Синтаксис:
set sdwan topology
<name>type[<full-mesh> | <hub-spoke>]delete sdwan topology
<name>type[<full-mesh> | <hub-spoke>]show sdwan topology
<name>type
Аргументы:
<name>– имя топологии SD-WAN.
Режим: «Конфигурирование».
sdwan wan <name> cost <0.001-1000>¶
Синтаксис:
set sdwan wan
<name>cost<0.001-1000>delete sdwan wan
<name>cost<0.001-1000>show sdwan wan
<name>cost
Аргументы:
<name>– имя WAN-канала в сети SD-WAN;<0.001-1000>– стоимость маршрута. Чем ниже стоимость, тем выше приоритет. Диапазон значений: от 0.001 до 1000.
Режим: «Конфигурирование».
sdwan wan <name> description <text>¶
Синтаксис:
set sdwan wan
<name>description<text>delete sdwan wan
<name>description<text>show sdwan wan
<name>description
Аргументы:
<name>– имя WAN-канала в сети SD-WAN;<text>– описание WAN-канала в сети SD-WAN.
Режим: «Конфигурирование».
sdwan wan <name> interface <interface>¶
Синтаксис:
set sdwan wan
<name>interface<interface>delete sdwan wan
<name>interface<interface>show sdwan wan
<name>interface
Аргументы:
<name>– имя WAN-канала в сети SD-WAN;<interface>– имя локального интерфейса.
Режим: «Конфигурирование».
Режим «Администрирование»¶
Примечание
Команды в системном режиме администрирования отображают различную справочную информацию о сети SD-WAN. Когда включена технология SD-WAN, маршрутизатор Факел работает в одном из двух режимов: контроллер или узел CPE. Одни команды доступны только для контроллера или узла CPE, в то время как другие имеют одинаковый синтаксис, но отображают разную информацию в зависимости от режима работы маршрутизатора. Чтобы перевести маршрутизатор Факел в один из режимов работы, используйте команду sdwan mode [<stand-alone> | <remote-node> | <central-controller>].
show sdwan status¶
В режиме контроллера отображает состояние домена: число зарегистрированных узлов CPE, WAN‑каналов, топологий, активных туннелей или ресурсов.
Синтаксис:
show sdwan status
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan connection¶
Синтаксис:
show sdwan connection
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan tunnels¶
В режиме контроллера отображает сводную информацию о состоянии туннелей на всех узлах CPE.
Синтаксис:
show sdwan tunnels
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan routes¶
Синтаксис:
show sdwan routes
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan nodes¶
Синтаксис:
show sdwan nodes
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan node <node> connection¶
Синтаксис:
show sdwan node
<node>connection
Аргументы:
<node>— имя узла CPE.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan node <node> routes¶
Синтаксис:
show sdwan node
<node>routes
Аргументы:
<node>— имя узла CPE.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan node <node> status¶
Синтаксис:
show sdwan node
<node>status
Аргументы:
<node>— имя узла CPE.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan node <node> tunnels¶
Синтаксис:
show sdwan node
<node>tunnels
Аргументы:
<node>— имя узла CPE.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan topology¶
Синтаксис:
show sdwan topology
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan resources¶
Синтаксис:
show sdwan resources
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan tokens¶
Синтаксис:
show sdwan tokens
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show sdwan certificates¶
Синтаксис:
show sdwan certificates
Режим: «Администрирование».
Уровень привилегий: «Администратор».
configure remote-id <text>¶
apply.Примечание
Предварительно необходимо обеспечить связь между контроллером и узлом CPE. Убедитесь, что оба устройства настроены правильно и канал SD-WAN работает исправно. В противном случае контроллер не сможет подключиться к узлу CPE и произвести удаленную настройку. Процесс настройки описан в разделе Ручная настройка SD-WAN.
Синтаксис:
configure remote-id <text>
Аргументы:
<text>— идентификатор узла CPE. Формат: числовой.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
show-cpe-diff¶
configure remote-id <text>.Синтаксис:
show-cpe-diff
Режим: «Администрирование».
Уровень привилегий: «Администратор».
configure template <text>¶
save.Синтаксис:
configure template <text>
Аргументы:
<text>— название шаблона настройки для узла CPE. Формат: произвольный.
Режим: «Администрирование».
Уровень привилегий: «Администратор».
load-template <text>¶
Осторожно
После применения все исходные настройки на узле CPE будут удалены и перезаписаны. Убедитесь, что шаблон содержит все необходимые настройки.
Синтаксис:
load-template
<text>
Аргументы:
<text>— название шаблона настройки для узла CPE. Формат: произвольный.
Режим: «Администрирование».
Уровень привилегий: «Администратор».