Eksperimentet der afslørede en tavs omskrivning

Den 24. juli offentliggjorde to ingeniører fra Cloudflare resultatet af et bevidst støjende eksperiment. Iliana Xygkou og Bryton Herdes annoncerede IPv4- og IPv6-præfikser fra Cloudflares eget netværk, AS13335, hver med en forskellig værdi i et gammelt BGP-felt kaldet ORIGIN. Derefter trak de præfikserne tilbage for at tvinge internettet til at søge efter stier, læste med værktøjet BGPKIT, hvad der kom tilbage via kollektorerne RIPE RIS og RouteViews og Cloudflares egne BMP-feeds, og sammenlignede den sendte værdi med den, resten af verden så.

Værdierne stemte ikke. ORIGIN er en af de ældste attributter i BGP og registrerer, hvordan en rute kom ind i protokollen: IGP, EGP eller INCOMPLETE, i den prioriterede rækkefølge. Omkring 70 procent af de observerede IPv4-stier og 67 procent af IPv6-stierne ankom med ORIGIN nulstillet til IGP, den højest prioriterede værdi. Cirka 10 procent af deres 352 direkte IPv4-peers foretog omskrivningen, med en tilsvarende andel blandt 315 IPv6-peers.

Mekanismen forklarer motivet. ORIGIN bliver brugt i valget af bedste sti, når to ruter står lige på Local Preference og på længden af AS_PATH, og den laveste ORIGIN-værdi vinder. At nulstille den til IGP løfter en sti forbi konkurrenterne uden at røre AS_PATH, altså netop det felt alle holder øje med. I dag bærer 89,8 procent af ruterne IGP, 3,5 procent EGP og 6,7 procent INCOMPLETE, en fordeling der især ser pæn ud, fordi en stor del af den bliver fremstillet undervejs.

Tallene peger på de største netværk

Det interessante er ikke udbredelsen, men koncentrationen. Cloudflare fandt, at 26 procent af de 50 største autonome systemer målt på AS Rank manipulerer ORIGIN, dertil 20 procent af top 100, og at 20,3 procent af alle omskrivende netværk ligger inden for de top 50. Seks af de seksten Tier-1-netværk gør det. De netværk, der bedst kan trække trafik ind på egne stier, er i uforholdsmæssigt høj grad dem, der presser det felt, som afgør de tætte tilfælde.

En enkelt detalje virker kommerciel og ikke tilfældig. Et enkelt Tier-1-netværk omskriver ORIGIN på ruter, det lærer fra peers, mens det bevarer værdien på ruter, det lærer fra kunder. Det er ikke signaturen fra en glemt skabelon på en router: det er en regel, der behandler betalt transittrafik og gratis peeringtrafik forskelligt.

Gevinsten var målbar i selve testen. De omskrivende netværk fik 12 ekstra IPv4-stier gennem sig selv, en stigning på 18 procent, og 33 ekstra IPv6-stier, en stigning på 40 procent. Det er hele pointen: omskrivningen af en enkelt attribut, usynlig for det netværk der satte den, flyttede en betydelig del af de mulige stier over til den, der omskrev.

Cloudflares vurdering er klar. Selskabet fandt ingen gyldig teknisk begrundelse for praksissen og peger på to skader: netværk, der følger RFC'en, stilles ringere end netværk, der ikke gør, og trafik trækkes væk fra alternative udbydere, som ellers havde vundet afgørelsen. Forslaget er helt at fjerne attributtens indflydelse på rutevalget, begyndende med at implementeringer sætter hver modtaget og annonceret rute til IGP.

Her svigter en robusthedspåstand i stilhed

Konsekvensen for driften handler ikke rigtigt om ORIGIN, men om hvad sætningen "vi har flere udbydere" beviser. Flere udbydere giver dig mere end en fysisk vej ud, og den del er reel. Det giver dig ikke kontrol over den vej, trafikken faktisk vender tilbage ad, for de fleste attributter, der udtrykker præference, er kun vejledende, så snart de forlader din grænse. Local Preference er undtagelsen, der betyder noget: du sætter den på dine egne routere, den ligger over ORIGIN i beslutningsrækkefølgen, og den krydser aldrig en eBGP-grænse, og netop derfor er den den eneste præference, ingen anden kan overskrive.

Den skelnen er efterhånden også vigtig på papir. Under NIS2 er netværksrobusthed noget, man dokumenterer og ikke noget, man hævder, og stidiversitet er blandt de nemmeste påstande i et leverandørspørgeskema. Hvis et enkelt centralt netværk kan trække en målbar del af de mulige stier over til sig selv ved at nulstille en attribut, så er en diversitetspåstand bygget på annonceringer, og ikke på kontrakter og Local Preference, en påstand du ikke kan underbygge, når nogen spørger.

Standardiseringens retning bør også afkorte din ventetid. Et IETF-udkast med titlen "Scrubbing BGP ORIGIN Attribute", offentliggjort den 3. november 2025, opdaterer RFC 4271 og RFC 7606, så attributten bliver halvvalgfri og nulstilling til IGP udtrykkeligt tillades. Udkastets egen måling af den default-free zone i september 2025 fandt omkring 9 procent af ruterne med INCOMPLETE og under 1 procent med EGP. Læs retningen ærligt: standardiseringsprocessen bevæger sig mod at legitimere omskrivningen frem for at dæmme op for den, så adfærden bliver ikke rettet på dine vegne.

Tre tjek inden næste transitfornyelse

Stil det spørgsmål, målingen gør det muligt at besvare. For det første: spørg hver transitudbyder skriftligt, hvad den gør med BGP-attributterne på dine annonceringer, og om den behandler ruter lært fra peers og fra kunder forskelligt. For det andet: hold op med at bruge ORIGIN som styresignal nogen steder i din egen politik, for målingen viser, at det ikke overlever de første hop. For det tredje: flyt det reelle udtryk for din præference over på Local Preference ved din egen grænse og på communities, du har fået bekræftet hos udbyderen, og test det derefter i stedet for at antage det.

Sæt derefter en pris på svaret. Transitkontrakter i Europa prissættes normalt i euro per tilsagt Mbit/s, i Storbritannien i pund, og rutebehandling står næsten aldrig i dem. Betaler du et tillæg for en anden eller tredje udbyder netop for at holde stidiversitet, er den diversitet værd at skrive ind i kontrakten som et tilsagn om rutebehandling. En udbyder, der ikke vil sige, hvad den gør med dine attributter, har allerede fortalt dig noget nyttigt om, hvilke stier der faktisk er dine.