BGP Large Community Policy
RegPEX IX (AS199911) tags all accepted routes with BGP Large Communities (RFC 8092) providing location and filtering information to participants.
All RegPEX communities use the BGP Large Community format (RFC 8092): Global Administrator : Function : Parameter
↑ RegPEX IX ASN
Location Communities (Informational)
These communities are added by RegPEX RS to all accepted routes and indicate the physical POP where the announcing member is connected.
| Community | Country | ISO 3166-1 |
|---|---|---|
199911:1002:100 |
Bulgaria | BG / 100 |
199911:1002:276 |
Germany | DE / 276 |
199911:1002:528 |
Netherlands | NL / 528 |
199911:1002:642 |
Romania | RO / 642 |
199911:1002:792 |
Turkey | TR / 792 |
| Community | POP | City | Country | Status |
|---|---|---|---|---|
199911:1003:1 |
ODTU Teknokent
ODTU Teknokent, Çankaya, Ankara
|
Ankara | TR | active |
199911:1003:3 |
ULUS TTN
Turk Telekom Ortak Yerleşim, Ulus, Ankara
|
Ankara | TR | active |
199911:1003:4 |
Telepoint DC
Telepoint Data Center, Sofia, Bulgaria
|
Sofya | BG | active |
199911:1003:5 |
Atakoy TTN
Turk Telekom Ortak Yerleşim, Atakoy, İstanbul
|
İstanbul | TR | active |
199911:1003:6 |
Gayrettepe TTN
Turk Telekom Ortak Yerleşim, Gayrettepe, İstanbul
|
İstanbul | TR | active |
199911:1003:7 |
NXDATA-1 DC
NXDATA-1 Data Center, Bucharest, Romania
|
Bükreş | RO | active |
199911:1003:8 |
Equinix FR5
Equinix FR5, Frankfurt am Main, Germany
|
Frankfurt | DE | planned |
199911:1003:9 |
NIKHEF DC
NIKHEF, Science Park, Amsterdam, Netherlands
|
Amsterdam | NL | active |
199911:1003:10 |
Hatay TTN
Turk Telekom Ortak Yerleşim, Hatay, İzmir
|
İzmir | TR | planned |
199911:1003:11 |
Konak TTN
Turk Telekom Ortak Yerleşim, Konak, İzmir
|
İzmir | TR | planned |
199911:1003:12 |
Kiziltoprak TTN
Turk Telekom Ortak Yerleşim, Kiziltoprak, Antalya
|
Antalya | TR | active |
199911:1003:13 |
NetDirekt DC
NetDirekt Veri Merkezi, İzmir
|
İzmir | TR | planned |
199911:1003:15 |
OLFE Veri Merkezi
|
İzmir | TR | active |
199911:1003:16 |
Equinix IL4
|
İstanbul | TR | active |
199911:1003:17 |
S3C - SOFIA
|
Sofya | BG | active |
| Community | City | Country | POP IDs |
|---|---|---|---|
199911:1004:1 |
Ankara | TR | #1, #3 |
199911:1004:2 |
Istanbul | TR | #5, #6, #16 |
199911:1004:3 |
Izmir | TR | #10, #11, #13, #15 |
199911:1004:4 |
Antalya | TR | #12 |
199911:1004:6 |
Sofia | BG | #4, #17 |
199911:1004:7 |
Bucharest | RO | #7 |
199911:1004:8 |
Frankfurt | DE | #8 |
199911:1004:9 |
Amsterdam | NL | #9 |
Filtering Communities (Informational)
These communities indicate why a route was filtered or accepted. Filtered routes are not propagated to the master table.
| Community | Meaning |
|---|---|
199911:1000:1 | RPKI Valid |
199911:1000:2 | RPKI Unknown |
199911:1000:3 | RPKI Not Checked |
199911:1001:1 | IRRDB Valid |
199911:1001:2 | IRRDB Not Checked |
199911:1101:9 | Filtered: IRRDB prefix not found |
199911:1101:13 | Filtered: RPKI Invalid |
199911:1101:3 | Filtered: Bogon prefix |
199911:1101:1 | Filtered: Prefix too long (>/24) |
199911:1101:16 | Filtered: Unauthorized blackhole (outside your space) |
199911:1001:666 | Info: Blackhole accepted |
Control Communities (member → RS, action)
Members TAG their own announcements to the route servers with these BGP Large Communities to control how the RS propagates the route to other members. <peer-asn> is the target RegPEX member ASN; 0 means all peers. (32-bit ASN → Large Community.)
199911:1:<ASN> alone does NOT mean "announce only to this ASN". The filter runs per peer; peers that don't match the community still receive the route as if nothing changed.
To truly limit your route to a single peer, send BOTH together: 199911:0:0 (block all first) + 199911:1:<desired ASN> (then allow the exception).
| Community | Action |
|---|---|
199911:0:<peer-asn> |
Do NOT announce to that peer (AS) |
199911:0:0 |
Do NOT announce to any peer (use with 1:<asn> for selective) |
199911:1:<peer-asn> |
Allow announcement to that peer (combine with 0:0 to announce ONLY to it) |
199911:1:0 |
Announce to all peers (default) |
| Community | Action |
|---|---|
199911:101:<peer-asn> | Prepend your AS 1× to that peer |
199911:102:<peer-asn> | Prepend 2× |
199911:103:<peer-asn> | Prepend 3× |
199911:101:0 / 102:0 / 103:0 |
Prepend 1× / 2× / 3× to ALL peers |
| Community | Action |
|---|---|
65535:666 (well-known / standard) |
Blackhole this prefix. RegPEX RS accepts a /32 (IPv4) or /128 (IPv6) tagged with 65535:666 ONLY if it is within your announced/IRR space, and propagates it to peers with the BLACKHOLE community so they drop the traffic. |
Example — on YOUR router, tag routes announced to the RegPEX RS so they are NOT sent to AS64500 (replace 64500 with the target member AS). Large Community is mandatory (RegPEX ASN is 32-bit).
# RegPEX RS'e export filtresinde (kendi router'inda)
if net = 203.0.113.0/24 then {
bgp_large_community.add((199911, 0, 64500)); # do NOT announce to AS64500
# bgp_large_community.add((199911, 102, 64500)); # or: prepend 2x toward AS64500
}
/routing/filter/rule add chain=regpex-out rule="append bgp-large-communities 199911:0:64500; accept;" # prepend 2x toward AS64500 instead: # rule="append bgp-large-communities 199911:102:64500; accept;" /routing/bgp/connection set [find name=regpex-rs] output.filter-chain=regpex-out # NOTE: use 'append' (not 'set') so existing communities are preserved.
set policy-options community RPX-NO-64500 members large:199911:0:64500 set policy-options policy-statement regpex-out term tag then community add RPX-NO-64500 set policy-options policy-statement regpex-out term tag then accept set protocols bgp group regpex-rs neighbor 95.133.136.1 export regpex-out # prepend 2x toward AS64500 instead: # set policy-options community RPX-PREP2-64500 members large:199911:102:64500 # NOTE: 'community add' preserves existing communities; large: form is required.
Usage Examples (filtering RECEIVED routes)
>Lower local preference for routes from POP #1 (Ankara ODTU Teknokent):
# Bird2 example — filter by POP
if bgp_large_community ~ [(199911, 1003, 1)] then {
bgp_local_pref = 80; # prefer other paths
}
Lower local preference for all routes from Istanbul (city ID 2, all POPs):
# Bird2 example — filter by city
if bgp_large_community ~ [(199911, 1004, 2)] then {
bgp_local_pref = 80; # prefer other paths
}
Reject all routes from a specific country (e.g. Bulgaria, ISO 3166-1: 100):
# Bird2 example — filter by country
if bgp_large_community ~ [(199911, 1002, 100)] then {
reject;
}