Керування анонсами з допомогою BGP community
============================================
На вході від клієнта для керування анонсами ми приймаємо community у
вигляді 12963:xxxxx, де
12963:x x x x x
| \ / | |
| | | +-- анонсувати чи ні (чи плюс препенди as-path)
| | +---- № каналу на «хто саме»
| +------- «хто саме» (у категорії)
+---------- категорія/напрямок («світ/ІХ/...»)
При цьому поля і їхні значення можуть бути такими:
12963:1000x — на всі зовнішні канали
12963:1010x — (карантин, іґноруємо)
12963:1011x — (карантин, іґноруємо)
12963:1020x — (карантин, іґноруємо)
12963:1021x — (карантин, іґноруємо)
12963:1030x — на всі канали на Fiberax
12963:1031x — на Fiberax (AS3252), Франкфурт (DE)
12963:1032x — на Fiberax (AS3252), Київ (UA)
12963:1040x — на DE-CIX (AS6695)
12963:1050x — (карантин, іґноруємо)
12963:1060x — (карантин, іґноруємо)
12963:1070x — на RETN (AS9002)
12963:1080x — (карантин, іґноруємо)
12963:1090x — на Apple через DECIX (AS714)
12963:1100x — на Amazon через DECIX (AS16509)
12963:1110x — на Hetzner через DECIX (AS24940)
12963:1120x — на PLIX/Equinix (AS24115)
12963:1130x — на Cogent (AS174)
12963:1140x — на GTT (AS3257)
12963:1150x — на Netflix через PLIX/Equinix (AS2906)
12963:1160x — на Akamai через PLIX/Equinix (AS20940)
12963:1170x — на THINX-IX (AS24748)
12963:1180x — на CloudFlare (AS13335) через DE-CIX та PLIX
12963:1181x — на CloudFlare (AS13335) через DE-CIX
12963:1182x — на CloudFlare (AS13335) через PLIX
12963:1190x — на всі канали на Dataline
12963:1191x — на Dataline (AS35297), Київ, Прахових,50 (MXG)
12963:1192x — на Dataline (AS35297), Київ, Куренівська,21 (MXB)
12963:1193x — на Dataline (AS35297), Варшава (LIM)
12963:1200x — на всі піри з Colt (AS8220);
12963:1201x — на Colt (AS8220) через PLIX;
12963:1202x — (карантин, іґноруємо)
12963:1210x - на всі піри з Level3 (AS3356);
12963:1220x - на всі піри з Telegram (AS62041);
12963:1221x - на всі піри з Telegram в DEC-IX (AS62041);
12963:1230x - на всі піри з 1-IX Варшава/Амстердам (AS50263);
12963:1240x - на всі піри з Netia (AS12741);
...
12963:2000x — на всі точки обміну
12963:2010x — на UA-IX (AS15645)
12963:2012x — (карантин, іґноруємо)
12963:2020x — на Giganet-IX (AS59613)
12963:2021x — (карантин, іґноруємо)
12963:2030x — на всі паритетні канали
12963:2031x — (карантин, іґноруємо)
12963:2032x — на паритет із Космонова (AS34867) на Леонтовича, 9
12963:2033x — (карантин, іґноруємо)
12963:2040x — на DTEL-IX (AS31210)
12963:2041x — (карантин, іґноруємо)
12963:2050x — на GOOGLE (AS15169)
12963:2060x — на Facebook (AS32934) через Giganet
12963:2070x — на G-CORE через Giganet (AS199524)
12963:2080x — на GGC (AS11344)
12963:2090x — (карантин, іґноруємо)
12963:2091x — (карантин, іґноруємо)
12963:2092x — на Facebook PNI Київ (AS32934)
12963:2093x — на Facebook PNI Варшава (AS32934)
12963:2094x — на Facebook через Giganet (AS32934)
12963:2100x — (карантин, іґноруємо)
12963:2110x — на всі піри з Microsoft (AS8075)
12963:2111x — на Microsoft PNI Київ (AS8075)
12963:2112x — на Microsoft через PLIX/Equinix Київ (AS8075)
12963:2113x — на Microsoft PNI Варшава (AS8075)
12963:2120x — на всі піри з Hurricane Electric (AS6939)
12963:2121x — на Hurricane Electric (AS6939) через Giganet
12963:2122x — на Hurricane Electric (AS6939) через DTEL-IX
12963:2123x — на Hurricane Electric (AS6939) через UA-IX )
12963:2140x — на CloudFlare (AS13335) через DTEL-IX та Giganet
12963:2141x — на CloudFlare (AS13335) через DTEL-IX
12963:2142x — на CloudFlare (AS13335) через Giganet
12963:2143x — на CloudFlare (AS13335) PNI
12963:2150x — на Megogo PNI Київ (AS204453)
12963:2160x — на 1-IX Київ (AS50263)
...
65535:666 — blackhole community
12963:13 — blackhole community (застаріле, не підтримуємо з 2020.01.01)
де x може мати значення:
0 — не анонсувати,
1 — анонсувати,
5 — додати 12963 4 рази.
*УВАГА*. Якщо ви виставили 12963:20205 (додавати препенди на всіх
каналах на Giganet), ви мусите також вказати, як саме анонсувати на інші
точки обміну, наприклад:
! звичайний анонс на всі точки обміну,
! додавати препенди на всіх каналах на Giganet
set community 12963:20001 12963:20205 [additive]
чи
! звичайни анонс на всі точки обміну,
! але додати препенди на UA-IX на Леонтовича, 9
! і не анонсувати у паритетні канали із Космонова:
set community 12963:20001 12963:20125 12963:20320 [additive]
Якщо ви не використовуєте цей механізм взагалі — ми анонсуємо ваші
мережі у всі канали.
BGP policy routing using community attributes
=============================================
We support BGP communities for BGP policy routing in the following
format:
12963:x x x x x
| \ / | |
| | | +-- do announce? (or how many our ASN to prepend)
| | +---- # of the link to ISP
| +------- # of ISP (in a category)
+---------- category/direction («world/exchange point/etc»)
Where the fields and thier values can be any of:
12963:1000x — to all external routes
12963:1010x — (quarantine, ignoring)
12963:1011x — (quarantine, ignoring)
12963:1020x — (quarantine, ignoring)
12963:1021x — (quarantine, ignoring)
12963:1030x — to all external routes via Fiberax
12963:1031x — to Fiberax (AS3252), Frankfurt (DE)
12963:1032x — to Fiberax (AS3252), Kyiv (UA)
12963:1040x — to DE-CIX (AS6695)
12963:1050x — (quarantine, ignoring)
12963:1060x — (quarantine, ignoring)
12963:1070x — to RETN (AS9002)
12963:1080x — (quarantine, ignoring)
12963:1090x — to Apple via DECIX (AS714)
12963:1100x — to Amazon via DECIX (AS16509)
12963:1110x — to Hetzner via DECIX (AS24940)
12963:1120x — to PLIX/Equinix (AS24115)
12963:1130x — to Cogent (AS174)
12963:1140x — to GTT (AS3257)
12963:1150x — to Netflix via PLIX/Equinix (AS2906)
12963:1160x — to Akamai via PLIX/Equinix (AS20940)
12963:1170x — to THINX-IX (AS24748)
12963:1180x — to CloudFlare (AS13335) via DE-CIX and PLIX
12963:1181x — to CloudFlare (AS13335) via DE-CIX
12963:1182x — to CloudFlare (AS13335) via PLIX
12963:1190x — to all Dataline peers
12963:1191x — to Dataline (AS35297), Kyiv, Prahovyh,50
12963:1192x — to Dataline (AS35297), Kyiv, Kurenivska,21
12963:1193x — to Dataline (AS35297), Warsaw
12963:1200x — to all Colt peers (AS8220);
12963:1201x — to Colt (AS8220) via PLIX;
12963:1202x — (quarantine, ignoring)
12963:1210x - to all Level3 peers (AS3356);
12963:1220x - to all Telegram peers (AS62041);
12963:1221x - to all Telegram peers at DEC-IX (AS62041);
12963:1230x - to all 1-IX peers at Warsaw/Amsterdam (AS50263);
12963:1240x - to all Netia peers (AS12741);
...
12963:2000x — to all exchange points
12963:2010x — to UA-IX (AS15645)
12963:2012x — (quarantine, ignoring)
12963:2020x — to Giganet (AS59613)
12963:2021x — (quarantine, ignoring)
12963:2030x — to all parity/peering links
12963:2031x — (quarantine, ignoring)
12963:2032x — to peering with Cosmonova (AS34867) at Leontovycha, 9
12963:2033x — (quarantine, ignoring)
12963:2040x — to DTEL-IX (AS31210)
12963:2041x — (quarantine, ignoring)
12963:2050x — to GOOGLE (AS15169)
12963:2060x — to Facebook (AS32934) via Giganet
12963:2070x — to G-CORE via Giganet (AS199524)
12963:2080x — to GGC (AS11344)
12963:2090x — (quarantine, ignoring)
12963:2091x — (quarantine, ignoring)
12963:2092x — to Facebook PNI, Kyiv (AS32934)
12963:2093x — to Facebook PNI, Warsaw (AS32934)
12963:2094x — to Facebook via Giganet (AS32934)
12963:2100x — (quarantine, ignoring)
12963:2110x — to all Microsoft peers (AS8075)
12963:2111x — to Microsoft PNI, Kyiv (AS8075)
12963:2112x — to Microsoft via PLIX/Equinix (AS8075)
12963:2113x — to Microsoft PNI, Warsaw (AS8075)
12963:2120x — to all Hurricane Electric peers (AS6939)
12963:2121x — to Hurricane Electric via Giganet (AS6939)
12963:2122x — to Hurricane Electric via DTEL-IX (AS6939)
12963:2123x — to Hurricane Electric via UA-IX (AS6939)
12963:2140x — to CloudFlare via DTEL-IX and Giganet (AS13335)
12963:2141x — to CloudFlare via DTEL-IX (AS13335)
12963:2142x — to CloudFlare via Giganet (AS13335)
12963:2143x — to CloudFlare PNI (AS13335)
12963:2150x — to Megogo PNI (AS204453)
12963:2160x — to 1-IX, Kyiv (AS50263)
...
65535:666 — blackhole community
12963:13 — blackhole community (legacy, will not accept after 2020.01.01)
where x can be any of:
0 — do not announce,
1 — do announce,
5 — prepend 12963 4 times.
*WARNING*. If you set, for instance, 12963:20205 (to add prepends at all
links to Giganet), you need to specify how to announce your prefixes to
other exchange points, too, for example:
! normal announce to all exchange points,
! add prepends at all links to Giganet
set community 12963:20001 12963:20205 [additive]
or
! normal announce to all exchange points,
! add prepends at link to UA-IX at Leontovycha, 9
! and do not announce at peerings with Cosmonova:
set community 12963:20001 12963:20125 12963:20320 [additive]
By default (if you do not use communities at all) we do announce your
prefixes to all uplinks/peers.