Traffic eng interface mikrotik что это
Manual:MPLS/Traffic-eng
Applies to RouterOS: v3, v4 +
Contents
Summary
Interface
Sub-menu: /mpls traffic-eng interface
Property | Description |
---|---|
remaining-bw (integer[bps]) | Shows currently unallocated bandwidth. |
Tunnel Path
Sub-menu: /mpls traffic-eng tunnel-path
Monitoring TE Status
Path State
Sub-menu: /mpls traffic-eng path-state
Available read only properties:
Property | Description |
---|---|
bandwidth (integer[bps]) | Bandwidth required for the path |
dst (address:integer) | Shows TE path destination address and tunnel ID. |
egress (yes | no) | Shows if router is egress router of the path |
forwarding (yes | no) | Shows if router is forwarding router of the path |
in-interface (string) | Interface on which path message is received. |
in-previous-hop (IP) | Recorded previous hop |
label (integer) | |
locally-originated (yes | no) | Shows if router is ingress router of the path |
out-interface (string) | Interface through which path message is sent out. |
out-label (integer) | |
out-next-hop (IP) | |
path-in-explicit-route ( ) | |
path-in-record-route (List of IPs) | Received recorded routes along the path. |
path-out-explicit-route ( ) | |
path-out-record-route ( ) | List of recorded routes along the path that is sent out to next hop. |
resv-bandwidth (integer[bps]) | bandwidth that TE path is reserving. |
resv-out-record-route ( ) | |
sending-path (yes | no) | Whether path messages are being sent |
sending-resv (yes | no) | Whether resv messages are being sent |
src (Address:ID) | Shows source address and LSP ID number |
Resv State
Sub-menu: /mpls traffic-eng resv-state
MikroTik для Больших Дядей N4
MikroTik для Больших Дядей (Задание 4)
Освежим в памяти схему сети.
Подведём небольшой итог всего того, чего мы добились.
У нас есть топология сети, которая равноправна по всем интерфейсам, кроме интерфейса между маршрутизаторами P-2 и P-5. Данный интерфейс выступает в роли резервного, так как его пропускная способность заведомо меньше.
В данный момент все маршрутизаторы могу связаться с другими маршрутизаторами по их loopback адресам. И лучший маршрут до маршрутизаторов будет выбран с помощью протокола OSPF.
Нет повести печальнее на свете, чем повесть о BGP c MPLS-ом.
о MPLS
Настал тот час, когда мы уже должны каким то образом реализовать нашу сеть.
И конечно MPLS нам здесь поможет сам MPLS это всего лишь процесс маршрутизации пакетов на основании меток. Особое место занимает не процесс маршрутизации, а процесс распространения меток по маршрутизаторам. Все маршрутизаторы в сети должны знать какую метку надо ожидать с интерфейса и в какой интерфейс с какой меткой его необходимо перенаправить.
И для данного кейса в RouterOS есть два варианта, это протокол LDP и протокол Traffic-Engineering.
LDP протокол тупой как танк, его задача найти соседей обменяться с ним сетями и метками и создать таблицу forward. Особенность LDP заключается в том, что он полностью подчиняется маршрутизации. Как таблица маршрутизации решит куда отправлять трафик, туда LDP и будет отправлять трафик с метками. А так как у нас таблицей маршрутизацией заведует протокол OSPF, и часто его схождение требует приличного времени, полагаться на данный способ можно, но. мы пойдём другим путём.
Кто то из вас скажет «но ведь можно изменить Hello интервалы или использовать BFD», да можно, но при этом мы не сможем утилизировать резервный интерфейс. Данные настройки всего лишь могут способствовать уменьшению времени запуска процедуры калькуляции SPF и тем самым уменьшить простой, но не поможет утилизировать все интерфейсы.
А если посмотреть ещё глубже, каждый интерфейс между маршрутизаторами является бизнес активом, который стоит денег, обслуживание, интерфейсы ну и в конце концов Человеко-часы которые затрачены на настройку и подержанные такого стыка. Возможно вы арендуете некоторые интерфейсы. Если деньги потрачены, то нет смысла делать так, чтобы интерфейс простаивал, его необходимо загрузить, но обычной маршрутизацией этого сделать не получиться, так как пропускная способность резервного интерфейса 100Mbps. Если мы направим весь трафик в данный интерфейс то он будет заполнен на 100% и ещё куда-то надо будет деть 900Mbps.
Напоминание. Всегда когда рассчитываете нагрузку на сеть и failover, вы должны использовать подход худшего сценария. Т.е «всё упало», всё загруженно на максимум.
В первую очередь метки, диапазон возможных меток от 0 до 1048575, но притом надо учитывать, что первые 15 меток зарезервированы для специальных условий. Об этом позже.
Нам соответственно необходимо использовать от 16 до 1048575, кстати это два в двадцатой степени, а так как счёт идёт от нуля, то минус один.
Хорошим тоном считается выделить каждому маршрутизатору свой диапазон меток, чтобы вы понимали с какого маршрутизатора прилетела метка.
Я предлагаю выделить каждому маршрутизатору по 5000 меток, такого количества будет достаточно для наших целей. Если оставить как есть значения по умолчанию, то может получиться таким образом, что маршрутизаторов будут использовать одинаковые метки, что становиться не удобно при траблшутинге.
Не будем как-то привязывать к типам маршрутизаторов, а просто по порядку распишем номера меток на нашей схеме, последовательно по 5000 меток.
Для установки диапазона меток из которого будет выбирать маршрутизатор метки можно указать следующей командой.
По умолчанию LDP берёт таблицу маршрутизации и рассказывает всем соседям о всей своей таблице маршрутизации. Это не лучший кейс, лучше всего рассказать только о Loopback адресах.
Но для начало нам необходимо установить уникальный ID маршрутизатора.
Делается это командой
Естественно значение желательно чтобы было ожидаемым и мы для этих целей будем использовать адрес loopback интерфейса.
Далее необходимо установить адрес транспорта, т.е. С какого адреса будет происходить «вещание» поиск соседей и обмен с ними информацией.
Так же как и с lsr-id устанавливаем адрес loopback интерфейса.
Следующим шагом нам необходимо, указать какие сети мы будем опубликовывать c помощью LDP протокола. Наша задача рассказать всем соседям о наших адресах, в том числе connected и loopback и вот тут нам поможет, то что мы правильно спланировали адресацию, и можем описать все адреса одной префиксом 172.31.0.0/16 немного большой, но возможно он нам в дальнейшем еще пригодится.
Делается данная настройка следующим образом:
Следующим шагом настроить фильтр «на входе» какие префиксы мы можем ожидать.
Мы будем принимать только маршруты которые попадают под префиксы наших служебных IP адресов маршрутизаторов.
LDP интерфейсы
Ну последний момент который необходимо сделать, это непосредственно запустить процесс LDP на интерфейсах, которыми связаны между собой маршрутизаторы.
Обращаю ваше внимания ещё раз, указывать надо только те интерфейсы которыми между собой связанны маршрутизаторы.
Включение LDP
После всех манипуляций нам необходимо просто включить LDP и в нашей сети трафик между loopback интерфейсами будет маршрутизироваться на основании меток, т.е. У нас заработает MPLS.
Проверка
Проверить можно простой трассировкой с CE-1 до CE-2 естественно проверяйте именно до адреса loopback.
Обратите внимание, что хоп уже не loopback адрес, а транспортный адрес из 252 сети.
Так же можно посмотреть какие метке для каких маршрутов использует каждый маршрутизатор.
Когда необходимо будут переслать трафик по сети, будут использоваться следующие метки.
Manual:Simple TE
Contents
Summary
This article shows how to simply create traffic engineering tunnels using both dynamic and static tunnel paths.It also shows how to steer traffic over the tunnel.
Network Layout
We will create a network consisting of four routers connected in diamond shape as illustrated in diagram below.
Each router is connected to neighboring router using /30 network and each of them have unique loopback address form 10.255.0.x network. Loopback addresses will be used as tunnel source and destination.
The goal is to interconnect two LAN segments (Lan1, Lan2) using TE tunnels in the way that:
Router Configurations
Connectivity between routers and Loopback addresses
Loopback address reachability and CSPF setup
In this setup we will use OSPF dynamic routing protocol to distribute routing information between routers. To successfully complete the setup we need loopback reachability information on every router.
CSPF will also be configured (extension of OSPF) to carry TE reservation information.
After OSPF is set up verify that we have correct routing information in routing table of each router:
Setting Resource Reservation
Next step is to set up TE resource for every interface on which we might want to run TE tunnel.
Configuration on all the routers are the same:
Since we are not using real bandwidth limitation on the tunnels in this example, bandwidth parameter is only used for administrative purposes and can be any value (it does not represent how much bandwidth will actually flow through the interface).
TE tunnel setup
Since our primary goal is to strictly forward traffic over specific path we will use static path configuration as primary, and dynamic (CSPF) as secondary path if primary fails.
Verify that TE tunnels are working
Notice that running router will show assigned MPLS lables, whole tunnel path and reserved bandwidth. Reserved resources also can be monitored on each router:
Notice that remaining bandwidth on interface decreased. It means that if multiple tunnels are created and whole bandwidth on that particular interface is used, then tunnel will try to look for different path.
Note: TE tunnels are unidirectional, meaning that tunnel may be running in one direction but fail in another direction if whole resources are reserved
Route Traffic over TE
To route LAN traffic over TE tunnel we will assign address 10.99.99.1/30 and 10.99.99.2/30 to each tunnel end.
To verify if traffic is actually going over TE tunnel and is label switched we can run traceroute:
As you can see traceroute recorded MPLS label in the path.
Congratulations our setup works.
Failover Testing
Lets consider that router R4 went down, and whole traffic needs to be switched over R2.
Traffic engineering does not switch paths automatically. If we use dynamic path then path relies on OSPF routing information and is recalculated whenever one of the link fails. In case of static primary paths as in our case, we need to re-optimize the tunnel. It can be done in two ways:
To set up path re-optimization we need to specify interval.
After a while tunnel will switch paths do secondary
By default tunnel will try to switch back to primary path every minute. This setting can be changed with primary-retry-interval parameter.
Note: Switching from primary to secondary path may not be as fast as expected. It depends on OSPF dead timeouts, routing table updates and timeout settings in TE tunnel configuration.
Extended Tunnel for VoIP
Lets consider that in network that we made previously, path through R4 has lower latency which is good for VoIP traffic. Since VOIP server is on LAN2 we will create another TE tunnel from R1 to R3 explicitly for VoIP traffic.
Assuming that previous configuration is up and running, we will start with path definition for VOIP tunnel.
Verify that tunnel is up and running
Notice that we are doing configuration only in one direction, since traffic coming back form the server will use the same tunnel as regular data.
Now it is time to set up routing.
Let’s consider that VoIP server’s IP address is 192.168.20.250. We will also need to set up IP addresses on tunnel ends.
MikroTik RouterOS — Списки интерфейсов «Interface List»
Данная статья будет небольшой и она будет посвящена Спискам интерфейсов в MikroTik RouterOS
Эта статья тесно связана с другой статьей про Firewall: Создание домашней сети на базе устройств MikroTik: Часть 6 – Firewall защита доступа
В ней я постараюсь рассказать, что такое «Списки интерфейсов» и для чего они нужны.
Все действия производились на прошивке 6.42.9 (Long-Term)
Описание на MikroTik WIki: Manual:Interface/List [ENG]
Сами списки интерфейсов в RouterOS V6 (на 10.10.2018) присутствуют довольно давно, тогда они еще были очень простыми.
А сейчас позволяют сильно упростить работу с такими элементами роутера, как Neighbor discovery, Mac Telnet Server, Mac WinBox Server, Firewall, Bridge и Internet Detect
Т.е. вместо того, чтобы постоянно указывать конкретный интерфейс, мы можем указать список, в который могут входить несколько интерфейсов и созданные правила будут применяться не к одному интерфейсу, а сразу к нескольким.
Более того, компания MikroTik перевела такие вещи, как Neighbor discovery, Mac Telnet Server и Mac WinBox Server на работу исключительно со Списками интерфейсов.
Поэтому у нас не остается другого выхода, кроме, как пойти тем же путем.
Давайте взглянем где они и с чем их кушать!
Мне было достаточно добавить для себя три типа интерфейсов:
Internet — Для интерфейсов смотрящих к провайдеру
Local — Внутренние домашние интерфейсы
VPN — VPN соединения
И остается самый важный элемент в котором в основном и используются Interface List-ы — это Firewall
Пример настройки Firewall рассмотрен в отдельной статье обозначенной выше. В ней используются эти Списки для создания правил фильтрации соединений.
Та самая статья еще раз: Создание домашней сети на базе устройств MikroTik: Часть 6 – Firewall защита доступа
3. Динамические интерфейсы и Списки
Большое спасибо, что изучили данную статью, надеюсь она Вам помогла узнать больше!
Всего хорошего на просторах интернета 😉
UPD: 12.03.2019 — Добавлена информация по динамическим интерфейсам VPN
Спасибо одному из читателей за данный вопрос. Добавляю ответ на него в статью 😉
Список всех статей в хронологическом порядке: История статей
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Мир интересен, если вы достаточно любопытны.
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Грегорий, здравствуйте.
Конфига у меня простая,
RB951g-2hnd
1 порт — смотрит в провайдера.
2ой порт — в ТВ приставку.
3ий — локал
4ый — локал
5ый — локал
Бридж к провайдеру — 1 и 2 порты.
Приставка игнорирует локальную сеть и смотрит в провайдера напрямую через Bridge, в котором находятся 1 и 2 порты.
Бридж локал — 3,4,5, влан
Провайдер раздаёт IP через IPOE.
Назначен DHCP клиент…
Попытка добавления ваших правил Firewall-а, основанных на списках интерфейсов (в интернет добавил бридж2провайдер, 1 и 2 ; в локал — 3,4,5,влан), приводит к тому, что IP адрес, со слов провайдера, назначается верному маку, но не фигурирует ни в DHCP клиенте, ни на одном из интерфейсов, и соотв правило NAT, обрабатывающее или из моста в подсеть, или из списка интерфейсов в подсеть — не срабатывает. Неоткуда.
Вопрос. Как мне подружить IPOE с бриджами без статического L2TP с вашей конфигой?…
так же добавлю. что через ipoe получается — статический адрес, потому лист для серого IP нахожу не подходящим как решение вопроса.
Спасибо за ваши статьи, очень помогают!
Хотел задать несколько вопросов:
2) Если эти подсети не доллжны видеть друг друга, то достаточно ли каждой подсети просто присвоить свой отдельный диапазон IP адресов и не заморачиваться с VLAN? Т.е., подсеть №1 — 192.168.1.x/24, подсеть №1 — 192.168.2.x/24
В каком случае есть смысл настраивать VLAN-ы?
Можно ли добавить в лист все динамически созданные интерфейсы CAP точек?
Сергей,
Любой интерфейс, который смотрит в сторону провайдера, будь то физический порт (он же WAN) или это PPPoE соединение, необходимо добавлять в список внешних не доверенных интерфейсов.
У меня это лист «Internet», вы же можете назвать свой как угодно
Добрый день
помогите пожалуйста найти причину
У меня ситуация след.
Есть в сети несколько микротиков
соеденены между собой чере ppp
раньше до определенной прошивки я видел в винбоксе все микротики
теперь никак не могу понять что я не донастраиваю
вижу только один и не могу найти в чем разница
проверил уже все закладки все настройки и никак.
вижу из всех только один
дискавери настроен одинаково как и на том что вижу.
где еще рыть можно?
Здравствуйте, покажите пожалуйста ответы на команды из терминала:
/interface list print
/interface list member print
/ip neighbor discovery-settings print
/tool mac-server print
/tool mac-server mac-winbox print
/ip neighbor discovery-settings print
discover-interface-list: discover
/tool mac-server print
allowed-interface-list: discover
/tool mac-server mac-winbox print
allowed-interface-list: discover
/ip neighbor discovery-settings print
discover-interface-list: discover
/tool mac-server print
allowed-interface-list: discover
/tool mac-server mac-winbox print
allowed-interface-list: discover
Manual:MPLS
Contents
Sub Categories
List of reference sub-pages
Summary
MikroTik RouterOS supports MPLS. All MikroTik RouterBOARD hardware products support MPLS.
General Properties
Property | Description |
---|---|
dynamic-label-range (range of integer[16..1048575]; Default: 16-1048575) | Range of Label numbers used for dynamic allocation. First 16 labels are reserved for special purposes (as defined in RFC). If you intend to configure labels statically then adjust dynamic default range not to include numbers that will be used in static configuration. |
propagate-ttl (yes | no; Default: yes) | Whether to copy TTL values from IP header to MPLS header. If this option is set to no then hops inside MPLS cloud will be invisible from traceroutes. |
Forwarding Table
Sub-menu: /mpls forwarding-table
Entries in this sub-menu shows label bindings for specific routes that will be used in MPLS label switching. Properties in this menu are read-only
Property | Description |
---|---|
bytes (integer) | Total number of packet bytes matched by this entry |
destination (IP/Mask) | Destination prefix for which labels are assigned |
in-label (integer) | Label number for incoming packet |
interface (string) | |
ldp (yes | no) | Whether labels are LDP signaled |
nexthop (IP) | IP address of the nexthop |
out-label (integer) | Label number which is added or switched to for outgoing packet. |
packets (integer) | Number of packets matched by this entry |
traffic-eng (yes | no) | Shows whether entry is signaled by RSVP-TE (Traffic Engineering) |
vpls (yes | no) | Shows whether entry is used for VPLS tunnels. |
For example we have forwarding table as shown below.
You can see that all labels are LDP signaled. Note that for entry #1 there is no out-label, it means that MPLS label switching will not occur, packet will be sent out as regular IP packet. In the other hand entry #2 has in-label and out-label, which means that during packet forwarding label will be switched from 120 to 112.
Interface
Sub-menu: /mpls interface
This menu allows to configure MTUs including MPLS headers that interface can forward without fragmentation.
Note: If Ethernet card does not support Jumbo frames, then MPLS MTU for all interfaces on all devices participating in LSP should be set to 1500
Property | Description |
---|---|
comment (string; Default: ) | Short description of the interface |
disabled (yes | no; Default: no) | If set to yes then this configuration is ignored. |
interface (string | all; Default: all) | Interface name to which apply settings. If set to all then the same config will be used for every interface if there is no specific configuration for the interface. |
mpls-mtu (integer [512..65535]; Default: 1508) | Option represents how big packets can be carried over the interface with added MPLS labels. Read More >> |
In RouterOS by default have entry which sets MS MTU to 1508 for all interfaces.
Local Bindings
Sub-menu: /mpls local-bindings
This sub-menu shows labels bound to the routes locally in the router. In this menu also static bindings can be configured if there is no intention to use any of dynamic protocols (like LDP).
Property | Description |
---|---|
comments (string; Default: ) | Short description of the entry |
disabled (yes | no; Default: no) | |
dst-address (IP/Mask; Default: ) | Destination prefix for which label is assigned |
label (integer[0..1048576] | alert | expl-null | expl-null6 | impl-null | none; Default: ) | Label number assigned to destination. |
Property | Description |
---|---|
adv-path ( ) | |
advertised (yes | no) | Whether binding was advertised to the neigbors |
dynamic (yes | no) | Whether entry was dynamically added |
egress (yes | no) | |
gateway-route (yes | no) | Whether destination is reachable through the gateway. |
local-route (yes | no) | Whether destination is locally reachable on the router |
peers (IP:label_space) | IP address and label space of the peer to which this entry was advertised. |
Remote Bindings
Sub-menu: /mpls remote-bindings
Sub-menu shows label bindings for routes received from other routers. This table is used to build Forwarding Table