Настройка протокола BGP в маршрутизаторах Mikrotik RouterOS

16.09.2021

Настройка протокола BGP в маршрутизаторах Mikrotik RouterOS



Прежде всего, посмотрите видео, там рассмотрен простейший пример без фильтров и каких либо приоритетов между каналами. Есть несколько поправок, best path выбирается не по количеству маршрутизаторов до адреса назначения, а по количеству автономных систем.(по длине AS-PATH.) Так же микротик может работает с подсетями /31

Рассмотрим другой пример настройки BGP

Предположим, что наш номер AS - AS12345, IP-адрес - 192.168.255.25, наш общедоступный диапазон IP-адресов, полученный RIPE или другой подобной организацией, - 109.205.240.0/21.Номер AS нашего пирингового ISP1 - AS11111, его пиринговый IP - 192.168.255.29. В этом примере мы не будем использовать пароль MD5 между одноранговыми узлами. Посмотрите на картинку ниже:
BGP_1.jpg
Configuration of global routing process BGP (Основные настройки)

/routing bgp instance set default as=12345 redistribute-static=no redistribute-connected=no
/routing bgp network add network=109.205.240.0/21 synchronize=no

Setting first BGP peer ISP1

/routing bgp peer add remote-address=192.168.255.29 remote-as=11111 instance=default out-filter=AS11111-bgp-out in-filter=AS11111-bgp-in

Filters BGP-out  – мы разрешаем анонсирование только наших сетей. Если процесс Mikrotik BGP попытается объявить другие маршруты, они будут заблокированы фильтром.

/routing filter add action=accept chain=AS11111-bgp-out prefix=109.205.240.0/21 set-bgp-prepend=3

/routing filter add action=discard chain=AS11111-bgp-out

В нашем примере ISP1 является резервным каналом, тогда мы должны создать специальное правило для фильтра BGP-out. Это правило было создано с помощью функции добавления AS-PATH prepending к BGP, это означает, что мы удлиняем путь к нашей AS, и входящий трафик не будет пересылаться через ISP1 другими интернет-провайдерами. В результате весь входящий трафик будет проходить через ISP2, а ISP1 является резервным на случай, если ISP2 не работает. (речь про:  set-bgp-prepend=3 )


Filters BGP-in  – Мы не хотим принимать «плохие» IP-сети, такие как частные диапазоны и bogons, и мы не хотим получать собственную сеть из Интернета.


/routing filter add action=discard chain=AS11111-bgp-in prefix=10.0.0.0/8
/routing filter add action=discard chain=AS11111-bgp-in prefix=169.254.0.0/16
/routing filter add action=discard chain=AS11111-bgp-in prefix=192.168.0.0/16
/routing filter add action=discard chain=AS11111-bgp-in prefix=172.16.0.0/12
/routing filter add action=discard chain=AS11111-bgp-in prefix=224.0.0.0/4
/routing filter add action=discard chain=AS11111-bgp-in prefix=240.0.0.0/4
/routing filter add action=discard chain=AS11111-bgp-in prefix=127.0.0.0/8
/routing filter add action=discard chain=AS11111-bgp-in prefix=109.205.240.0/21
/routing filter add action=accept chain=AS11111-bgp-in

Теперь на BGP peering with ISP1 должен работать.


Configuration of BGP peering with ISP2
/routing bgp peer add remote-address=10.10.10.101 remote-as=22222 instance=default
out-filter=AS22222-bgp-out in-filter=AS22222-bgp-in

Filter BGP-out  – мы разрешаем анонсирование только наших сетей. Notice that there is no AS-PATH prepending rule, because ISP2 is a main one in our setup.

/routing filter add action=accept chain=AS22222-bgp-out prefix=109.205.240.0/21
/routing filter add action=discard chain=AS22222-bgp-out

Filter BGP-in – it’s similar to BGP-in for ISP1. We don’t accept “wrong” IP networks, such as private ranges and bogons, and we don’t want to receive own network from Internet.

/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=10.0.0.0/8
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=169.254.0.0/16
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=192.168.0.0/16
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=172.16.0.0/12
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=224.0.0.0/4
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=240.0.0.0/4
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no prefix=127.0.0.0/8
/routing filter add action=discard chain=AS22222-bgp-in comment="" disabled=no  prefix=109.205.240.0/21
/routing filter add action=accept chain=AS22222-bgp-in comment="" disabled=no set-bgp-local-pref=200

Последняя инструкция отличается от входящего фильтра BGP для ISP1. Я ставлю Local preference  200 (по умолчанию 100). Для всех полученных маршрутов от ISP2 мы установим атрибут local-preference = 200. Это означает, что весь исходящий трафик будет идти через ISP2. (речь про:  set-bgp-local-pref=200 )

ДОПОЛНИТЕЛЬНЫЕ комментарии не относящиеся к конкретному примеру: 

Advanced routing filters for manipulation traffic:

ISP1 
chain=mtel-bg-out without parameter = High priority
chain=mtel-bg-in set-distance=10 = High priority

ISP1  
chain=mtel-int-out without parameter = High priority
chain=mtel-int-in set-bgp-local-pref=200 = High priority

ISP2  
chain=gcn-out set-bgp-prepend=5 = Medium priority
chain=gcn-in without parameter = Medium priority

ISP3  
chain=thezone-out set-bgp-prepend=10 = Low priority
chain=thezone-in set-bgp-local-pref=80 = Low priority

Monitoring

1.  /routing bgp peer print    - показывает статус всех пиров.
2. /routing bgp peer print status - более расширенная статистика.
3.  /routing bgp advertisements print  <peer_name> - увидеть анонсированные маршруты и маршруты, полученные
4. /ip route print count-only
5.  /ip route print where dst-address=194.145.63.0/24
6. /ip route print detail where dst-address=194.145.63.0/24



[admin@R1] > /routing bgp peer print 
Flags: X - disabled, E - established 
 #   INSTANCE   REMOTE-ADDRESS                             REMOTE-AS  
 0 E itservice  213.226.26.113                             12716      
 1 E itservice  213.226.26.117                             12716      
 2 E itservice  212.70.158.89                              12615      
 3 E itservice  93.155.130.66                              34368

< Назад к списку новостей