Trafficengineering

Es wird wohl Zeit für eine Kategorie »BGP« …

Das Setup beim mit-initiierten Freifunk ist etwas … speziell. Es sollte nun also über Communities dafür gesorgt werden, daß Traffic zu 192.251.226.0/24 möglichst nicht mehr über unser Freifunk-AS reinkommt, sondern über das historische Announcement von AS61157. Ausgangspunkt:

traceroute to web01.4830.org (192.251.226.22), 30 hops max, 60 byte packets
 1  130.255.76.1 (130.255.76.1)  0.801 ms  0.802 ms  0.759 ms
 2  bg1.dus2.de.as29141.net (5.45.181.211)  0.454 ms  0.437 ms  0.412 ms
 3  bg1.ams1.nl.as29141.net (5.45.181.213)  4.273 ms  4.234 ms  4.195 ms
 4  et-0-1-0.core-ams14.as6724.net (80.249.210.180)  4.770 ms  4.952 ms  4.894 ms
 5  110.ae2.bb-rt1-1.e18.r23.rs.ber.de.as6724.net (85.214.2.66)  14.843 ms  14.818 ms  14.745 ms
 6  110.ae14.core-b2.as6724.net (85.214.2.79)  17.028 ms  16.945 ms  16.875 ms
 7  ae3.0.core-b30.as6724.net (85.214.0.67)  15.150 ms  14.999 ms  14.952 ms
 8  bgp-fra01.4830.org (193.26.120.81)  13.467 ms  14.106 ms  14.045 ms
 9  bgp-gut01.4830.org (193.26.120.82)  25.350 ms  24.984 ms  24.964 ms
10  web01.4830.org (192.251.226.22)  25.063 ms  25.312 ms  25.219 ms

Und das trotz ASN-Prepending. Okay, Announcement also gen AS6724 unterbinden. Naja, nice try:

traceroute to web01.4830.org (192.251.226.22), 30 hops max, 60 byte packets
 1  130.255.76.1 (130.255.76.1)  51.918 ms  51.911 ms  51.872 ms
 2  bg1.dus2.de.as29141.net (5.45.181.211)  0.600 ms  0.584 ms  0.561 ms
 3  bg1.ams1.nl.as29141.net (5.45.181.213)  4.184 ms  4.176 ms  4.153 ms
 4  xe-0-1-7-0.cr10.ham01.lwlcom.net (80.249.212.10)  10.055 ms  10.030 ms  10.007 ms
 5  ae0-150.cr20.ham01.lwlcom.net (185.146.230.187)  13.193 ms  13.280 ms  13.154 ms
 6  ae5-100.cr20.bre03.lwlcom.net (185.146.230.119)  13.110 ms  13.143 ms  13.227 ms
 7  ae0-60.cr10.bre04.lwlcom.net (185.146.230.30)  13.111 ms  13.343 ms  13.258 ms
 8  ae5-100.cr10.fra01.lwlcom.net (185.146.230.64)  13.074 ms  13.076 ms  13.017 ms
 9  ae1-100.cr11.fra01.lwlcom.net (185.146.230.63)  12.919 ms  12.990 ms  12.914 ms
10  bgp-fra01.4830.org (193.26.120.81)  12.943 ms  12.918 ms  12.879 ms
11  bgp-gut01.4830.org (193.26.120.82)  24.000 ms  25.207 ms  26.152 ms
12  web01.4830.org (192.251.226.22)  25.990 ms  25.953 ms  24.654 ms

Okay, auch diesem Upstream das Netz nicht mehr schicken:

traceroute to web01.4830.org (192.251.226.22), 30 hops max, 60 byte packets
 1  130.255.76.1 (130.255.76.1)  0.544 ms  0.511 ms  0.465 ms
 2  bg1.dus2.de.as29141.net (5.45.181.211)  0.576 ms  0.554 ms  0.530 ms
 3  bg0.dus3.de.as29141.net (5.45.181.222)  0.925 ms  0.893 ms  0.862 ms
 4  87.128.235.81 (87.128.235.81)  2085.914 ms  2085.835 ms  2085.748 ms
 5  pd9ef3646.dip0.t-ipconnect.de (217.239.54.70)  1.555 ms  1.520 ms  1.559 ms
 6  80.157.201.10 (80.157.201.10)  0.804 ms  0.925 ms  0.891 ms
 7  ae0.cr2.dus6.plusserver.com (213.203.192.10)  2.805 ms  2.374 ms  2.382 ms
 8  ae1.cr1.gut1.plusserver.com (85.119.200.206)  12.865 ms  13.040 ms  12.805 ms
 9  te1-5.xmws-gtso-de11.gut1.plusserver.com (85.119.200.230)  12.704 ms  12.717 ms  12.705 ms
10  web01.4830.org (192.251.226.22)  19.522 ms  19.659 ms  19.943 ms

Fast am Ziel, denn:

traceroute to web01.4830.org (192.251.226.22), 30 hops max, 60 byte packets
 1  gw50-vie.edis.at (37.235.56.1)  17.912 ms  17.484 ms  17.690 ms
 2  cr2-vie.edis.at (37.235.59.77)  31.284 ms  17.780 ms  17.766 ms
 3  ae5-1337.bbr01.anx04.vie.at.anexia-it.net (193.203.0.19)  4.049 ms  4.067 ms  3.999 ms
 4  ae2-0.bbr01.anx82.fra.de.anexia-it.net (144.208.208.150)  45.053 ms  31.327 ms  31.222 ms
 5  ae0-0.bbr02.anx82.fra.de.anexia-it.net (144.208.208.147)  31.314 ms  31.282 ms  31.172 ms
 6  ae1-0.bbr02.anx25.fra.de.anexia-it.net (144.208.208.149)  45.470 ms  44.829 ms  31.493 ms
 7  bgp-fra01.4830.org (193.26.120.81)  17.678 ms  17.585 ms  17.562 ms
 8  bgp-gut01.4830.org (193.26.120.82)  28.689 ms  42.291 ms  28.957 ms
 9  web01.4830.org (192.251.226.22)  42.668 ms  56.008 ms  42.895 ms

*seufz* Okay, also für Upstream AS47147 auch noch ausblenden:

traceroute to web01.4830.org (192.251.226.22), 30 hops max, 60 byte packets
 1  gw50-vie.edis.at (37.235.56.1)  17.488 ms  6.283 ms  17.650 ms
 2  cr2-vie.edis.at (37.235.59.77)  18.069 ms  31.226 ms  17.829 ms
 3  * * *
 4  bgp-fra01.4830.org (193.26.120.81)  17.212 ms  17.363 ms  30.688 ms
 5  bgp-gut01.4830.org (193.26.120.82)  31.813 ms  42.026 ms  32.873 ms
 6  web01.4830.org (192.251.226.22)  56.291 ms  58.552 ms  42.561 ms

Hrmpft. Über welchen Peer kommt das jetzt rein?! Egal, paßt soweit, das Ziel ist erreicht, 192.251.226.0/24 möglicht direkt nach Gütersloh über Plusserver, 193.26.120.0/24 möglichst direkt über die Transits des Freifunk-AS’ zu routen.

FTR, so geht die Route jetzt raus:

192.251.226.0/24   dev br-lan [s_local 12:48:22] * (200)
        Type: static-device unicast univ
        BGP.origin: IGP
        BGP.as_path: 206813 206813
        BGP.next_hop: 666.666.666.666
        BGP.local_pref: 100
        BGP.large_community: (6695, 102, 0) (57555, 0, 8560) (57555, 0, 6724) (57555, 0, 47147) (206813, 2, 0) (206813, 4, 50629)

Erklärbär: (6695, 102, 0) weist die Routeserver am DECIX Frankfurt an, diese Route beim Weitergeben mit »206813 206813« zu verlängern. (57555, 0, <asn>) weist die Routeserver am Community-IX an, diese Route an das benannte ASN nicht weiterzugeben. (206813, 2, 0) weist unsere Router an, beim Weitergeben den Pfad um »206813« zu verlängern (sieht man auch in BGP.as_path: 206813 206813, normalerweise stünde die AS-Nummer nur einmal da). Und mit (206813, 4, 50629) wird diese Route nicht an Verbindungen mit dem AS 50629 weitergegeben. Das Ausblenden scheint teilweise notwendig, da trotz Verlängerung um 1 oder 2 Hops die Pfade zu 206813 kürzer sind als zu 61157 — es war halt nie vorgesehen, den Pfad einer Route um mehr als 2 Hops zu verlängern ;) Über die nächsten Tage wird es also noch etwas Feintunings bedürfen, aber das Hauptziel ist erst einmal erreicht, das Routing der beiden Netze zu optimieren.

Sag' Deine Meinung ;)