Форум OlegON > Компьютеры и Программное обеспечение > Сеть > Сетевое оборудование > MikroTik

Как подключать подписки BGP в ROS7 : MikroTik

20.04.2024 7:12


22.04.2022 20:55
OlegON
 
Вместе с переходом на ROS7, а я настоятельно рекомендую сейчас это не делать, я практически сразу налетел на необходимость оптимизации многих правил, в том числе перехода на BGP для маршрутизации через VPN. И тут же я споткнулся о то, что синтаксис и сама архитектура запроса изменилась. Поскольку актуальной документации я так и не нашел, решил поделиться тем, что у меня в итоге заработало. По статье на Хабре почему-то поперли ошибки синтаксиса. Пришлось разбирать по каждой опции, куда ее можно было задать.
VPN, соответственно, уже должен быть и работать, речь только о том, чтобы без особых затрат ресурсов туда что-то зарулить.
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 21 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащийся здесь.

Обращаю внимание, что перед всеми действиями лучше убедиться, что дефолтный шлюз установлен с дистанцией в 250, поскольку правила по подписке приезжают с дистанцией 200. Если не поменяете, они тупо не будут работать.
Код:
/ip dhcp-client
add comment=ISP default-route-distance=250
еще обратите внимание, что на всякий случай лучше установить роутинг до адреса сервера VPN через вашего провайдера. В противном случае не исключено, что VPN попадет в список BGP и постоянно будут скачки с включением и обрывом VPN, нагружая рутер.
Создаем таблицу
Код:
/routing table
add fib name=tovpn
создаем подписчика на BGP
Код:
/routing bgp template
set default as=65512 disabled=no hold-time=4m multihop=yes router-id=77.37.184.187 routing-table=main
/routing bgp connection
add as=64512 disabled=no hold-time=4m input.filter=bgp_in keepalive-time=1s local.role=ibgp multihop=yes name=uplink_bgp remote.address=АДРЕС АПЛИНКА/32 \
    router-id=77.37.184.187 routing-table=main
/routing filter rule
add chain=bgp_in disabled=no rule="set gw vpn; accept"
собственно, template можно и не создавать, как видно, но у меня так работает, оставил... В последней строке vpn - это имя интерфейса VPN, поменяйте на свой какой у вас уже есть.

Вот еще вариант, уже по настройке более детального списка
Код:
/routing bgp template
add as=64999 disabled=no name=uplink output.network=bgp-networks .no-client-to-client-reflection=yes router-id=77.37.184.187 routing-table=main

/routing filter rule
add chain=uplink-in disabled=no rule="set gw vpn; accept" 

/routing bgp connection
add connect=yes disabled=no input.filter=uplink-in listen=yes local.address=77.37.184.187 .role=ebgp multihop=yes name=uplink.network output.filter-chain=discard remote.address=АДРЕС АПЛИНКА/32 .as=65444 .port=179 routing-table=main templates=uplink
В помощь для диагностики этого всего две неочевидные команды
Код:
/routing/stats/process/print
/ip/route/print count-only
Часовой пояс GMT +3, время: 07:12.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.