, storinka.com.ua
Имеем автономную систему (AS), несколько блоков адресов (PI), три внешних канала различной "толщины", с которыми происходит обмен по BGP.
Необходимо настроить балансировку нагрузки входящего и исходящего трафиков примерно равномерно между всеми каналами, учитывая "толщину трубы" каждого из каналов; необходимо так же настроить автоматическую переброску нагрузки при пропадании одного или нескольких каналов на оставшиеся, – и возврат в прежнее состояние при восстановлении пропадавших каналов.
В качестве роутера BGP используем сервер под управлением Linux с установленным пакетом Quagga.
Весь конфиг рассматривать не будем, – азы по конфигурированию BGP можно изучить в интернете. Затронем только важные по теме статьи вопросы.
Итак. Пишем номер нашей AS и id нашего роутера:
router bgp 12345 bgp router-id 1.1.1.1
Дальше переписываем сети, которые к нам непосредственно подключены, и которые мы жаждем анонсировать в мир:
network 1.1.1.0 mask 255.255.255.0 network 2.2.2.0 mask 255.255.255.0 network 3.3.3.0 mask 255.255.255.0 network 4.4.4.0 mask 255.255.254.0
Теперь описываем наших соседей, с которыми мы строим обмен по BGP:
neighbor 111.111.111.111 remote-as AS1 neighbor 111.111.111.111 description UPLINK_1 neighbor 111.111.111.111 update-source 111.111.111.112 neighbor 111.111.111.111 weight 3000 neighbor 111.111.111.111 route-map prepend_uplink1 out neighbor 111.111.111.111 prefix-list plup1in in
здесь:
update-source 111.111.111.112 – бывает нужно. этим мы указываем, от какого IP соединяться с данным соседом. Если у вас есть свои блоки адресов, то роутер может пойти к соседям от IP из вашей сети, а BGP -обмен с соседом разумнее строить находясь в одной с ним сети (т.е. задействовать IP, выданный вам соседом);