Простая топология

Базовый пример по запуску простейшей топологии из двух маршутизаторов с небольшим разбором происходящего.

Соберем ospf между двумя маршрутизаторами. Для этого создадим директорию, и в ней файл topology.yml

---
provider: clab
defaults.device: frr
module: [ ospf ]

nodes: [ r1, r2 ]
links: [ r1, r2, r1-r2 ]

Файл описывает следующее:

  • В качестве оркеcтратора используется containerlab

  • Используется образ устройства frr

  • Используется ospf в качестве динамического протокола маршрутизации

  • Будет создано 2 маршрутизатора r1, r2

  • Будет создано 3 сетевых соединения, по одному stub на каждом маршутизаторе и одно между ними.

После выполнения netlab up произойдет создание следующих файлов:

  • containerlab configuration file

  • Device configuration files mapped into FRRouting containers

  • hosts.yml (Ansible inventory file)

  • host_vars directory (Ansible host variables)

  • group_vars directory (Ansible group variables)

  • ansible.cfg (Ansible configuration file).

После запустятся контейнеры с frr, после чего будет выполнена настройка устройств через Ansible по шаблонам.

Все не указанные обязательные параметры вроде адресного пространства, номеров интерфейсов и т.д. будут назначены по умолчанию.

После того как стенд запустится можно будет напрямую подключаться к устройствам через netlab connect и работать с ними.

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

По умолчанию netlab поддерживает только один запущенный стенд на хостовой машине, однако есть модуль multilab который позволяет запускать несколько стендов.

Последнее обновление