Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
setup_bgp [29.02.2016 10:29] phantom [Оборудование Cisco (IOS XR)] |
setup_bgp [21.09.2022 10:48] (текущий) phantom [Оборудование MikroTik (RouterOS 7.x)] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Вариант "Proxy у оператора" ====== | + | ====== Облачный вариант ====== |
- | BGP сессия может быть как с аутентификацией, так и без. Всегда multihop. Сервис CyberFilter использует автономную систему из приватного диапазона - 64512. В сторону клиента анонсируются префиксы длинной /32. | + | Устанавливается два туннеля - основной и запасной. BGP сессии устанавливаются "на концах" туннелей и могут быть как с аутентификацией, так и без. Сервис CyberFilter использует автономную систему из приватного диапазона - 64512. В сторону клиента анонсируются префиксы длинной /32. Со стороны клиента CyberFilter получает префиксы сетей, абоненты которых будут перенаправляться на фильтрующий сервер (фильтрация по URL). При этом CyberFilter отфильтровывает все префиксы с origin не равным номеру автономной системы клиента. |
- | Со стороны клиента CyberFilter получает префиксы сетей, абоненты которых будут перенаправляться на фильтрующий сервер (proxy). При этом CyberFilter отфильтровывает все префиксы с origin не равны | + | |
- | м номеру автономной системы клиента. | + | |
- | Значение next_hop, для префиксов передаваемых со стороны CyberFilter можно установить в Личном Кабинете (раздел "Настройки"). Обычно next_hop == адресу proxy. | + | Обозначения: |
- | ===== Оборудование Cisco (обычные IOS) ===== | + | local-ip - адрес интерфейса, который смотрит в вашу сеть\\ |
+ | CF-remote-1 - адрес терминации туннеля №1 на стороне CyberFilter\\ | ||
+ | CF-remote-2 - адрес терминации туннеля №2 на стороне CyberFilter\\ | ||
- | <code> | + | asn - номер вашей автономной системы\\ |
- | # Префикс лист со всеми вашими сетями | + | password - пароль на BGP сессии\\ |
- | ip prefix-list CYBERFILTER-OUT seq 5 permit A.B.C.D/X | + | prefix1 - ваш префикс (сеть) №1\\ |
- | ip prefix-list CYBERFILTER-OUT seq 10 permit E.F.G.H/Y | + | prefixN - ваш префикс (сеть) №N\\ |
- | + | ||
- | # настройки BGP | + | |
- | router bgp <<asn>> | + | |
- | neighbor CYBERFILTER peer-group | + | |
- | neighbor CYBERFILTER remote-as 64512 | + | |
- | neighbor CYBERFILTER ebgp-multihop 255 | + | |
- | neighbor CYBERFILTER password <<password>> | + | |
- | neighbor CYBERFILTER update-source Loopback0 | + | |
- | neighbor CYBERFILTER version 4 | + | |
- | neighbor 81.28.177.200 peer-group CYBERFILTER | + | |
- | neighbor CYBERFILTER send-community both | + | |
- | neighbor CYBERFILTER next-hop-self | + | |
- | neighbor CYBERFILTER soft-reconfiguration inbound | + | |
- | neighbor CYBERFILTER prefix-list CYBERFILTER-OUT out | + | |
- | neighbor 81.28.177.200 activate | + | |
- | </code> | + | |
- | + | ||
- | ===== Оборудование Cisco (IOS XR) ===== | + | |
- | + | ||
- | <code> | + | |
- | # Префикс лист со всеми вашими сетями | + | |
- | prefix-set TO-CYBERFILTER | + | |
- | <<prefix1>>, | + | |
- | <<prefixN>> | + | |
- | end-set | + | |
- | + | ||
- | route-policy CEBERFILTER-OUT | + | |
- | if destination in TO-CYBERFILTER then | + | |
- | pass | + | |
- | else | + | |
- | drop | + | |
- | endif | + | |
- | end-policy | + | |
- | + | ||
- | router bgp <<asn>> | + | |
- | address-family ipv4 unicast | + | |
- | ! | + | |
- | neighbor 81.28.177.200 | + | |
- | remote-as 64512 | + | |
- | description CyberFilter | + | |
- | update-source Loopback0 | + | |
- | address-family ipv4 unicast | + | |
- | next-hop-self | + | |
- | soft-reconfiguration inbound | + | |
- | ebgp-multihop 255 | + | |
- | password encrypted <<password>> | + | |
- | send-community-ebgp | + | |
- | route-policy CEBERFILTER-OUT out | + | |
- | </code> | + | |
- | + | ||
- | ====== Облачный вариант ====== | + | |
- | + | ||
- | Устанавливается два туннеля - основной и запасной. BGP сессии устанавливаются "на концах" туннелей и могут быть как с аутентификацией, так и без. Сервис CyberFilter использует автономную систему из приватного диапазона - 64512. В сторону клиента анонсируются префиксы длинной /32. Со стороны клиента CyberFilter получает префиксы сетей, абоненты которых будут перенаправляться на фильтрующий сервер (фильтрация по URL). При этом CyberFilter отфильтровывает все префиксы с origin не равным номеру автономной системы клиента. | + | |
+ | 198.51.100.A - адрес на туннеле №1 со стороны CyberFilter\\ | ||
+ | 198.51.100.B - адрес на туннеле №1 со вашей стороны\\ | ||
+ | 198.51.100.С - адрес на туннеле №2 со стороны CyberFilter\\ | ||
+ | 198.51.100.D - адрес на туннеле №2 со вашей стороны\\ | ||
===== Оборудование Cisco (обычные IOS) ===== | ===== Оборудование Cisco (обычные IOS) ===== | ||
Строка 73: | Строка 24: | ||
<code> | <code> | ||
- | interface TunnelXXX | + | interface Tunnel0 |
description CyberFilter Primary | description CyberFilter Primary | ||
- | ip address 198.51.100.X 255.255.255.252 | + | ip address 198.51.100.B 255.255.255.252 |
tunnel source Loopback0 | tunnel source Loopback0 | ||
- | tunnel destination A.B.C.D | + | tunnel destination <CF-remote-1> |
tunnel mode ipip | tunnel mode ipip | ||
end | end | ||
- | interface TunnelYYY | + | interface Tunnel1 |
description CyberFilter Secondary | description CyberFilter Secondary | ||
- | ip address 198.51.100.X 255.255.255.252 | + | ip address 198.51.100.D 255.255.255.252 |
tunnel source Loopback0 | tunnel source Loopback0 | ||
- | tunnel destination E.F.G.H | + | tunnel destination <CF-remote-2> |
tunnel mode ipip | tunnel mode ipip | ||
end | end | ||
Строка 94: | Строка 45: | ||
<code> | <code> | ||
# Префикс лист со всеми вашими сетями | # Префикс лист со всеми вашими сетями | ||
- | ip prefix-list CYBERFILTER-OUT seq 5 permit I.J.K.L/X | + | ip prefix-list CYBERFILTER-OUT seq 5 permit <prefix1> |
- | ip prefix-list CYBERFILTER-OUT seq 10 permit M.N.O.P/Y | + | ip prefix-list CYBERFILTER-OUT seq 10 permit <prefix2> |
# настройки BGP | # настройки BGP | ||
Строка 103: | Строка 54: | ||
neighbor CYBERFILTER password <<password>> | neighbor CYBERFILTER password <<password>> | ||
neighbor CYBERFILTER version 4 | neighbor CYBERFILTER version 4 | ||
- | neighbor 198.51.100.Y peer-group CYBERFILTER | + | neighbor 198.51.100.A peer-group CYBERFILTER |
- | neighbor 198.51.100.Z peer-group CYBERFILTER | + | neighbor 198.51.100.C peer-group CYBERFILTER |
neighbor CYBERFILTER send-community both | neighbor CYBERFILTER send-community both | ||
neighbor CYBERFILTER next-hop-self | neighbor CYBERFILTER next-hop-self | ||
neighbor CYBERFILTER soft-reconfiguration inbound | neighbor CYBERFILTER soft-reconfiguration inbound | ||
neighbor CYBERFILTER prefix-list CYBERFILTER-OUT out | neighbor CYBERFILTER prefix-list CYBERFILTER-OUT out | ||
- | neighbor 198.51.100.Y activate | + | neighbor 198.51.100.A activate |
- | neighbor 198.51.100.Z activate | + | neighbor 198.51.100.C activate |
</code> | </code> | ||
Строка 118: | Строка 69: | ||
<code> | <code> | ||
- | interface TunnelXXX | + | interface Tunnel0 |
description CyberFilter Primary | description CyberFilter Primary | ||
- | ip address 198.51.100.X 255.255.255.252 | + | ip address 198.51.100.B 255.255.255.252 |
tunnel source Loopback0 | tunnel source Loopback0 | ||
- | tunnel destination A.B.C.D | + | tunnel destination <CF-remote-1> |
tunnel mode ipip | tunnel mode ipip | ||
end | end | ||
- | interface TunnelYYY | + | interface Tunnel1 |
description CyberFilter Secondary | description CyberFilter Secondary | ||
- | ip address 198.51.100.X 255.255.255.252 | + | ip address 198.51.100.D 255.255.255.252 |
tunnel source Loopback0 | tunnel source Loopback0 | ||
- | tunnel destination E.F.G.H | + | tunnel destination <CF-remote-2> |
tunnel mode ipip | tunnel mode ipip | ||
end | end | ||
Строка 170: | Строка 121: | ||
use session-group CF-Group | use session-group CF-Group | ||
! | ! | ||
- | neighbor 198.51.100.Y | + | neighbor 198.51.100.A |
use neighbor-group CF-Neighbors | use neighbor-group CF-Neighbors | ||
- | neighbor 198.51.100.X | + | neighbor 198.51.100.C |
use neighbor-group CF-Neighbors | use neighbor-group CF-Neighbors | ||
</code> | </code> | ||
+ | |||
+ | ===== Оборудование MikroTik (RouterOS 6.x) ===== | ||
+ | |||
+ | Туннели: | ||
+ | |||
+ | <code> | ||
+ | /interface ipip | ||
+ | add local-address=<local-ip> remote-address=<CF-remote-1> name=CF1 | ||
+ | add local-address=<local-ip> remote-address=<CF-remote-2> name=CF2 | ||
+ | |||
+ | /ip address | ||
+ | add address=198.51.100.B netmask=255.255.255.252 interface=CF1 | ||
+ | add address=198.51.100.D netmask=255.255.255.252 interface=CF2 | ||
+ | </code> | ||
+ | |||
+ | BGP: | ||
+ | |||
+ | <code> | ||
+ | |||
+ | # Для каждого префикса желательно создать маршрут blackhole, | ||
+ | # это позволит избежать зацикливания в трейсах из Интернет на ваши сети | ||
+ | /ip route | ||
+ | add dst-address=<prefix1> type=blackhole | ||
+ | add dst-address=<prefixN> type=blackhole | ||
+ | |||
+ | # Фильтр для анонсов в сторону CyberFilter | ||
+ | /routing filter | ||
+ | add chain=CF-Out prefix=<prefix1> action=accept | ||
+ | add chain=CF-Out prefix=<prefixN> action=accept | ||
+ | add chain=CF-Out action=discard | ||
+ | |||
+ | # Настройка непосредственно AS | ||
+ | # MicroTik по умолчанию уже имеет instance с назвнием default - его и настраиваем | ||
+ | /routing bgp instance | ||
+ | set 0 as=<asn> router-id=<local-ip> | ||
+ | |||
+ | # Настройка ваших сетей для анонсов | ||
+ | # Если маршрутов blackhole нет, то нужно добавить опцию synchronize=no | ||
+ | /routing bgp network | ||
+ | add network=<prefix1> | ||
+ | add network=<prefixN> | ||
+ | |||
+ | # Настройка BGP пиров | ||
+ | /routing bgp peer | ||
+ | add instance=default remote-address=198.51.100.A \ | ||
+ | remote-as=64512 tcp-md5-key=<password> out-filter=CF-Out name=CF1 | ||
+ | add instance=default remote-address=198.51.100.C \ | ||
+ | remote-as=64512 tcp-md5-key=<password> out-filter=CF-Out name=CF2 | ||
+ | </code> | ||
+ | |||
+ | ===== Оборудование MikroTik (RouterOS 7.x) ===== | ||
+ | |||
+ | Туннели: | ||
+ | |||
+ | <code> | ||
+ | /interface ipip | ||
+ | add local-address=<local-ip> remote-address=<CF-remote-1> name=CF1 | ||
+ | add local-address=<local-ip> remote-address=<CF-remote-2> name=CF2 | ||
+ | |||
+ | /ip address | ||
+ | add address=198.51.100.B netmask=255.255.255.252 interface=CF1 | ||
+ | add address=198.51.100.D netmask=255.255.255.252 interface=CF2 | ||
+ | </code> | ||
+ | |||
+ | BGP: | ||
+ | |||
+ | <code> | ||
+ | # Настройка address-list с префиксами, которые будут анонсироваться | ||
+ | /ip firewall address-list | ||
+ | add list=CF-Out address=<prefix1> | ||
+ | add list=CF-Out address=<prefixN> | ||
+ | |||
+ | # Настройка blackhole для префиксов, которые будут анонсироваться | ||
+ | /ip route | ||
+ | add dst-address=<prefix1> blackhole | ||
+ | add dst-address=<prefixN> blackhole | ||
+ | |||
+ | # Настройка BGP пиров | ||
+ | /routing bgp connection | ||
+ | add name=CF1 as=<asn> remote.address=198.51.100.A remote.as=64512 output.network=CF-Out\ | ||
+ | tcp-md5-key=<password> local.role=ebgp-peer | ||
+ | add name=CF2 as=<asn> remote.address=198.51.100.C remote.as=64512 output.network=CF-Out\ | ||
+ | tcp-md5-key=<password> local.role=ebgp-peer | ||
+ | </code> | ||
+ | |||
+ | ====== Вариант "Proxy у оператора" ====== | ||
+ | |||
+ | Настройки BGP для варианта "Proxy у оператора" осуществляются аналогично облачному варианту, с небольшими дополнениями, т.к. значение next_hop устанавливается со стороны CyberFilter. | ||
+ | |||
+ | Значение next_hop, для префиксов передаваемых со стороны CyberFilter можно установить в Личном Кабинете (раздел «Настройки»). Обычно next_hop == адресу proxy. | ||
+ | ===== Оборудование Cisco (обычные IOS) ===== | ||
+ | |||
+ | <code> | ||
+ | # настройки BGP | ||
+ | router bgp <<asn>> | ||
+ | neighbor CYBERFILTER ebgp-multihop 2 | ||
+ | </code> | ||
+ | |||
+ | ===== Оборудование Cisco (IOS XR) ===== | ||
+ | |||
+ | <code> | ||
+ | router bgp <<asn>> | ||
+ | remote-as 64512 | ||
+ | ebgp-multihop 2 | ||
+ | </code> | ||
+ | |||
+ | ===== Оборудование MikroTik (RouterOS 6.x)===== | ||
+ | |||
+ | <code> | ||
+ | /routing bgp peer | ||
+ | add instance=default remote-address=198.51.100.A multihop=yes\ | ||
+ | remote-as=64512 tcp-md5-key=<password> out-filter=CF-Out name=CF1 | ||
+ | add instance=default remote-address=198.51.100.C multihop=yes\ | ||
+ | remote-as=64512 tcp-md5-key=<password> out-filter=CF-Out name=CF2 | ||
+ | </code> | ||
+ | |||
+ | ===== Оборудование MikroTik (RouterOS 7.x)===== | ||
+ | |||
+ | <code> | ||
+ | /routing bgp connection | ||
+ | add name=CF1 as=<asn> remote.address=198.51.100.A remote.as=64512 output.network=CF-Out\ | ||
+ | multihop=yes tcp-md5-key=<password> local.role=ebgp-peer | ||
+ | add name=CF2 as=<asn> remote.address=198.51.100.C remote.as=64512 output.network=CF-Out\ | ||
+ | multihop=yes tcp-md5-key=<password> local.role=ebgp-peer | ||
+ | </code> | ||
+ |