- docs/lab/prod/pr01/bird.conf is now the config generated for per-session export control (every eBGP session passes its neighbour AS and location to the shared export function; customer sessions go through the same gate), with the ferrix stanza in its same-host form (::1, multihop). - docs/lab/ripe/lab-objects.rpsl: the inet6num and the 128 route6 objects for the student /48s. Public registry data, no credentials. - Ignore Python bytecode caches. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
1496 lines
37 KiB
Plaintext
1496 lines
37 KiB
Plaintext
router id 193.36.104.1;
|
|
|
|
log stderr { debug, trace, info, remote, warning, error, auth, fatal, bug };
|
|
|
|
filter rayhaan_net_only {
|
|
if (net ~ [2a0d:d740::/29+]) then accept;
|
|
if (net ~ [193.36.104.0/22+]) then accept;
|
|
reject;
|
|
}
|
|
|
|
#
|
|
# Export control for lab routes (the /48s learned from ferrix).
|
|
#
|
|
# Every eBGP session states who it talks to and where: its neighbour AS and
|
|
# one of the locations below. Students steer their prefix with large
|
|
# communities, in this order of precedence:
|
|
#
|
|
# 1. 210036:0:<as> never announce to that neighbour AS
|
|
# 210036:2:<location> never announce at that location
|
|
# 2. 210036:1:<as> announce to that neighbour AS
|
|
# 210036:3:<location> announce at that location
|
|
# 3. 210036:0:0 announce nowhere (unless rule 2 says otherwise)
|
|
# 4. nothing announce everywhere <- default
|
|
#
|
|
# A "never" always wins, so the two dimensions combine: "to Cloudflare, but
|
|
# not at DE-CIX" is 210036:0:0 210036:1:13335 210036:2:4.
|
|
#
|
|
define AT_SWISSIX = 1; # SwissIX
|
|
define AT_NLIX = 2; # NL-ix
|
|
define AT_FRANCEIX = 3; # France-IX
|
|
define AT_DECIX = 4; # DE-CIX Frankfurt
|
|
define AT_FREEIX = 5; # Free-IX Switzerland
|
|
define AT_COMMUNITYIX = 6; # Community-IX.ch
|
|
define AT_TRANSIT = 100; # transit (CommunityRack)
|
|
define AT_DOWNSTREAM = 200; # downstream customers
|
|
|
|
function lab_export_allowed(int peer_as; int location)
|
|
{
|
|
if (210036, 0, peer_as) ~ bgp_large_community then return false;
|
|
if (210036, 2, location) ~ bgp_large_community then return false;
|
|
if (210036, 1, peer_as) ~ bgp_large_community then return true;
|
|
if (210036, 3, location) ~ bgp_large_community then return true;
|
|
if (210036, 0, 0) ~ bgp_large_community then return false;
|
|
return true;
|
|
}
|
|
|
|
# Decides whether a lab route goes out on a session and, if so, makes it
|
|
# presentable: the origin must appear as AS210036 (matching the route6
|
|
# objects) and our action communities must not leak.
|
|
function lab_route_out(int peer_as; int location)
|
|
{
|
|
if !lab_export_allowed(peer_as, location) then return false;
|
|
bgp_path.delete([ 64512..65534, 4200000000..4294967294 ]);
|
|
bgp_large_community.delete([ (210036, 0..3, *) ]);
|
|
return true;
|
|
}
|
|
|
|
protocol kernel kernel4 {
|
|
kernel table 200;
|
|
scan time 120;
|
|
ipv4 {
|
|
import all;
|
|
export all;
|
|
};
|
|
}
|
|
|
|
protocol kernel kernel6 {
|
|
kernel table 200;
|
|
scan time 120;
|
|
ipv6 {
|
|
import all;
|
|
export all;
|
|
};
|
|
}
|
|
|
|
protocol device {
|
|
scan time 10;
|
|
}
|
|
|
|
protocol direct {
|
|
ipv4 {
|
|
import filter rayhaan_net_only;
|
|
};
|
|
ipv6 {
|
|
import filter rayhaan_net_only;
|
|
};
|
|
}
|
|
|
|
function peers_out(int peer_as; int location)
|
|
{
|
|
bgp_med = 0;
|
|
bgp_large_community.add((210036, 10, 2));
|
|
if (net = 193.36.104.0/24) then return true;
|
|
if (net = 2a0d:d740::/48) then return true;
|
|
if (net = 2a0d:d740:105::/48) then return true;
|
|
if proto = "delroth_v6" then return true;
|
|
if proto = "pkern_v6" then return true;
|
|
if proto = "home_v4" then return true;
|
|
if proto = "ferrix" then return lab_route_out(peer_as, location);
|
|
return false;
|
|
}
|
|
|
|
function comrack_out(int peer_as; int location)
|
|
{
|
|
bgp_med = 500;
|
|
bgp_large_community.add((210036, 10, 2));
|
|
if (net = 193.36.104.0/24) then return true;
|
|
if (net = 2a0d:d740::/48) then return true;
|
|
if proto = "benfiedler_v4" then return true;
|
|
if proto = "benfiedler_v6" then return true;
|
|
if proto = "delroth_v6" then return true;
|
|
if proto = "pkern_v6" then return true;
|
|
if proto = "home_v4" then return true;
|
|
if proto = "ferrix" then return lab_route_out(peer_as, location);
|
|
return false;
|
|
}
|
|
|
|
filter peers_in {
|
|
if (net = 0.0.0.0/0) then {
|
|
reject;
|
|
}
|
|
if (net = ::/0) then {
|
|
reject;
|
|
}
|
|
# Don't accept routes from our own ASN.
|
|
if (bgp_path ~ [210036]) then {
|
|
reject;
|
|
}
|
|
accept;
|
|
}
|
|
|
|
|
|
filter drop_peers_from_transits {
|
|
if (bgp_path ~ [15169, 6939]) then {
|
|
reject;
|
|
}
|
|
}
|
|
|
|
# CommunityRack V4
|
|
protocol bgp comrack_v4 {
|
|
description "CommunityRack IPv4 transit";
|
|
local 185.95.219.37 as 210036;
|
|
neighbor 185.95.219.36 as 57118;
|
|
ipv4 {
|
|
export where comrack_out(57118, AT_TRANSIT);
|
|
import filter {
|
|
if (net = 0.0.0.0/0) then {
|
|
reject;
|
|
}
|
|
# Don't accept routes from our own ASN.
|
|
if (bgp_path ~ [210036]) then {
|
|
reject;
|
|
}
|
|
# Don't accept routes from AS15169 over this link,
|
|
# we have multiple other paths via IXes.
|
|
if (bgp_path ~ [15169]) then {
|
|
reject;
|
|
}
|
|
accept;
|
|
};
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# CommunityRack V6
|
|
protocol bgp comrack_v6 {
|
|
description "CommunityRack IPv6 transit";
|
|
local 2a05:fc87:1:12::b as 210036;
|
|
neighbor 2a05:fc87:1:12::a as 57118;
|
|
ipv6 {
|
|
export where comrack_out(57118, AT_TRANSIT);
|
|
import filter {
|
|
if (net = ::/0) then {
|
|
reject;
|
|
}
|
|
# Don't accept routes from our own ASN.
|
|
if (bgp_path ~ [210036]) then {
|
|
reject;
|
|
}
|
|
# Don't accept routes from AS15169 over this link,
|
|
# we have multiple other paths via IXes.
|
|
if (bgp_path ~ [15169]) then {
|
|
reject;
|
|
}
|
|
accept;
|
|
};
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Temporarily disabled until a better route is found.
|
|
#protocol bgp bgptools {
|
|
# description "BGPTools monitoring session";
|
|
# local 2a05:fc87:1:12::b as 210036;
|
|
# neighbor 2a0c:2f07:9459::b14 as 212232;
|
|
# multihop;
|
|
# ipv6 {
|
|
# add paths tx;
|
|
# export filter { accept; };
|
|
# import filter { reject; };
|
|
# };
|
|
# ipv4 {
|
|
# add paths tx;
|
|
# export filter { accept; };
|
|
# import filter { reject; };
|
|
# };
|
|
#}
|
|
|
|
#
|
|
# SwissIX peers
|
|
#
|
|
|
|
# RS1
|
|
protocol bgp swissix_rs1_v4 {
|
|
description "SwissIX RS1 IPv4";
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.252 as 42476;
|
|
default bgp_local_pref 500;
|
|
ipv4 {
|
|
export where peers_out(42476, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
protocol bgp swissix_rs1_v6 {
|
|
description "SwissIX RS1 IPv6";
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::a5ec:a:1 as 42476;
|
|
default bgp_local_pref 500;
|
|
ipv6 {
|
|
export where peers_out(42476, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# RS2
|
|
protocol bgp swissix_rs2_v4 {
|
|
description "swissix rs2 ipv4";
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.53.253 as 42476;
|
|
default bgp_local_pref 500;
|
|
ipv4 {
|
|
export where peers_out(42476, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_rs2_v6 {
|
|
description "swissix rs2 ipv6";
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::a5ec:a:2 as 42476;
|
|
default bgp_local_pref 500;
|
|
ipv6 {
|
|
export where peers_out(42476, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Hurricane
|
|
protocol bgp swissix_he_v4 {
|
|
description "Hurricane Electric @ SwissIX ipv4";
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.170 as 6939;
|
|
ipv4 {
|
|
export where peers_out(6939, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_he_v6 {
|
|
description "Hurricane Electric @ SwissIX ipv6";
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::aa as 6939;
|
|
ipv6 {
|
|
export where peers_out(6939, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Pim
|
|
protocol bgp swissix_pim_8298_v4 {
|
|
description "Pim SwissIX IPv4";
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.53.12 as 8298;
|
|
ipv4 {
|
|
export where peers_out(8298, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_pim_8298_v6 {
|
|
description "Pim SwissIX IPv6";
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::10c as 8298;
|
|
ipv6 {
|
|
export where peers_out(8298, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Andrew
|
|
protocol bgp swissix_andrew_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.243 as 34615;
|
|
ipv4 {
|
|
export where peers_out(34615, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_andrew_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::f3 as 34615;
|
|
ipv6 {
|
|
export where peers_out(34615, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Tobias
|
|
protocol bgp swissix_tobias_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.53.19 as 212495;
|
|
ipv4 {
|
|
export where peers_out(212495, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_tobias_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::113 as 212495;
|
|
ipv6 {
|
|
export where peers_out(212495, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Meerfabrig
|
|
protocol bgp swissix_meerfabrig_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.244 as 34549;
|
|
ipv4 {
|
|
export where peers_out(34549, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_meerfabrig_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::f4 as 34549;
|
|
ipv6 {
|
|
export where peers_out(34549, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Akamai
|
|
protocol bgp swissix_akamai_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.56 as 20940;
|
|
ipv4 {
|
|
export where peers_out(20940, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_akamai_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::38 as 20940;
|
|
ipv6 {
|
|
export where peers_out(20940, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# JMP Technologies
|
|
protocol bgp swissix_jmp_technologies_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.53.18 as 61423;
|
|
ipv4 {
|
|
export where peers_out(61423, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_jmp_technologies_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::112 as 61423;
|
|
ipv6 {
|
|
export where peers_out(61423, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp swissix_google_v4_1 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.74 as 15169;
|
|
ipv4 {
|
|
export where peers_out(15169, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp swissix_google_v6_1 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::4a as 15169;
|
|
ipv6 {
|
|
export where peers_out(15169, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp swissix_google_v4_2 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.223 as 15169;
|
|
ipv4 {
|
|
export where peers_out(15169, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp swissix_google_v6_2 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::df as 15169;
|
|
ipv6 {
|
|
export where peers_out(15169, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# 31173 Services AB
|
|
protocol bgp swissix_31173_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.230 as 39351;
|
|
# Higher local pref for Zurich.
|
|
default bgp_local_pref 200;
|
|
ipv4 {
|
|
export where peers_out(39351, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp swissix_31173_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::e6 as 39351;
|
|
# Higher local pref for Zurich.
|
|
default bgp_local_pref 200;
|
|
ipv6 {
|
|
export where peers_out(39351, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Cloudflare
|
|
protocol bgp swissix_cloudflare_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.52.192 as 13335;
|
|
# Higher local pref for Zurich.
|
|
default bgp_local_pref 200;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp swissix_cloudflare_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::c0 as 13335;
|
|
# Higher local pref for Zurich.
|
|
default bgp_local_pref 200;
|
|
ipv6 {
|
|
export where peers_out(13335, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# i3d
|
|
protocol bgp swissix_i3d_v4 {
|
|
local 91.206.52.201 as 210036;
|
|
neighbor 91.206.53.28 as 49544;
|
|
# Higher local pref for Zurich.
|
|
default bgp_local_pref 200;
|
|
ipv4 {
|
|
export where peers_out(49544, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp swissix_i3d_v6 {
|
|
local 2001:7f8:24::c9 as 210036;
|
|
neighbor 2001:7f8:24::11c as 49544;
|
|
# Higher local pref for Zurich.
|
|
default bgp_local_pref 200;
|
|
ipv6 {
|
|
export where peers_out(49544, AT_SWISSIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
|
|
|
|
#
|
|
# NL-IX
|
|
#
|
|
|
|
# RS1
|
|
protocol bgp nl_ix_rs1_v4 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.116.255 as 34307;
|
|
ipv4 {
|
|
export where peers_out(34307, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_rs1_v6 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a503:4307:1 as 34307;
|
|
ipv6 {
|
|
export where peers_out(34307, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# RS2
|
|
protocol bgp nl_ix_rs2_v4 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.117.0 as 34307;
|
|
ipv4 {
|
|
export where peers_out(34307, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_rs2_v6 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a503:4307:2 as 34307;
|
|
ipv6 {
|
|
export where peers_out(34307, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Apple
|
|
protocol bgp nl_ix_apple_v4_r1 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.117.112 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_apple_v6_r1 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a500:714:1 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp nl_ix_apple_v4_r2 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.117.113 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_apple_v6_r2 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a500:714:2 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
|
|
# Hurricane
|
|
protocol bgp nl_ix_he_v4 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.116.14 as 6939;
|
|
ipv4 {
|
|
export where peers_out(6939, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_he_v6 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a500:6939:1 as 6939;
|
|
ipv6 {
|
|
export where peers_out(6939, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# NL-IX Cloudflare
|
|
protocol bgp nl_ix_cloudflare_1 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a501:3335:1 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
ipv6 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_2 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a501:3335:2 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
ipv6 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_3 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a501:3335:3 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
ipv6 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_4 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a501:3335:4 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_v4_1 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.117.114 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_v4_2 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.118.138 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_v4_3 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.119.101 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp nl_ix_cloudflare_v4_4 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.117.14 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
# 31173 Services AB.
|
|
protocol bgp nl_ix_31173_v4 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.116.34 as 39351;
|
|
ipv4 {
|
|
export where peers_out(39351, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp nl_ix_31173_v6 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a503:9351:1 as 39351;
|
|
ipv6 {
|
|
export where peers_out(39351, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp nl_ix_i3d_v4 {
|
|
local 193.239.117.206 as 210036;
|
|
neighbor 193.239.117.76 as 49544;
|
|
ipv4 {
|
|
export where peers_out(49544, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp nl_ix_i3d_v6 {
|
|
local 2001:7f8:13::a521:36:1 as 210036;
|
|
neighbor 2001:7f8:13::a504:9544:1 as 49544;
|
|
ipv6 {
|
|
export where peers_out(49544, AT_NLIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
#
|
|
# France-IX
|
|
#
|
|
|
|
protocol bgp france_ix_rs1_v4{
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.236.250 as 51706;
|
|
ipv4 {
|
|
export where peers_out(51706, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_rs1_v6 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::250 as 51706;
|
|
ipv6 {
|
|
export where peers_out(51706, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Hurricane
|
|
protocol bgp france_ix_he_v4{
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.236.10 as 6939;
|
|
ipv4 {
|
|
export where peers_out(6939, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_he_v6 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::10 as 6939;
|
|
ipv6 {
|
|
export where peers_out(6939, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Transatel
|
|
protocol bgp france_ix_transatel_v4{
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.236.140 as 198335;
|
|
ipv4 {
|
|
export where peers_out(198335, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_transatel_v6 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::140 as 198335;
|
|
ipv6 {
|
|
export where peers_out(198335, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Apple
|
|
protocol bgp france_ix_apple_v4_r1 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.176 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_apple_v6_r1 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::1:176 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_apple_v4_r2 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.179 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_apple_v6_r2 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::1:179 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_akamai_v4_r1 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.236.168 as 20940;
|
|
ipv4 {
|
|
export where peers_out(20940, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_akamai_v6_r1 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::168 as 20940;
|
|
ipv6 {
|
|
export where peers_out(20940, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_akamai_v4_r2 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.164 as 32787;
|
|
ipv4 {
|
|
export where peers_out(32787, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_akamai_v6_r2 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::1:164 as 32787;
|
|
ipv6 {
|
|
export where peers_out(32787, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_cloudflare_v4_r1 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.49 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_cloudflare_v4_r2 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.238.59 as 13335;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_cloudflare_v6_r1 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::1:49 as 13335;
|
|
ipv6 {
|
|
export where peers_out(13335, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
protocol bgp france_ix_cloudflare_v6_r2 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::2:59 as 13335;
|
|
ipv6 {
|
|
export where peers_out(13335, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_alibaba {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.201 as 45102;
|
|
ipv4 {
|
|
export where peers_out(45102, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
ipv6 {
|
|
export where peers_out(45102, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_i3d_v4 {
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.230 as 49544;
|
|
ipv4 {
|
|
export where peers_out(49544, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp france_ix_i3d_v6_r1 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::1:230 as 49544;
|
|
ipv6 {
|
|
export where peers_out(49544, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# 31173 services AB.
|
|
protocol bgp france_ix_39351_v4{
|
|
local 37.49.238.32 as 210036;
|
|
neighbor 37.49.237.171 as 39351;
|
|
ipv4 {
|
|
export where peers_out(39351, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp france_ix_39351_v6 {
|
|
local 2001:7f8:54::2:32 as 210036;
|
|
neighbor 2001:7f8:54::1:171 as 39351;
|
|
ipv6 {
|
|
export where peers_out(39351, AT_FRANCEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
#
|
|
# DE-CIX
|
|
#
|
|
|
|
protocol bgp de_cix_rs1_v4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.192.157 as 6695;
|
|
default bgp_local_pref 150;
|
|
ipv4 {
|
|
export where peers_out(6695, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_rs1_v6 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::1a27:5051:c09d as 6695;
|
|
default bgp_local_pref 150;
|
|
ipv6 {
|
|
export where peers_out(6695, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_rs2_v4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.193.157 as 6695;
|
|
default bgp_local_pref 150;
|
|
ipv4 {
|
|
export where peers_out(6695, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_rs2_v6 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::1a27:5051:c19d as 6695;
|
|
default bgp_local_pref 150;
|
|
ipv6 {
|
|
export where peers_out(6695, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# Apple
|
|
protocol bgp de_cix_apple_v4_r1 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.193.202 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
protocol bgp de_cix_apple_v6_r1 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::2ca:0:1 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_apple_v4_r2 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.193.223 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_apple_v6_r2 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::2ca:0:2 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_apple_v4_r3 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.194.171 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_apple_v6_r3 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::2ca:0:4 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_apple_v4_r4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.194.161 as 714;
|
|
ipv4 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_apple_v6_r4 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::2ca:0:3 as 714;
|
|
ipv6 {
|
|
export where peers_out(714, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
|
|
protocol bgp de_cix_cprm_v4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.192.38 as 8657;
|
|
ipv4 {
|
|
export where peers_out(8657, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_cprm_v6 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::21d1:0:1 as 8657;
|
|
ipv6 {
|
|
export where peers_out(8657, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_clouflare_v4_1 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.194.180 as 13335;
|
|
default bgp_local_pref 150;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_clouflare_v4_2 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.193.129 as 13335;
|
|
default bgp_local_pref 150;
|
|
ipv4 {
|
|
export where peers_out(13335, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_cloudflare_v6_1 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::3417:0:1 as 13335;
|
|
default bgp_local_pref 150;
|
|
ipv6 {
|
|
export where peers_out(13335, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_cloudflare_v6_2 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::3417:0:2 as 13335;
|
|
default bgp_local_pref 150;
|
|
ipv6 {
|
|
export where peers_out(13335, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_alibaba {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.195.60 as 45102;
|
|
ipv4 {
|
|
export where peers_out(45102, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
ipv6 {
|
|
export where peers_out(45102, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_jmp_technologies_v4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.195.13 as 61423;
|
|
ipv4 {
|
|
export where peers_out(61423, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_jmp_technologies_v6 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::efef:0:1 as 61423;
|
|
ipv6 {
|
|
export where peers_out(61423, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
# 31173 services AB.
|
|
protocol bgp de_cix_31173_v4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.195.179 as 39351;
|
|
ipv4 {
|
|
export where peers_out(39351, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_31173_v6 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::99b7:0:1 as 39351;
|
|
ipv6 {
|
|
export where peers_out(39351, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_alibaba_multi {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.194.33 as 45102;
|
|
ipv4 {
|
|
export where peers_out(45102, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
import limit 100;
|
|
};
|
|
ipv6 {
|
|
export where peers_out(45102, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
import limit 100;
|
|
};
|
|
}
|
|
|
|
protocol bgp de_cix_i3d_v4 {
|
|
local 80.81.196.144 as 210036;
|
|
neighbor 80.81.194.107 as 49544;
|
|
ipv4 {
|
|
export where peers_out(49544, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp de_cix_i3d_v6 {
|
|
local 2001:7f8::3:3474:0:1 as 210036;
|
|
neighbor 2001:7f8::c188:0:1 as 49544;
|
|
ipv6 {
|
|
export where peers_out(49544, AT_DECIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
#
|
|
# FREE-IX
|
|
#
|
|
|
|
protocol bgp free_ix_rs1_v4 {
|
|
local 185.1.205.5 as 210036;
|
|
neighbor 185.1.205.254 as 51530;
|
|
ipv4 {
|
|
export where peers_out(51530, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp free_ix_rs1_v6 {
|
|
local 2001:7f8:111:42:0:3:3474:1 as 210036;
|
|
neighbor 2001:7f8:111:42::c94a:1 as 51530;
|
|
ipv6 {
|
|
export where peers_out(51530, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp free_ix_rs2_v4 {
|
|
local 185.1.205.5 as 210036;
|
|
neighbor 185.1.205.253 as 51530;
|
|
ipv4 {
|
|
export where peers_out(51530, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
protocol bgp free_ix_rs2_v6 {
|
|
local 2001:7f8:111:42:0:3:3474:1 as 210036;
|
|
neighbor 2001:7f8:111:42::c94a:2 as 51530;
|
|
ipv6 {
|
|
export where peers_out(51530, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp free_ix_otg_v4 {
|
|
local 185.1.205.5 as 210036;
|
|
neighbor 185.1.205.12 as 35202;
|
|
ipv4 {
|
|
export where peers_out(35202, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp free_ix_otg_v6 {
|
|
local 2001:7f8:111:42:0:3:3474:1 as 210036;
|
|
neighbor 2001:7f8:111:42::8982:1 as 35202;
|
|
ipv6 {
|
|
export where peers_out(35202, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp free_ix_remote_v4 {
|
|
local 185.1.205.5 as 210036;
|
|
neighbor 185.1.205.7 as 50869;
|
|
ipv4 {
|
|
export where peers_out(50869, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp free_ix_remote_v6 {
|
|
local 2001:7f8:111:42:0:3:3474:1 as 210036;
|
|
neighbor 2001:7f8:111:42::c6b5:1 as 50869;
|
|
ipv6 {
|
|
export where peers_out(50869, AT_FREEIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
#
|
|
# CommunityIX
|
|
#
|
|
|
|
protocol bgp com_ix_otg_v4 {
|
|
local 185.1.105.7 as 210036;
|
|
neighbor 185.1.105.3 as 35202;
|
|
ipv4 {
|
|
export where peers_out(35202, AT_COMMUNITYIX);
|
|
import filter peers_in;
|
|
export limit 10;
|
|
};
|
|
}
|
|
|
|
protocol bgp com_ix_otg_v6 {
|
|
local 2001:7f8:bf:1::7 as 210036;
|
|
neighbor 2001:7f8:bf:1::3 as 35202;
|
|
ipv6 {
|
|
export where peers_out(35202, AT_COMMUNITYIX);
|
|
import filter peers_in;
|
|
export limit 200;
|
|
};
|
|
}
|
|
|
|
protocol bgp delroth_v6 {
|
|
local fd00:2::1 as 210036;
|
|
neighbor fd00:2::2 as 210400;
|
|
# Transit customers get local_pref higher than any other route
|
|
# to ensure we propagate their best routes outwards.
|
|
default bgp_local_pref 1000;
|
|
ipv6 {
|
|
export filter {
|
|
if proto = "ferrix" then {
|
|
if lab_route_out(210400, AT_DOWNSTREAM) then accept;
|
|
reject;
|
|
}
|
|
accept; # Announce all routes to downstream.
|
|
};
|
|
import filter {
|
|
if (net ~ [2a0d:d742:40::/44+]) then {
|
|
accept;
|
|
}
|
|
reject;
|
|
};
|
|
};
|
|
}
|
|
|
|
protocol bgp pkern_v6 {
|
|
local fd00:3::1 as 210036;
|
|
neighbor fd00:3::2 as 210617;
|
|
# Transit customers get local_pref higher than any other route
|
|
# to ensure we propagate their best routes outwards.
|
|
default bgp_local_pref 1000;
|
|
ipv4 {
|
|
extended next hop on;
|
|
export filter {
|
|
accept; # Announce all routes downstream.
|
|
};
|
|
import filter {
|
|
if (net ~ [193.36.107.0/24]) then {
|
|
accept;
|
|
}
|
|
reject;
|
|
};
|
|
};
|
|
ipv6 {
|
|
export filter {
|
|
if proto = "ferrix" then {
|
|
if lab_route_out(210617, AT_DOWNSTREAM) then accept;
|
|
reject;
|
|
}
|
|
accept; # Announce all routes to downstream.
|
|
};
|
|
import filter {
|
|
if (net ~ [2a0e:97c0:5a0::/48, 2a0e:97c0:5a1::/48, 2a0d:d740:107::/48]) then {
|
|
accept;
|
|
}
|
|
reject;
|
|
};
|
|
};
|
|
}
|
|
|
|
protocol bgp home_v6 {
|
|
local 2a0d:d747:100:: as 210036;
|
|
neighbor 2a0d:d747:100::1 as 210036;
|
|
allow local as;
|
|
ipv6 {
|
|
next hop self;
|
|
export filter {
|
|
# Don't advertise stuff from comrack to home.
|
|
if (proto = "comrack_v6") then {
|
|
reject;
|
|
}
|
|
accept;
|
|
};
|
|
import filter {
|
|
if (net ~ [2a0d:d740:105::/48]) then {
|
|
bgp_path.empty;
|
|
accept;
|
|
}
|
|
reject;
|
|
};
|
|
};
|
|
}
|
|
|
|
protocol bgp home_v4 {
|
|
local 10.2.0.2 as 210036;
|
|
neighbor 10.2.0.1 as 210036;
|
|
allow local as;
|
|
direct;
|
|
ipv4 {
|
|
next hop self;
|
|
gateway direct;
|
|
import where net ~ [ 193.36.105.0/24 ];
|
|
export where source = RTS_BGP;
|
|
};
|
|
}
|
|
|
|
define FERRIX_ASN = 4200000001;
|
|
define LAB_PREFIXES = [ 2a0d:d741::/40{48,48} ];
|
|
|
|
filter ferrix_import
|
|
{
|
|
if !(net ~ LAB_PREFIXES) then reject;
|
|
if bgp_path.len > 17 then reject;
|
|
if bgp_path.first != FERRIX_ASN then reject;
|
|
bgp_community.filter([ (65535, 65281), (65535, 65282) ]);
|
|
bgp_large_community.filter([ (42476, *, *), (210036, 0..3, *) ]);
|
|
bgp_ext_community.empty;
|
|
dest = RTD_UNREACHABLE;
|
|
accept;
|
|
}
|
|
|
|
protocol bgp ferrix
|
|
{
|
|
description "ferrix_bgp teaching lab (announce only, same host)";
|
|
local ::1 as 210036;
|
|
neighbor ::1 as FERRIX_ASN;
|
|
# Both ends are this machine, so there is no directly connected
|
|
# neighbour for "direct" (the eBGP default) to find.
|
|
multihop;
|
|
passive on;
|
|
ipv6 {
|
|
import filter ferrix_import;
|
|
import limit 130 action block;
|
|
export none;
|
|
};
|
|
}
|
|
|
|
|