{"id":"IL-0394","org":"Cloudflare","date":"2026-01-22","docs":[],"title":{"en":"A Cloudflare router in Miami leaked IPv6 BGP routes to peers and providers for 25 minutes, congesting the backbone","ko":"Cloudflare Miami 라우터가 내부 IPv6 경로를 BGP 피어와 트랜짓 제공자에게 유출해 25분 동안 백본이 혼잡해지고 트래픽이 드롭됐다"},"domain":["networking"],"impact":{"scope":"IPv6 traffic: congestion on the backbone between Miami and Atlanta, elevated loss and higher latency for some Cloudflare customer traffic, and about 12Gbps at peak discarded for external networks whose prefixes leaked","users":"Some Cloudflare customers and external networks whose traffic was funnelled through Miami","region":"Miami"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"Removing only the prefix lists from export policy terms left terms that were too permissive, because a match on route-type internal accepts IBGP routes as well. Cloudflare states that route leaks are easy to cause by accident and that RFC9234 is the only way, independent of routing policy, to prevent route leaks caused at the local AS.","ko":"Cloudflare 는 이번 사고로 경로 유출을 실수로 일으키기가 얼마나 쉬운지 직접 겪었다고 적었다. 경로 유출을 막으려면 여러 갈래의 대책이 필요하고, 라우팅 정책 설정과 자동화에서 단기와 장기로 고칠 곳을 여럿 찾았다고 했다."},"related":[],"sources":[{"url":"https://blog.cloudflare.com/route-leak-incident-january-22-2026/","kind":"blog","archived":"https://web.archive.org/web/20261016023347/https://blog.cloudflare.com/route-leak-incident-january-22-2026/"}],"summary":{"en":"Cloudflare no longer needed to forward some IPv6 traffic through Miami toward its Bogotá data center, so a change through its policy automation platform removed the prefix list 6-BOG04-SITE-LOCAL from export policy terms such as 6-TELIA-ACCEPT-EXPORT, 6-PUBLIC-PEER-OUT and 6-PRIVATE-PEER-ANYCAST-OUT on a Miami edge router. With the prefix list gone, each term only matched \"from route-type internal\" and accepted the route. In JunOS and JunOS EVO, route-type internal matches any non-external route type, including IBGP routes, so every IPv6 prefix that Cloudflare redistributes internally across its backbone was advertised to all BGP neighbors in Miami. The result was a mixture of Type 3 and Type 4 route leaks as defined in RFC7908; Cloudflare notes that it is very similar to an outage it had in 2020.\n\nThe leak caused congestion on the Miami to Atlanta backbone, loss and latency for some customer traffic, and discarded traffic for the leaked networks. The network team began investigating at 20:40 UTC and raised an incident at 20:44. At 20:50 a network operator reverted the configuration by hand and paused the automation for that router, ending the impact after 25 minutes. The triggering change was reverted in the code repository at 21:47, the automation was confirmed healthy at 22:07, and it was unpaused on the Miami router at 22:40.","ko":"2026년 1월 22일 20:25 UTC 에 Cloudflare 는 정책 자동화 플랫폼으로 Colombia Bogotá 에 있는 데이터센터 한 곳의 BGP 광고를 Miami 에서 빼는 변경을 내보냈다. 전에는 IPv6 트래픽 일부를 Miami 를 거쳐 Bogotá 로 보냈지만, 최근 인프라 업그레이드로 그럴 필요가 없어졌기 때문이다. 이 변경은 19:52 UTC 에 네트워크 자동화 코드 저장소에 머지됐다. 변경은 여러 export 정책의 term 에서 BOG04 유니캐스트 prefix 를 담은 prefix-list 줄만 지웠고, 남은 정책은 너무 넓었다. 정책은 route-type internal 인 prefix 를 모두 받아들여 community 를 더한 뒤 accept 했다. JunOS 와 JunOS EVO 는 HPE Juniper Networks 장비의 운영체제이고, 여기서 route-type internal 은 IBGP 경로처럼 외부가 아닌 경로를 모두 고른다. 그 결과 Cloudflare 가 백본 안에서 재분배하는 IPv6 prefix 가 모두 이 정책을 통과해 Miami 의 모든 BGP 이웃에게 광고됐다. Cloudflare 는 이것이 2020년에 겪은 장애와 아주 비슷하다고 적었다.\n\n경로 유출은 넘겨줘서는 안 되는 트래픽을 자기에게 보내라고 네트워크가 인터넷에 알리는 일이다. 이번에 Cloudflare 는 일부 피어에게서 받은 경로를 Miami 에서 다른 피어와 제공자에게 재분배했다. RFC7908 의 정의로 보면 Type 3 과 Type 4 가 섞인 경로 유출이었다. 의도하지 않은 트래픽이 Miami 라우터로 들어와 Miami 와 Atlanta 사이 백본이 혼잡해졌고, 일부 고객 트래픽의 손실과 지연이 늘었다. 유출된 prefix 를 가진 네트워크의 트래픽은 라우터의 방화벽 필터에서 드롭됐고, 가장 많을 때 약 12Gbps 였다.\n\n20:40 UTC 에 네트워크 팀이 조사를 시작했고 20:44 에 인시던트를 열었다. 20:50 UTC 에 네트워크 운영자가 잘못된 설정 변경을 손으로 되돌리고 그 라우터의 자동화를 멈춰 영향이 끝났다. 유출은 25분 동안 이어졌다. 21:47 UTC 에 코드 저장소에서 유출을 촉발한 변경을 되돌렸고, 22:07 에 운영자가 자동화가 버그 없이 다시 돌 수 있음을 확인했으며, 22:40 에 Miami 라우터의 자동화를 다시 켰다."},"trigger":{"en":"At 20:25 UTC Cloudflare's policy automation pushed a change, merged at 19:52 UTC, that removed the BGP announcements from Miami for a data center in Bogotá, Colombia, by deleting the prefix-list 6-BOG04-SITE-LOCAL from several export policy terms.","ko":"20:25 UTC 에 정책 자동화 플랫폼으로 Bogotá 데이터센터용 BGP 광고를 Miami 에서 빼는 변경을 내보냈다. 이 변경이 Miami 라우터의 여러 BGP export 정책에서 prefix-list 6-BOG04-SITE-LOCAL 줄만 지워, 남은 정책이 route-type internal 인 경로를 모두 받아들여 밖으로 광고하게 됐다."},"severity":"unknown","symptoms":["packet-loss","high-latency"],"timeline":{"detected_after":"15m","resolved_after":"25m"},"date_kind":"incident","detection":{"en":"The network team began investigating unintended route advertisements from Miami at 20:40 UTC, and an incident was raised at 20:44 UTC.","ko":"20:40 UTC 에 네트워크 팀이 Miami 에서 나간 의도하지 않은 경로 광고를 조사하기 시작했고, 20:44 UTC 에 대응을 조율하려고 인시던트를 열었다."},"components":["bgp","backbone-network"],"root_cause":"config-change","remediation":[{"text":{"en":"A network operator reverted the bad configuration change on the Miami router by hand","ko":"20:50 UTC 에 네트워크 운영자가 잘못된 설정 변경을 손으로 되돌렸다. 이때 영향이 끝났다."}},{"text":{"en":"Paused the automation for the router so it could not run again","ko":"자동화가 같은 라우터에서 다시 돌지 않도록 그 라우터의 자동화를 멈췄다."}},{"text":{"en":"Reverted the triggering change in the network automation code repository","ko":"21:47 UTC 에 유출을 촉발한 변경을 네트워크 자동화 코드 저장소에서 되돌렸다."}},{"text":{"en":"Unpaused the automation on the Miami router after confirming it ran without the routing policy bug","ko":"22:07 UTC 에 운영자가 라우팅 정책 버그 없이 자동화가 다시 돌 수 있음을 확인했고, 22:40 UTC 에 Miami 라우터의 자동화를 다시 켰다."}}],"action_items":[{"text":{"en":"Patch the failure in the routing policy automation that caused the leak","ko":"경로 유출을 일으킨 라우팅 정책 자동화의 결함을 고치고, 이 결함과 비슷한 결함을 바로 막는다."}},{"text":{"en":"Add BGP community-based safeguards that reject routes received from providers and peers on external export policies","ko":"외부 export 정책에서 제공자와 피어에게서 받은 경로를 명시적으로 거부하는 BGP community 기반 안전장치를 라우팅 정책에 더한다."}},{"text":{"en":"Add automatic routing policy evaluation to the CI/CD pipelines that looks for empty or erroneous policy terms","ko":"비어 있거나 잘못된 정책 term 을 찾는 라우팅 정책 자동 평가를 CI/CD 파이프라인에 넣는다."}},{"text":{"en":"Detect problems in network configurations and the effects of automated changes earlier","ko":"네트워크 설정 문제와 자동 변경의 나쁜 영향을 더 일찍 알아채도록 개선한다."}},{"text":{"en":"Validate routing equipment vendors' implementations of RFC9234 before rolling out BGP roles and the Only-to-Customer Attribute","ko":"RFC9234 의 BGP role 과 Only-to-Customer Attribute 를 배포하기에 앞서 라우팅 장비 공급사의 구현을 검증한다. BGP role 과 Only-to-Customer Attribute 는 라우팅 정책과 상관없이 자기 AS 에서 생기는 경로 유출을 막는 유일한 방법이다."}},{"text":{"en":"Encourage long-term adoption of RPKI Autonomous System Provider Authorization (ASPA)","ko":"비정상적인 AS path 를 가진 경로를 네트워크가 자동으로 거부할 수 있게 하는 RPKI Autonomous System Provider Authorization, 곧 ASPA 를 장기적으로 채택하도록 권한다."}}],"contributing":["no-config-tests"],"recurrence_of":null,"symptoms_text":{"en":"On 22 January 2026 from 20:25 UTC, a Cloudflare edge router in Miami sent unintended BGP advertisements of IPv6 prefixes to its transit providers and peers. External networks' traffic was funnelled into the Miami data center, the backbone between Miami and Atlanta became congested, and some Cloudflare customer traffic saw elevated loss and higher latency.\n\nThe leaked updates came from AS13335 and are visible in MRT data with the monocle tool or RIPE BGPlay. For example, the prefix 2a03:2880:f077::/48 appeared with the AS path 64112 22850 174 3356 13335 32934, meaning Cloudflare took a route received from Meta (AS32934), a peer, and advertised it to Lumen (AS3356), a transit provider.\n\nTraffic for the networks whose prefixes leaked was discarded by firewall filters on Cloudflare's routers, which only accept traffic for Cloudflare services and customers; at peak about 12Gbps entering the Miami router was discarded. Only IPv6 traffic was affected.","ko":"2026년 1월 22일 20:25 UTC 부터 Cloudflare 의 Miami edge 라우터 하나가 BGP 트랜짓 제공자와 피어에게 예상하지 않은 경로를 광고했다. 20:40 UTC 에 네트워크 팀이 Miami 에서 나간 의도하지 않은 경로 광고를 조사하기 시작했다.\n\nAS13335 가 피어에게서 받은 경로를 다른 피어와 제공자에게 다시 광고했다. monocle 로 본 업데이트에서 prefix 2a03:2880:f077::/48 의 AS path 는 64112 22850 174 3356 13335 32934 였다. Cloudflare 가 피어인 Meta AS32934 에게서 받은 prefix 를 상위 트랜짓 제공자인 Lumen AS3356 에 광고했다는 뜻이다.\n\n제공자와 피어가 의도하지 않은 트래픽을 Miami 라우터로 보내면서 Miami 와 Atlanta 사이 백본이 혼잡해졌다. 일부 Cloudflare 고객 트래픽의 손실이 늘었고, 이 링크를 지나는 트래픽의 지연이 평소보다 높았다. 영향은 IPv6 트래픽에만 있었다.\n\n경로가 유출된 외부 네트워크의 트래픽은 Cloudflare 서비스와 고객의 트래픽만 받도록 만든 라우터 방화벽 필터에서 드롭됐다. 가장 많을 때 Miami 라우터로 들어온 이런 트래픽 약 12Gbps 를 드롭했다."},"updated_at":"2026-11-14T12:34:04.498770Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0394","org_slug":"cloudflare"}