Sonntag, 13. September 2015

MPLS на MikroTik (VPLS)


Имеется стенд из 3-х микротиков и 2-х компьютеров. Компьютеры выполняют функцию клиентских устройств. Микротики 951G.
Схема:
PC1-----PE1---P---RE2-----PC2

Задача: пробросить vlan так чтобы PC1 и PC2 "думали" что они в одном бродкастном домене.
Между устройствами МикроТик должны быть подняты GRE-туннели.

Итак собираем схему, конфигурируем интерфейсы, Loopback-интерфейсы, GRE- туннели.

PE1

/ip address
add address=10.0.0.1/30 interface=ether1 network=10.0.0.0
Добавляем Loopback интерфейс (В микротике Loopback = Bridge):
/interface bridge
add name=Loopback1
Добавляем GRE-tunnel
/interface gre
add local-address=10.0.0.1 name=gre-tunnel1 remote-address=10.0.0.2
Вешаем IP-адреса на GRE-tunnel и Loopback1
/ip address
add address=192.168.0.1/30 interface=gre-tunnel1 network=192.168.0.0
add address=192.168.0.201 interface=Loopback1 network=192.168.0.20

P

Для маршрутизатора P порядок такой же:
/ip address
add address=10.0.0.2/30 interface=ether1 network=10.0.0.0
add address=10.0.0.5/30 interface=ether2 network=10.0.0.4
/interface bridge
add name=Loopback1
/interface greadd local-address=10.0.0.2 name=gre-tunnel1 remote-address=10.0.0.1add local-address=10.0.0.5 name=gre-tunnel2 remote-address=10.0.0.6
/ip addressadd address=192.168.0.2/30 interface=gre-tunnel1 network=192.168.0.0add address=192.168.0.5/30 interface=gre-tunnel2 network=192.168.0.4add address=192.168.0.202 interface=Loopback1 network=192.168.0.202

PE2

/ip address
add address=10.0.0.6/30 interface=ether2 network=10.0.0.4
/interface bridge
add name=Loopback1
/interface greadd local-address=10.0.0.6 name=gre-tunnel2 remote-address=10.0.0.5
/ip addressadd address=192.168.0.6/30 interface=gre-tunnel2 network=192.168.0.4add address=192.168.0.203 interface=Loopback1 network=192.168.0.203
Теперь с маршрутизатора P пробуем пинговать соседние маршрутизаторы:
Сначала сети 10.0.0.0:
Ping 10.0.0.1
Ping 10.0.0.6
Если все ОК, проверяем туннельные каналы:
Ping 192.168.0.1
Ping 192.168.0.6
Если все пинги ходят, можно поднимать OSPF.

OSPF

Снова начинаем с PE1

В качестве Router-ID используем Loopback1:
/routing ospf instance
set [ find default=yes ] router-id=192.168.0.201
Включаем OSPFна интерфейсах:
/routing ospf interface
add interface=gre-tunnel1 network-type=point-to-point
add interface=Loopback1 network-type=broadcast
Анонсиреум сети (в area backbone):
/routing ospf networkadd area=backbone network=192.168.0.0/30add area=backbone network=192.168.0.201/32

P

/routing ospf instance
set [ find default=yes ] router-id=192.168.0.202
/routing ospf interface
add interface=gre-tunnel1 network-type=point-to-point
add interface=gre-tunnel2 network-type=point-to-point
add interface=Loopback1
/routing ospf network
add area=backbone network=192.168.0.0/30
add area=backbone network=192.168.0.4/30
add area=backbone network=192.168.0.202/32

PE2

/routing ospf instance
set [ find default=yes ] metric-bgp=0 metric-other-ospf=0 router-id=192.168.0.203
/routing ospf interface
add interface=gre-tunnel2 network-type=point-to-point
add interface=Loopback1 network-type=broadcast
/routing ospf network
add area=backbone network=192.168.0.4/30
add area=backbone network=192.168.0.203/32
Чтобы проверить правильность работы можно посмотреть маршруты на маршрутизаторе PE2:
ip route print. В выводе команды мы должны увитеть все наши немногочисленные сети:

[admin@MikroTik] > ip route print
Flags: X - disabled, A - active, D - dynamic,
C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,B - blackhole, U - unreachable, P - prohibit
# DST-ADDRESS          PREF-SRC      GATEWAY     DISTANCE
0 ADC 10.0.0.4/30      10.0.0.6      ether2      0
1 ADo 192.168.0.0/30   192.168.0.5               110
2 ADC 192.168.0.4/30   192.168.0.6   gre-tunnel2 0
3 ADo 192.168.0.201/32 192.168.0.5               110
4 ADo 192.168.0.202/32 192.168.0.5               110
5 ADC 192.168.0.203/32 192.168.0.203 Loopback1   0

MPLS & VPLS

Запускаем MPLS, и одновременно на PE-устройствах VPLS.
Virtual Private LAN Service (VPLS) - технология, которая позволяет предоставлять сервис на основе Ethernet, типа multipoint-to-multipoint поверх сетей IP или MPLS. В итоге, все соединенные сайты находятся в одном широковещательном сегменте

PE1

MPLS

Выставляем MTU на MPLS-интерфейсах
/mpls interface
set [ find default=yes ] mpls-mtu=1526
Настройки LDP
/mpls ldp
set enabled=yes lsr-id=192.168.0.201 transport-address=192.168.0.201
Вносим интерфейс в список MPLS LDP интерфейсов
/mpls ldp interface
add interface=gre-tunnel1

Настраиваем VPLS

Настраиваем интерфейс VPLS. Vpls-id - "идентификатор клиента", (как rd у Cisco идентификатор vrf)
/interface vpls
add advertised-l2mtu=1526 disabled=no l2mtu=1526 mac-address=02:FB:63:92:68:03 mtu=1526 name=vpls5 remote-peer=192.168.0.203 vpls-id=1:1
Связываем интерфейс Ethernet5 и настроенный VPLS интерфейс. Наш клиентский PC1 подключен именно к Ethernet5.
/interface bridge
add name=bridge5
/interface bridge port
add bridge=bridge5 interface=ether5
add bridge=bridge5 interface=vpls5

P

На устройстве P никаких настроек касающихся VPLS конечно же нет.
/mpls interface
set [ find default=yes ] mpls-mtu=1526
/mpls ldp
set enabled=yes lsr-id=192.168.0.202 transport-address=192.168.0.202
/mpls ldp interface
add interface=gre-tunnel1
add interface=gre-tunnel2

PE2

/mpls interface
set [ find default=yes ] mpls-mtu=1526
/mpls ldp
set enabled=yes lsr-id=192.168.0.203 transport-address=192.168.0.203
/mpls ldp interface
add interface=gre-tunnel2
/interface vpls
add advertised-l2mtu=1526 disabled=no l2mtu=1526 mac-address=02:6E:22:36:7E:5F mtu=1526 name=vpls5 remote-peer=192.168.0.201 vpls-id=1:1
/interface bridge
add name=bridge5
/interface bridge port
add bridge=bridge5 interface=vpls5
add bridge=bridge5 interface=ether5
На этом настройки закончены. Теперь к портам Ethernet5 PE1 PE2 подключаем клиентские компьютеры PC1 и PC2. Настраиваем на них IP-адреса из одного сетевого сегмента, без шлюзов по умолчанию. Запускаем Ping, все должно пинговаться.

При замере скорости утилитой iperf, скорость достигала 320 Мбит/с, при почти 100% загрузке процессоров всех устройств.

Keine Kommentare:

Kommentar veröffentlichen