Работаю над новым дизайном для нашего WISP. Сейчас у нас около 800 клиентов и примерно 50 вышек. Готовимся заказать 2 Mikrotik CCR1072 для наших основных роутеров и перейти с мостовой сети на MPLS. Наши требования таковы:
- Клиенты получают статический NATed IPv4-адрес или поддержку статического публичного IPv6.
- Возможность создавать туннели для клиентов с несколькими площадками.
- Резервные соединения для магистралей в разных точках входа.
- Резервные поставщики интернета в разных локациях.
Основные 10G-соединения идут из одного места, а ещё есть пара 200M-соединений в других точках. Резервирование нужно на уровне конкретных площадок (вышек). Я хочу запустить iBGP для наших публичных/NATed IP-адресов внутри сети, а на стороне провайдеров использовать eBGP. Планируем провести 2 10G-соединения к нашему шкафу и использовать eBGP для организации отказоустойчивости между CCR1072.
Создал тестовую лабораторию из 4 Mikrotik-роутеров, объединённых в кольцо с помощью MPLS и OSPF. Назначил каждому роутеру уникальный loopback-адрес и /30-сети между роутерами. При разрыве одного из линков переключение занимает от 1 до 30 секунд. Сейчас iBGP не работает в лаборатории — на стадии open sent у каждой пары. Не уверен, где ошибся в настройке. Буду признателен за любую помощь или советы.
Core Router
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=combo1 ] mtu=1526
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface vlan
add interface=combo1 mtu=1526 name=vlan205 vlan-id=205
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.1
/routing ospf instance
set [ find default=yes ] distribute-default=always-as-type-1 mpls-te-area=backbone mpls-te-router-id=Loopback router-id=10.255.0.1
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.1/30 interface=ether1 network=192.168.33.0
add address=192.168.33.14/30 interface=ether2 network=192.168.33.12
add address=10.255.0.1 interface=Loopback network=10.255.0.1
add address=192.168.205.200/24 interface=vlan205 network=192.168.205.0
/ip route
add distance=1 gateway=192.168.205.1
/mpls ldp
set enabled=yes lsr-id=10.255.0.1 transport-address=10.255.0.1
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp peer
add name=Core-R2 remote-address=10.255.0.2 remote-as=100 ttl=default
add name=Core-R3 remote-address=10.255.0.3 remote-as=100 ttl=default
add name=Core-R4 remote-address=10.255.0.4 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.1/32
/system identity
set name=Core
Router 2
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.2
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=Loopback router-id=10.255.0.2
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.2/30 interface=ether1 network=192.168.33.0
add address=192.168.33.5/30 interface=ether2 network=192.168.33.4
add address=10.255.0.2 interface=Loopback network=10.255.0.2
/mpls ldp
set enabled=yes lsr-id=10.255.0.2 transport-address=10.255.0.2
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp peer
add name=R2-Core remote-address=10.255.0.1 remote-as=100 ttl=default
add name=R2-R3 remote-address=10.255.0.3 remote-as=100 ttl=default
add name=R2-R4 remote-address=10.255.0.4 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.2/32
/system identity
set name=R2
Router 3
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.3
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=Loopback redistribute-connected=as-type-1 router-id=10.255.0.3
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.6/30 interface=ether1 network=192.168.33.4
add address=192.168.33.9/30 interface=ether2 network=192.168.33.8
add address=10.255.0.3 interface=Loopback network=10.255.0.3
add address=192.168.10.1/24 interface=ether3 network=192.168.10.0
/mpls ldp
set enabled=yes lsr-id=10.255.0.3 transport-address=10.255.0.3
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp network
add network=192.168.10.0/24
/routing bgp peer
add name=R3-Core remote-address=10.255.0.1 remote-as=100 ttl=default
add name=R3-R2 remote-address=10.255.0.2 remote-as=100 ttl=default
add name=R3-R4 remote-address=10.255.0.4 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.3/32
/system identity
set name=R3
Router 4
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.4
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=Loopback redistribute-connected=as-type-1 router-id=10.255.0.4
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.10/30 interface=ether1 network=192.168.33.8
add address=192.168.33.13/30 interface=ether2 network=192.168.33.12
add address=10.255.0.4 interface=Loopback network=10.255.0.4
/mpls ldp
set enabled=yes lsr-id=10.255.0.4 transport-address=10.255.0.4
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp peer
add name=R4-Core remote-address=10.255.0.1 remote-as=100 ttl=default
add name=R4-R2 remote-address=10.255.0.2 remote-as=100 ttl=default
add name=R4-R3 remote-address=10.255.0.3 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.4/32
/system identity
set name=R4
- Клиенты получают статический NATed IPv4-адрес или поддержку статического публичного IPv6.
- Возможность создавать туннели для клиентов с несколькими площадками.
- Резервные соединения для магистралей в разных точках входа.
- Резервные поставщики интернета в разных локациях.
Основные 10G-соединения идут из одного места, а ещё есть пара 200M-соединений в других точках. Резервирование нужно на уровне конкретных площадок (вышек). Я хочу запустить iBGP для наших публичных/NATed IP-адресов внутри сети, а на стороне провайдеров использовать eBGP. Планируем провести 2 10G-соединения к нашему шкафу и использовать eBGP для организации отказоустойчивости между CCR1072.
Создал тестовую лабораторию из 4 Mikrotik-роутеров, объединённых в кольцо с помощью MPLS и OSPF. Назначил каждому роутеру уникальный loopback-адрес и /30-сети между роутерами. При разрыве одного из линков переключение занимает от 1 до 30 секунд. Сейчас iBGP не работает в лаборатории — на стадии open sent у каждой пары. Не уверен, где ошибся в настройке. Буду признателен за любую помощь или советы.

Core Router
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=combo1 ] mtu=1526
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface vlan
add interface=combo1 mtu=1526 name=vlan205 vlan-id=205
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.1
/routing ospf instance
set [ find default=yes ] distribute-default=always-as-type-1 mpls-te-area=backbone mpls-te-router-id=Loopback router-id=10.255.0.1
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.1/30 interface=ether1 network=192.168.33.0
add address=192.168.33.14/30 interface=ether2 network=192.168.33.12
add address=10.255.0.1 interface=Loopback network=10.255.0.1
add address=192.168.205.200/24 interface=vlan205 network=192.168.205.0
/ip route
add distance=1 gateway=192.168.205.1
/mpls ldp
set enabled=yes lsr-id=10.255.0.1 transport-address=10.255.0.1
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp peer
add name=Core-R2 remote-address=10.255.0.2 remote-as=100 ttl=default
add name=Core-R3 remote-address=10.255.0.3 remote-as=100 ttl=default
add name=Core-R4 remote-address=10.255.0.4 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.1/32
/system identity
set name=Core
Router 2
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.2
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=Loopback router-id=10.255.0.2
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.2/30 interface=ether1 network=192.168.33.0
add address=192.168.33.5/30 interface=ether2 network=192.168.33.4
add address=10.255.0.2 interface=Loopback network=10.255.0.2
/mpls ldp
set enabled=yes lsr-id=10.255.0.2 transport-address=10.255.0.2
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp peer
add name=R2-Core remote-address=10.255.0.1 remote-as=100 ttl=default
add name=R2-R3 remote-address=10.255.0.3 remote-as=100 ttl=default
add name=R2-R4 remote-address=10.255.0.4 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.2/32
/system identity
set name=R2
Router 3
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.3
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=Loopback redistribute-connected=as-type-1 router-id=10.255.0.3
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.6/30 interface=ether1 network=192.168.33.4
add address=192.168.33.9/30 interface=ether2 network=192.168.33.8
add address=10.255.0.3 interface=Loopback network=10.255.0.3
add address=192.168.10.1/24 interface=ether3 network=192.168.10.0
/mpls ldp
set enabled=yes lsr-id=10.255.0.3 transport-address=10.255.0.3
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp network
add network=192.168.10.0/24
/routing bgp peer
add name=R3-Core remote-address=10.255.0.1 remote-as=100 ttl=default
add name=R3-R2 remote-address=10.255.0.2 remote-as=100 ttl=default
add name=R3-R4 remote-address=10.255.0.4 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.3/32
/system identity
set name=R3
Router 4
/interface bridge
add name=Loopback
/interface ethernet
set [ find default-name=ether1 ] l2mtu=1800 mtu=1800
set [ find default-name=ether2 ] l2mtu=1800 mtu=1800
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/routing bgp instance
set default as=100 router-id=10.255.0.4
/routing ospf instance
set [ find default=yes ] mpls-te-area=backbone mpls-te-router-id=Loopback redistribute-connected=as-type-1 router-id=10.255.0.4
/ip neighbor discovery-settings
set discover-interface-list=!dynamic
/ip address
add address=192.168.33.10/30 interface=ether1 network=192.168.33.8
add address=192.168.33.13/30 interface=ether2 network=192.168.33.12
add address=10.255.0.4 interface=Loopback network=10.255.0.4
/mpls ldp
set enabled=yes lsr-id=10.255.0.4 transport-address=10.255.0.4
/mpls ldp interface
add interface=ether1
add interface=ether2
/routing bgp peer
add name=R4-Core remote-address=10.255.0.1 remote-as=100 ttl=default
add name=R4-R2 remote-address=10.255.0.2 remote-as=100 ttl=default
add name=R4-R3 remote-address=10.255.0.3 remote-as=100 ttl=default
/routing ospf interface
add interface=ether1 network-type=broadcast use-bfd=yes
add interface=ether2 network-type=broadcast use-bfd=yes
/routing ospf network
add area=backbone network=192.168.33.0/24
add area=backbone network=10.255.0.4/32
/system identity
set name=R4