Přeskočit na obsah
Tech-Blog Chatujme.cz Chatujme.cz
Internet a sítě

Dvě páteřní sítě mazaly z tras atribut, kterým se v BGP zastavují úniky

Norma RFC 9234 dovoluje směrovači poznat únik trasy bez ručně psaného filtru: stačí razítko Only to Customer, které smí putovat jen k zákazníkům. Měření Cloudflaru ukázalo, že u třetiny cest v IPv4 to razítko cestou zmizí; 96,6 % takových cest vedlo přes GTT nebo Arelion. Obě páteřní sítě odstraňování potvrdily jako obranný zvyk z dob, kdy poškozený atribut shazoval relace.

· aktualizováno 1. 9. 2026 · 173 zhlédnutí

Šasi Juniper s optickými kabely v racku datového centra
Šasi Juniper s optickými moduly v racku datového centra Wikimedie. Junos je jedna z mála platforem, které role podle RFC 9234 umějí. Foto: RobH, Wikimedia Commons (CC BY-SA 3.0)

Cloudflare zveřejnil 18. srpna 2026 měření toho, jak se na internetu ujímá norma RFC 9234. Ta popisuje způsob, jakým si dva sousední směrovače řeknou, v jakém jsou vztahu, a jak podle toho samy poznají trasu, která se dostala tam, kam neměla. Bryton Herdes, Iliana Xygkou a Mingwei Zhang k tomu vypustili do internetu dva testovací prefixy. Při jejich sledování narazili na něco, co nehledali: dvě páteřní sítě z tras mažou právě ten atribut, na kterém celý mechanismus stojí.

Únik trasy je porušená dohoda, ne porucha

Trasy se v BGP šíří podle obchodních vztahů mezi autonomními systémy. Zákazník platí poskytovateli za přístup ke zbytku internetu, dva rovnocenní partneři si provoz vyměňují většinou bez placení. Z toho plyne pravidlo, kterému se říká valley-free: trasu naučenou od poskytovatele nebo od partnera smí síť ohlásit jen svým zákazníkům, nikdy zpátky nahoru. Únik trasy, jak ho definuje RFC 7908, je porušení téhle dohody. Provoz se pak vydá cestou, kterou nikdo nezamýšlel, a leckdy po ní neprojde celý.

Bránit se dalo dosud jen ručně psanými filtry na každé relaci zvlášť. Že to nestačí, ukázala i přehledová práce, o které jsme psali začátkem srpna: úniky tras patří mezi třídy útoků na BGP, proti kterým žádná kryptografická obrana neexistuje.

Role a razítko, které smí jen dolů

RFC 9234 vydali v květnu 2022 Alexander Azimov, Eugene Bogomazov, Randy Bush, Keyur Patel a Kotikalapudi Sriram. Přidává do protokolu dvě věci.

První je schopnost BGP Role, zapsaná v rejstříku IANA pod kódem 9. Sousedé si ji vymění při navazování relace a každý v ní řekne, čím je tomu druhému: poskytovatel, zákazník, partner, route server, nebo klient route serveru. Platných dvojic je pět, a když se sousedé neshodnou, relace vůbec nenaběhne – směrovač ji odmítne oznámením Role Mismatch s kódem 2 a podkódem 11. Nedorozumění o tom, kdo je komu kým, tak vyjde najevo hned, ne za rok jako incident.

Druhá je atribut Only to Customer, zkráceně OTC, typ 35. Nese jediné číslo autonomního systému, a to toho, kdo trasu poprvé poslal do strany nebo dolů. Od té chvíle smí trasa putovat už jen k zákazníkům. Trasa s OTC přicházející od zákazníka je podle normy únik a směrovač ji zahodí sám, bez jediného řádku ručního filtru.

Kolik sítí to má opravdu zapnuté

Změřit nasazení je těžší, než by se čekalo. Norma totiž nechává atribut doplnit i příjemce: kdo dostane trasu od poskytovatele, partnera nebo route serveru bez OTC, musí ho dosadit sám. Z hotové trasy pak nejde poznat, kdo razítko přitiskl.

Cloudflare to zkusil dvěma cestami. Ve veřejných sběrných bodech RouteViews a RIPE RIS napočítal 361 různých hodnot OTC, jenže právě dosazování na vstupu to číslo nafukuje. Po odfiltrování zbylo 36 autonomních systémů, o kterých se dá říct, že normu možná dodržují.

Druhá cesta vede přes vlastní síť. Cloudflare se přímo propojuje s tisíci sítěmi a u takového souseda se pozná, jestli OTC nastavil on: hodnota se musí rovnat jeho vlastnímu číslu AS. Ze tří měsíců sledování vyšlo 67 autonomních systémů. Nadprůměrně jsou mezi nimi zastoupené route servery propojovacích uzlů – běží často na otevřených implementacích BGP, které novinky přebírají rychleji – a sítě provozované jednotlivci.

Patnáct sítí, které atribut smazaly

Druhá část práce je pokus. Cloudflare ohlásil ze všech svých propojovacích míst jeden prefix v IPv4 a jeden v IPv6, oba s OTC nastaveným na vlastní číslo AS13335. Po ověření, že se rozšířily po světě, je zase stáhl: stažení rozhýbe hledání náhradních cest a ukáže víc tras, než kolik jich je vidět v klidu. Stejným způsobem tatáž firma koncem července zjišťovala, co se cestou stane s atributem ORIGIN.

Zprávy z veřejných sběračů rozebral nástroj BGPKIT. První krok byl jednoduchý: u cesty tvaru „ASX AS13335“ nemůže atribut zmizet nikde jinde než u ASX. Takhle se našlo šest sítí, z toho dvě páteřní – AS3257 (GTT) a AS1299 (Arelion). Postupným rozšiřováním na delší cesty jich přibylo dalších devět.

Podstatnější než počet je dosah. Bez OTC dorazila třetina cest v IPv4 (33,1 %) a šestina v IPv6 (17 %). Přes GTT nebo Arelion přitom vedlo 96,6 % takových cest v IPv4 a 92,9 % v IPv6. Když se měření zúžilo na cesty, kde je jedna z těch dvou sítí bezprostředním sousedem Cloudflaru, GTT mazal atribut pokaždé, kdežto u Arelionu chybělo OTC u 71,4 % cest v IPv4 a 40,7 % v IPv6. Arelion ho tedy odstraňoval nedůsledně, podle místa ve vlastní síti.

Zvyk z doby, kdy jeden poškozený atribut shazoval relace po celém světě

Obě sítě Cloudflare oslovil a obě mazání potvrdily. Není to nedbalost, ale obranný návyk. OTC je atribut volitelný tranzitivní, což podle RFC 4271 znamená, že ho směrovač nemá zahazovat, ani když mu nerozumí, a má ho poslat dál. Jenže dokud platilo jen původní znění, dokázal poškozený atribut shodit relaci – a protože se šířil dál, padaly relace i tisíce kilometrů od místa, kde vznikl. Část operátorů si tehdy zvykla neznámé atributy raději odstraňovat. RFC 7606 to vyřešilo jinak: poškozený atribut dnes vede k zahození dotčených prefixů, ne k rozpadu relace.

Arelion podle Cloudflaru krátce po tom rozhovoru nasadil konfiguraci, která OTC zachovává. Ověřit se to dá dotazem nad archivem sběrače route-views4 – testovací prefix se v něm od 18. srpna vrací s cestou přes Arelion a s atributem na svém místě. GTT ho podle téhož textu maže dál.

Zapnout role jde jen na části směrovačů

Cloudflare k srpnu 2026 vypsal, kdo normu umí. Podporu mají Junos, RouterOS, BIRD, OpenBGPD a FRR, u Cisco IOS XR se čeká na vydání 26.4.1. Nemají ji Arista EOS, Nokia SR OS, Huawei, Extreme SLX-OS, ArcOS, GoBGP ani ExaBGP. Dva z těch záznamů jde ověřit v dokumentaci: FRROpenBGPD popisují nastavení role na relaci jmenovitě a MikroTik ji uvádí v poznámkách k RouterOS 7.21 z 12. ledna 2026.

Nasazení má jednu praktickou nepříjemnost: přidání role vyžaduje restart relace BGP, takže se plánuje na servisní okno. Zato pak ochrana proti únikům běží sama, bez ručně psané politiky – a to je celý smysl normy. Čím výš v hierarchii ale sedí síť, která atribut odstraní, tím větší kus té ochrany zmizí; k tomu při dnešní míře nasazení stačí jediná páteřní síť.

Zdroje: Cloudflare: BGP Role model – tracking the adoption of RFC 9234, RFC 9234, RFC 7908, RFC 7606, dokumentace FRR, bgpd.conf v OpenBSD, poznámky k vydání RouterOS 7.21.

Internet a sítě

BGP Směrování Cloudflare RFC 9234 bezpečnost sítí

← zpět na výpis