Просмотр Исходного

{color:#ff0000}{*}ЧЕРНОВИК{*}{color}


В Carbon Reductor 8.00.07 появилась возможность настроить BGP RTBH надёжнее и с меньшим числом усилий.

Теперь достаточно описать два шаблона конфигов bgpd и zebra и добавить две строчки в файл.

Вся логика по добавлению/удалению IP адресов уже реализована, команды тоже доступны из коробки.

h1. Собственно как настроить

Все действия происходят внутри контейнера, так что первое:


{code}
chroot /app/reductor/
{code}

h2. Указываем список хуков:

дальше прописываем в файл:


{code}
/cfg/userinfo/hooks/events.sh.hooks
{code}

содержимое:

{code}
/usr/local/Reductor/bin/events.sh.bgp
/usr/local/Reductor/bin/events.sh.zebra
{code}

h2. Затем создаём шаблоны конфигураций zebra и bgpd.

{code}
mkdir -p /cfg/etc/quagga/
touch /cfg/etc/quagga/zebra.conf.tmplt
touch /cfg/etc/quagga/bgpd.conf.tmplt
{code}

h2. Настройка zebra

В файл:

{code}
/cfg/etc/quagga/zebra.conf.tmplt
{code}

Прописываем, указывая свой надёжный пароль и hostname:

{code}
hostname reductor
password password
interface lo
!
@@@BLACKHOLE%%%
!
ip forwarding
!
line vty
!
{code}

h2. Настройка bgpd.

В файл:

{code}
/cfg/etc/quagga/bgpd.conf.tmplt
{code}

прописываем:

* свой hostname
* надёжный пароль:
* router bgp id (на редукторе)
* remote as (на роутере)
* заменяем 10.0.0.1 на IP вашего шлюза
* заменяем 10.0.0.2 на IP Carbon Reductor с которого доступен ваш шлюз
* не трогаем @@@BLACKHOLE%%%, туда будут добавляться IP адреса при рестарте контейнера

{code}
hostname reductor
password password
log file /var/log/quagga/bgpd.log
!
router bgp 65001
bgp router-id 10.0.0.2
redistribute static route-map BLACKHOLE
neighbor 10.0.0.1 remote-as 65002
neighbor 10.0.0.1 description ROUTER
neighbor 10.0.0.1 ebgp-multihop 8
neighbor 10.0.0.1 update-source 10.0.0.2
neighbor 10.0.0.1 soft-reconfiguration inbound
!
@@@BLACKHOLE%%%
!
ip as-path access-list 1 deny .*
!
route-map BLACKHOLE permit 10
description blackhole
match ip address prefix-list BLACKHOLE
set ip next-hop 192.168.255.255
set local-preference 10
set community 65001:666 additive
!
line vty
!
{code}

h2. Настройка роутера

Конфигурация роутеров может отличаться. В качестве примера - Linux с Quagga.

bgpd.conf

{code}
hostname border
password password
log file /var/log/quagga/bgpd.log
!
router bgp 65002
bgp router-id 10.0.0.1
redistribute static route-map BLACKHOLE
neighbor 10.0.0.2 remote-as 65001
neighbor 10.0.0.2 description ROUTER
neighbor 10.0.0.2 ebgp-multihop 8
neighbor 10.0.0.2 update-source 10.0.0.1
neighbor 10.0.0.2 soft-reconfiguration inbound
!
ip as-path access-list 1 deny .*
!
route-map BLACKHOLE permit 10
description blackhole
match ip address prefix-list BLACKHOLE
set ip next-hop 192.168.255.255
set local-preference 10
set community 65002:666 additive
!
line vty
!
{code}

zebra.conf

{code}
hostname border
{code}