- Форум
- /
- IT и телекоммуникации
- /
- Конфигурация сетевого оборудования
- /
- Juniper настройка FBF (PBR), routing-instance type forwarding and virtual-router
Juniper настройка FBF (PBR), routing-instance type forwarding and virtual-router
Rendering Error in layout Widget/Social: Call to a member function exists() on null. Please enable debug mode for more information.
Меньше
Больше
- Сообщений: 50
- Спасибо получено: 15
4 года 11 мес. назад - 4 года 11 мес. назад #250
от PNV
В данной теме описана процедура настройки Filter Based Forwarding (FBF), или как привычнее это звучит в терминологии Cisco - PBR (Policy Based Routing), а также типы routing-instance на оборудовании Juniper: type forwarding и type virtual-router.
Настройка будет осуществляться на коммутаторе Juniper EX-4200.
По ходу описания я буду по возможности сопоставлять термины Juniper c терминами Cisco, для тех кто привык работать с Cisco.
Начнём пожалуй с описания routing-instance type virtual-router.
Данный тип routing-instance в Juniper очень похож на vrf-lite в Cisco. Virtual-router необходим для изоляции таблицы маршрутизации и L3-интерфейсов в конкретной routing-instance от других таблиц и интерфейсов в системе. В данной routing-instance можно описывать различные типы интерфейсов и протоколов маршрутизации, а также под неё создаётся своя отдельная таблица маршрутизации Name_of_routing_instance.inet.0. В ней нет необходимости указания route-distinguisher, vrf-import, and vrf-export, как для VRF, т.к. никакие ID не нужно отправлять за пределы устройства. Т.е. по сути это отдельный виртуальный L3-коммутатор (если рассматривать на примере EX-4200). Таким образом данный тип routing-instance используется например у провайдера для изоляции разных клиентских таблиц маршрутизации между собой, а также например в рамках одной компании для разделения трафика на различные зоны типа DMZ и Intranet и т.п.
Далее пример настройки routing-instances type virtual-router:
Теперь посмотрим таблицу маршрутизации для routing-instance VR-TEST:
Таким образом мы создали routing-instance с отдельными интерфейсами, протоколами маршрутизации и отдельной таблицей маршрутов. Чуть ниже в данной теме будет описание про экспорт и импорт маршрутов из одной таблицы маршрутизации в другую (из одной Instance в другую instance).
Routing-instance type forwarding
- предназначен для Filter Based Forwarding (FBF), т.е. в переводе на Cisco - PBR (Policy Based Routing). Так например, если на оборудование Cisco для создания политик маршрутизации и перенаправления трафика используются route-map и access-list, то на Juniper это делается при помощи routing-instance, rib-group и filter. Также данный тип routing-instance, помимо FBF, используется например для переброски трафика из одной routing-instance в другую. Данный тип routing-instance не содержит в себе описание интерфейсов и протоколов маршрутизации, она нужна лишь для перенаправления трафика по заданным в соответствии с политикой маршрутам. При этом для данной routing-instance создается своя отдельная таблица маршрутизации в которую импортируются маршруты из так называмого primary route table. В качестве primary route table может выступать как глобальная таблица маршрутизации inet.0, так и таблица маршрутизации какого-либо другого routing-instance, например из предыдущего примера VR-TEST.inet.0.
Рассмотрим пример создания routing-instance type forwarding и написания FBF, используя предыдущий пример с routing-instance type virtual-router VR-TEST. Задача: перенаправить трафик с хоста 10.12.22.50 (интерфейс vlan.1322) до сети 10.14.11.0/24 по статическому маршруту через next-hop 10.254.10.18.(как видно из таблицы, сейчас маршрут до сети 10.14.11.0/24 приходит по OSPF через другой next-hop - 10.254.12.42).
И так, создадим для начала routing-instance type forwarding с именем VF и пропишем в ней статический маршрут:
Далее создадим RIB-группу VF, которая будет связывать таблицу маршрутов и интерфейсы primary routing-instance VR-TEST и routing-instance VF, и импортируем в неё direct (connected в терминологии Cisco) маршруты и ospf-маршруты из routing-instance VR-TEST:
С таблицами маршрутизации и routing-instance закончили, теперь собственно создадим само правило, по которому трафик с хоста 10.12.22.50 (с интерфейса vlan.1322) в сеть 10.14.11.0/24 будет идти через 10.254.10.18:
В конце не забываем правило по умолчанию Default для всего остального трафика, который идёт в соответствии с таблицей маршрутизации своего routing-instance.
Применим созданное правило на соответствующий L3-интерфейс:
На этом конфиг готов.
Применяем конфиг и смотрим таблицу маршрутизации для instance VF:
и видим, что в таблице присутствует статический маршрут до сети 10.14.11.0/24.
Также мы видим, что в данной таблице отсутствует статический маршрут, который присутствует в VR-TEST.inet.0:здесь нет ошибки, т.к. мы импортировали из routing-instance VR-TEST в routing-instance VF только direct и OSPF-мршруты.
Настройка будет осуществляться на коммутаторе Juniper EX-4200.
По ходу описания я буду по возможности сопоставлять термины Juniper c терминами Cisco, для тех кто привык работать с Cisco.
Начнём пожалуй с описания routing-instance type virtual-router.
Данный тип routing-instance в Juniper очень похож на vrf-lite в Cisco. Virtual-router необходим для изоляции таблицы маршрутизации и L3-интерфейсов в конкретной routing-instance от других таблиц и интерфейсов в системе. В данной routing-instance можно описывать различные типы интерфейсов и протоколов маршрутизации, а также под неё создаётся своя отдельная таблица маршрутизации Name_of_routing_instance.inet.0. В ней нет необходимости указания route-distinguisher, vrf-import, and vrf-export, как для VRF, т.к. никакие ID не нужно отправлять за пределы устройства. Т.е. по сути это отдельный виртуальный L3-коммутатор (если рассматривать на примере EX-4200). Таким образом данный тип routing-instance используется например у провайдера для изоляции разных клиентских таблиц маршрутизации между собой, а также например в рамках одной компании для разделения трафика на различные зоны типа DMZ и Intranet и т.п.
Далее пример настройки routing-instances type virtual-router:
ВНИМАНИЕ: Спойлер!
user@EX-4200# show routing-instances VR-TEST
instance-type virtual-router;
interface vlan.1031;
interface vlan.1032;
interface vlan.1231;
interface vlan.1322;
routing-options {
static {
route 10.124.95.195/32 next-hop 10.254.10.18;
}
router-id 10.254.12.41;
}
protocols {
ospf {
preference 110;
external-preference 110;
reference-bandwidth 1g;
area 0.0.0.0 {
interface vlan.1032;
interface vlan.1231 {
priority 129;
}
interface vlan.1031;
interface vlan.1322 {
passive;
}
}
}
}
Теперь посмотрим таблицу маршрутизации для routing-instance VR-TEST:
ВНИМАНИЕ: Спойлер!
user@EX-4200# run show route table VR-TEST.inet.0
VR-TEST.inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.14.11.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
10.15.14.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
10.12.20.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
10.12.22.0/24 *[Direct/0] 0w0d 22:25:53
> via vlan.1322
10.124.95.195/32 *[Static/5] 1w0d 19:44:39
> to 10.254.10.18 via vlan.1031
10.254.10.16/30 *[Direct/0] 0w0d 22:25:54
> via vlan.1031
10.254.10.20/30 *[Direct/0] 0w0d 22:25:53
> via vlan.1032
10.254.12.40/29 *[Direct/0] 0w0d 22:25:54
> via vlan.1231
Таким образом мы создали routing-instance с отдельными интерфейсами, протоколами маршрутизации и отдельной таблицей маршрутов. Чуть ниже в данной теме будет описание про экспорт и импорт маршрутов из одной таблицы маршрутизации в другую (из одной Instance в другую instance).
Routing-instance type forwarding
- предназначен для Filter Based Forwarding (FBF), т.е. в переводе на Cisco - PBR (Policy Based Routing). Так например, если на оборудование Cisco для создания политик маршрутизации и перенаправления трафика используются route-map и access-list, то на Juniper это делается при помощи routing-instance, rib-group и filter. Также данный тип routing-instance, помимо FBF, используется например для переброски трафика из одной routing-instance в другую. Данный тип routing-instance не содержит в себе описание интерфейсов и протоколов маршрутизации, она нужна лишь для перенаправления трафика по заданным в соответствии с политикой маршрутам. При этом для данной routing-instance создается своя отдельная таблица маршрутизации в которую импортируются маршруты из так называмого primary route table. В качестве primary route table может выступать как глобальная таблица маршрутизации inet.0, так и таблица маршрутизации какого-либо другого routing-instance, например из предыдущего примера VR-TEST.inet.0.
Рассмотрим пример создания routing-instance type forwarding и написания FBF, используя предыдущий пример с routing-instance type virtual-router VR-TEST. Задача: перенаправить трафик с хоста 10.12.22.50 (интерфейс vlan.1322) до сети 10.14.11.0/24 по статическому маршруту через next-hop 10.254.10.18.
10.14.11.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
И так, создадим для начала routing-instance type forwarding с именем VF и пропишем в ней статический маршрут:
ВНИМАНИЕ: Спойлер!
user@EX-4200# show routing-instances VF
instance-type forwarding;
routing-options {
static {
route 10.14.11.0/24 {
qualified-next-hop 10.254.10.18;
}
}
}
Далее создадим RIB-группу VF, которая будет связывать таблицу маршрутов и интерфейсы primary routing-instance VR-TEST и routing-instance VF, и импортируем в неё direct (connected в терминологии Cisco) маршруты и ospf-маршруты из routing-instance VR-TEST:
ВНИМАНИЕ: Спойлер!
user@EX-4200# show routing-options
rib-groups {
VF {
import-rib [ VR-TEST.inet.0 VF.inet.0 ];
}
}
user@EX-4200# show routing-instances VR-TEST
instance-type virtual-router;
interface vlan.1031;
interface vlan.1032;
interface vlan.1231;
interface vlan.1322;
routing-options {
interface-routes {
rib-group inet VF; #импорт direct-маршрутов;
}
static {
route 10.124.95.195/32 next-hop 10.254.10.18;
}
router-id 10.254.12.41;
}
protocols {
ospf {
rib-group VF; #импорт OSPF-маршрутов;
preference 110;
external-preference 110;
reference-bandwidth 1g;
area 0.0.0.0 {
interface vlan.1032;
interface vlan.1231 {
priority 129;
}
interface vlan.1031;
interface vlan.1322 {
passive;
}
}
}
}
С таблицами маршрутизации и routing-instance закончили, теперь собственно создадим само правило, по которому трафик с хоста 10.12.22.50 (с интерфейса vlan.1322) в сеть 10.14.11.0/24 будет идти через 10.254.10.18:
ВНИМАНИЕ: Спойлер!
user@EX-4200# show firewall family inet filter VLAN1322-Input
term host50 {
from {
source-address {
10.12.22.50/32;
}
destination-address {
10.14.11.0/24;
}
}
then {
routing-instance VF;
}
}
term Default {
then accept;
}
В конце не забываем правило по умолчанию Default для всего остального трафика, который идёт в соответствии с таблицей маршрутизации своего routing-instance.
Применим созданное правило на соответствующий L3-интерфейс:
ВНИМАНИЕ: Спойлер!
user@EX-4200# show interfaces vlan unit 1322
family inet {
filter {
input VLAN1322-Input;
}
address 10.12.22.1/24
}
На этом конфиг готов.
Применяем конфиг и смотрим таблицу маршрутизации для instance VF:
ВНИМАНИЕ: Спойлер!
user@EX-4200# run show route table VF.inet.0
VF.inet.0: 7 destinations, 7 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.14.11.0/24 *[Static/5] 0w0d 6:44:39
> to 10.254.10.18 via vlan.1031
10.15.14.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
10.12.20.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
10.12.22.0/24 *[Direct/0] 0w0d 22:25:53
> via vlan.1322
10.254.10.16/30 *[Direct/0] 0w0d 22:25:54
> via vlan.1031
10.254.10.20/30 *[Direct/0] 0w0d 22:25:53
> via vlan.1032
10.254.12.40/29 *[Direct/0] 0w0d 22:25:54
> via vlan.1231
и видим, что в таблице присутствует статический маршрут до сети 10.14.11.0/24.
Также мы видим, что в данной таблице отсутствует статический маршрут, который присутствует в VR-TEST.inet.0:
user@EX-4200# run show route table VR-TEST.inet.0
VR-TEST.inet.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
10.14.11.0/24 *[OSPF/110] 4d 05:29:47, metric 12
> to 10.254.12.42 via vlan.1231
Последнее редактирование: 4 года 11 мес. назад пользователем PNV.
Пожалуйста Войти , чтобы присоединиться к беседе.
- Вы здесь:
-
Главная
-
Форум
-
IT и телекоммуникации
-
Конфигурация сетевого оборудования
- Juniper настройка FBF (PBR), routing-instance type forwarding and virtual-router