MikroTik Log: mpls,error label allocation limit reached — Решение
Маршрутизатор прекращает выделять метки для новых маршрутов или VPLS сервисов:
mpls,error label allocation limit reachedmpls,error failed to allocate new local MPLS label: table fullmpls,warning out of memory in MPLS forwarding table- Новые префиксы маршрутизации не получают меток и трафик L3VPN/VPLS отбрасывается.
1. Причины переполнения пула меток MPLS
По умолчанию протокол LDP анонсирует метки для всех префиксов, находящихся в таблице маршрутизации (включая connected, static и внешние BGP маршруты). Если в таблице присутствуют десятки тысяч маршрутов, пул меток и память микросхемы коммутации (Switch ASIC) переполняются.
2. Фильтрация анонсирования меток LDP (Advertise Filter)
Ограничьте выделение и рассылку меток только для Loopback-адресов маршрутизаторов инфраструктуры (IP-префиксы /32), исключив пользовательские подсети:
/mpls ldp advertise-filter add prefix=10.255.255.0/24 allocate=yes advertise=yes
/mpls ldp advertise-filter add prefix=0.0.0.0/0 allocate=no advertise=no3. Проверка текущей емкости таблицы меток
Оцените общее количество активных привязок меток:
/mpls local-mappings print count-only
/mpls remote-mappings print count-only4. Очистка неиспользуемых динамических меток
/mpls ldp neighbor refresh [find] Частые вопросы (FAQ)
Какой диапазон меток зарезервирован в MPLS?
Метки с 0 по 15 зарезервированы RFC 3032 (0 — Explicit NULL, 3 — Implicit NULL / PHP, 14 — OAM Alert). Метки от 16 и выше используются для динамического распределения.
Зачем выделять метки только для /32 адресов Loopback?
Для построения туннелей BGP L3VPN и VPLS метки требуются исключительно для достижения BGP Next-Hop (Loopback-интерфейсов). Раздача меток на пользовательские подсети перегружает память маршрутизатора.
Поддерживает ли MikroTik hardware offload для MPLS?
Да, устройства MikroTik на базе чипов Marvell Prestera (серии CRS3xx/CRS5xx) и коммутаторы с RouterOS v7 поддерживают аппаратную обработку меток MPLS HW Offload.
Как сбросить всю базу распределения меток MPLS?
Выполните отключение LDP: /mpls ldp set enabled=no; /delay 2s; /mpls ldp set enabled=yes.