IL-0266 Wikimedia Foundation · 2021-11-23networking
eqiad 코어 라우터 두 대 사이에 라우팅 루프가 생겨 eqiad 가 다른 데이터센터의 공인 IP 주소에 닿지 못했다
2021년 11월 23일 화요일 09시 37분쯤, cr1-eqiad 와 cr2-eqiad 에서 BGP 설정 하나를 뺐다. BGP "MED" 속성 값을 BGP 경로의 다음 홉까지 가는 OSPF 비용으로 정하는 설정이었다. 그러자 두 코어 라우터가 일부 원격 사이트로 가는 경로를 평가하는 방식이 바뀌었다. 외부에서 학습한 올바른 경로보다, eqiad 의 장비끼리 서로 다시 알리던 같은 경로가 더 나아 보이게 됐다.
예를 들어 cr2-eqiad 는 eqsin 의 BGP 경로로 가는 트래픽을 codfw 로 보내다가, 변경 뒤에는 로컬 피어인 cr1-eqiad 로 보내는 편이 낫다고 판단했다. cr1-eqiad 도 똑같이 cr2-eqiad 로 보내는 편을 골라서, 트래픽이 밖으로 나가지 못하고 두 라우터 사이를 오가는 라우팅 루프가 생겼다. 09시 39분에 eqiad 의 Icinga 가 eqsin 의 공인 text-lb 주소에 닿지 못해 알림이 울렸다. 09시 42분에 두 장비에서 설정 변경을 되돌렸지만, 정책 변경 때 경로가 갱신되는 방식 때문에 바로 풀리지 않았다. 더 조사한 뒤 09시 51분에 eqiad 라우터 사이의 BGP 세션을 강제로 재설정하자 문제가 풀렸다. 약 12분 동안 eqiad 는 다른 데이터센터에 공인 IP 주소로 닿지 못했고, 최종 사용자 트래픽에는 영향이 없었다.
- 심각도
- –
- 영향 범위
- eqiad could not reach hosts in other data centers, such as cache PoPs, via public IP addresses; no impact on end-user traffic
- 영향 사용자
- no end-user impact
- 지역
- eqiad
- 감지까지
- 2m
- 복구까지
- 14m
증상
09시 39분에 알림이 울렸다. 첫 알림은 eqiad 의 Icinga 가 싱가포르 eqsin 의 공인 text-lb 주소에 닿지 못해서 울렸다.
eqiad 는 약 12분 동안 캐시 거점 같은 다른 데이터센터의 호스트에 공인 IP 주소로 닿지 못했다. Icinga 는 eqsin 같은 엣지 캐시 클러스터를 상태 검사하다가 이를 알아챘다. 최종 사용자 트래픽에는 영향이 없었다. Wikimedia Foundation 은 Icinga 알림이 영향의 거의 전부였을 것으로 봤다. 내부 트래픽은 대개 BGP 가 아니라 OSPF 로 라우팅되는 로컬 IP 서브넷을 쓰고, 원격 데이터센터의 공인 IP 로 직접 가는 일이 드물기 때문이다.
eqsin 으로 가는 트래픽은 밖으로 나가지 못하고 cr1-eqiad 와 cr2-eqiad 사이를 오갔다. 09시 42분에 두 라우터의 설정 변경을 되돌렸지만, 정책이 바뀔 때 이 경로들이 갱신되는 방식 때문에 바로 풀리지 않았다.
증상 네트워크 도달 불가
원인
- 촉발
- 09시 37분쯤 cr1-eqiad 와 cr2-eqiad 에서 BGP 경로 선택에 영향을 주려고 BGP 설정 하나를 뺐다. 이 설정은 BGP "MED" 속성 값을 BGP 경로의 다음 홉까지 가는 OSPF 비용으로 정했다. 설정을 뺀 것은 T295672 작업의 일부였다.
감지
09시 39분에 알림이 울렸다. eqiad 의 Icinga 가 eqsin 같은 엣지 캐시 클러스터를 상태 검사하다가 eqsin 의 공인 text-lb 주소에 닿지 못했다.
조치
- 09시 42분 cr1-eqiad 와 cr2-eqiad 두 장비에서 설정 변경을 되돌렸다. 정책이 바뀔 때 경로가 갱신되는 방식 때문에 이것만으로는 바로 풀리지 않았다.
- 09시 51분 eqiad 라우터 사이의 BGP 세션을 강제로 재설정했고, 문제가 풀렸다.
후속 조치
- T295672 티켓에 사고 내용을 더 자세히 적고, "second IXP port" 문제를 다루면서 같은 일이 다시 나지 않도록 BGP 세션을 조정하자는 제안을 올렸다.
교훈
–
출처
관련 사례
같은 원인 · 공통 BGP 라우팅
IL-0394Cloudflare Miami 라우터가 내부 IPv6 경로를 BGP 피어와 트랜짓 제공자에게 유출해 25분 동안 백본이 혼잡해지고 트래픽이 드롭됐다Cloudflare · 2026같은 원인 · 공통 BGP 라우팅
IL-0225라우터 명령 하나가 Microsoft WAN 의 모든 라우터에 토폴로지를 다시 계산하게 해 전 세계 Azure 네트워크 연결이 불안정해졌다.Microsoft Azure · 2023같은 원인 · 공통 BGP 라우팅
같은 원인 · 공통 BGP 라우팅
같은 원인 · 공통 BGP 라우팅
내 클러스터에도 있는지 확인하기
AI 도구와 스크립트용
- 이 사례의 JSON: https://incidentlib-api.benchlet.com/cases/IL-0266
- 가장 비슷한 사례들: https://incidentlib-api.benchlet.com/cases/IL-0266/similar
- MCP 서버(Streamable HTTP, 키 없음):
https://incidentlib-mcp.benchlet.com/mcp
API 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.