요약

  • 이 기사가 다루는 한정된 사건은 2023년 5월 25일 Angola Cables AS37468과 연관된 BGP 루트 리크(route leak)입니다. Mutually Agreed Norms for Routing Security 이니셔티브와 Internet Society Pulse는 이 사건을 많은 호주 사용자가 AWS와 Akamai 서비스를 포함한 미국 사이트에 접속할 때 연결이 느려진 사건으로 기술했습니다 [1][2].

  • 이 글은 Angola Cables의 기업 프로필이 아니며, 2024년 서아프리카 해저 케이블 장애에 대한 기사도, 일반적인 클라우드 장애 이야기도 아닙니다. 이 글은 라우팅 경로 실패가 수출 범위, 수입 정책, 관계 근거, 공개 관찰이 서로 맞지 않을 때 책임 문제가 되는 방식을 다룹니다.

  • BGP는 네트워크에 목적지 프리픽스로 트래픽을 어디로 보낼지 알려줍니다. 그러나 그 자체로는 이웃이 보내는 모든 경로를 광고할 권한이 있었는지를 증명하지 못합니다. 루트 리크가 위험한 이유는, 경로가 문법상 유효해 보이면서도 그 전파를 막았어야 할 사업적·운영적 경계를 넘을 수 있기 때문입니다 [9][10].

  • RPKI 오리진 검증은 어떤 프리픽스에 대해 특정 자율 시스템이 그 프리픽스를 오리진으로 광고할 수 있도록 허용하는 ROA(Route Origin Authorization)가 존재하는지 말해줄 수 있습니다. 유용한 근거이지만 AS 경로 전체를 검증하지는 못합니다. 경로 유출은 여전히 관계 인지형 정책, 수입·수출 필터, 역할 근거, 루트 컬렉터 검토, 운영자 기록을 필요로 할 수 있습니다 [13][15].

  • bgp.tools, AFRINIC RDAP, PeeringDB의 AS37468 신원 근거는 루트 리크 논의를 실제 네트워크 운영자와 공개 레지스트리 맥락에 묶어줄 수 있습니다. 이 기록들은 책임 소재 근거가 아닙니다. 번호 자원과 피어링 표면에 대한 장부 기록입니다 [4][5][6].

  • 진지한 사건 종결에는 라우트 테이블 복구만으로는 부족합니다. 의도된 수출 세트, 실제 Adj-RIB-Out 샘플, 이웃의 수용 경로 로그, 루트 컬렉터 타임라인, RPKI와 IRR 검증 상태, 철회 근거, 고객 영향 범위, 그리고 나중에 검증할 수 있는 복구 통제가 필요합니다.

무슨 일이 있었나

공개 사건 기록은 2023년 5월 25일 Angola Cables AS37468과 연관된 BGP 루트 리크를 가리킵니다. Internet Society Pulse와 MANRS는 눈에 보이는 결과를 단순하게 기술했습니다: 호주 사용자는 미국 사이트에 접속할 때 연결이 눈에 띄게 느려졌고, 영향을 받은 목적지에는 AWS와 Akamai와 연관된 서비스가 포함되었습니다 [1][2]. 이 프레이밍이 중요합니다. 문제는 해저 케이블이 끊겼거나 영향받은 모든 클라우드 서비스가 각자 고장 낸 것이 아니었습니다. 문제는 라우팅 정보가 트래픽을 경로가 의도된 범위에 맞지 않는 경로로 유도하거나, 그런 경로를 만나게 했다는 것입니다.

BGP는 흔히 인터넷의 라우팅 프로토콜이라 불리지만, 그 줄임말은 가장 중요한 거버넌스 문제를 가립니다. BGP는 중앙 권한 시스템이 아닙니다. 각 자율 시스템(AS)은 이웃으로부터 광고를 받고, 로컬 정책을 적용하고, 경로를 선택하며, 그 경로를 다른 이웃에게 수출할 수 있습니다. 네트워크가 경로를 배웠거나 사용했어야 할 역할을 넘어서 전파하면, 다른 네트워크가 그 광고를 수용하고 트래픽을 불량하거나 의도되지 않은 경로로 운반할 수 있습니다. 잘못된 광고는 실제 사용자 경험으로 이어질 수 있습니다: 지연, 불안정, 접속 불가 서비스, 눈에 보이는 애플리케이션 오류입니다.

이 사건에서 소스 캡슐은 좁습니다. 대상은 Angola Cables의 2023년 루트 리크이며, Angola Cables의 더 넓은 사업도, 이후 서아프리카 연안 케이블 손상도, 대양 횡단 연결성에 대한 일반적 불만도 아닙니다. 책임이 있는 표면은 라우트 정책 경계입니다. 어떤 경로가 수출되었는가? 어떤 이웃이 수용했는가? 어떤 경로가 선택되었는가? 어떤 통제가 전파를 막을 수 있었는가? 어떤 기록이 상태가 철회되고 고쳐졌음을 증명할 수 있는가?

호주 사용자가 미국 경로 문제를 알아차렸다는 사실 자체가 신호입니다. 국내 사용자가 외국 서비스에 접속할 때는 여러 네트워크를 거칩니다: 접속 네트워크, 국내 트랜짓 제공자, 국제 캐리어, 콘텐츠 네트워크나 클라우드 엣지, 그리고 때로는 루트 옵티마이저입니다. 유출된 경로는 예상치 못한 우회 경로를 삽입하거나 원격 경로를 원래보다 더 매력적으로 보이게 만들 수 있습니다. 목적지 서비스가 건강하더라도, 선택된 경로가 사용자가 서비스 장애로 경험할 만큼 느려질 수 있습니다. 그래서 루트 리크는 단순한 운영자의 하우스키핑이 아닙니다. 보이지 않는 제어평면 오류를 공개적 피해로 바꿀 수 있습니다.

공개 자료는 정확한 라우터 명령, 내부 티켓, 전체 수용 프리픽스 세트, 영향받은 모든 흐름을 밝히지 않습니다. 의도도 증명하지 않습니다. 루트 컬렉터 관찰을 특정 엔지니어가 고의로 피해를 일으켰다는 주장으로 바꾸는 것은 무책임합니다. 사적 기록의 부재를 루트 리크를 무시하는 구실로 삼는 것도 마찬가지로 무책임합니다. 책임은 관찰된 제어평면 상태에서 시작하며, 책임 있는 운영자가 어떤 근거를 제시할 수 있어야 하는지를 묻습니다.

이것이 경로 검증 문제였던 이유

많은 라우팅 보안 논의는 오리진 검증에서 출발합니다. 오리진 검증은 프리픽스를 오리진으로 광고하는 AS가 그 프리픽스를 오리진으로 광고하도록 ROA가 허용하는지를 묻습니다. 그 질문은 중요하지만 Angola Cables 사건보다 좁습니다. 루트 리크는 경로가 어디를 거치고 어떤 관계로 수출되는지에 관한 것입니다. 오리진은 유효, 무효, 미확인이거나 전파 오류와 무관할 수 있습니다. 경로가 의도된 범위를 침해한다면, 오리진 검증만으로 전체 실패를 설명할 수 없습니다.

RFC 7908은 유용한 사고 모델을 줍니다. 루트 리크는 전파 실수입니다. 어떤 관계에서 배운 경로가 의도된 정책을 위반하는 방식으로 다른 관계에 광고될 수 있습니다. 상업적 용어로는, 제공자나 피어에서 배운 경로가 다른 제공자나 피어로 유출될 수 있습니다. 운영적 용어로는, 하나의 범위 안에 머물러야 할 경로가 탈출해 있어서는 안 되는 곳에서 보이게 됩니다. 피해는 광고된 도달 가능성과 의도된 라우팅 관계 사이의 불일치에서 옵니다 [10].

경로 검증은 관계, 역할, 정책에 의존하기 때문에 오리진 검증보다 어렵습니다. ROA는 사실상 AS X가 프리픽스 Y를 오리진으로 광고할 수 있다고 말할 수 있습니다. 그러나 AS A가 AS B에서 배운 경로를 AS C에게 수출해야 하는지는 말하지 못합니다. 경로가 고객, 피어, 제공자 관계를 올바르게 통과했는지 증명하지 못합니다. 선택된 경로가 긴 우회를 더하거나 트래픽을 예상치 못한 대륙으로 보낼지도 알려주지 못합니다. 이런 질문에는 정책 근거가 필요합니다.

따라서 Angola Cables 사건은 다층적 질문을 던집니다. AS37468은 수출하려던 세트를 벗어난 경로를 수출했는가? 어떤 이웃이 관계 인지형 필터 없이 그 경로를 수용하고 전파했는가? 다운스트림 네트워크는 로컬 프리퍼런스, AS 경로 길이, 혹은 더 구체적인 정책의 부재 때문에 그 경로를 선택했는가? 공개 컬렉터들이 전파를 재구성할 만큼 충분한 곳에서 경로를 보았는가? 경로는 깨끗하게 철회되었는가? 운영자들이 같은 종류의 유출이 다음에는 fail-closed 되도록 통제를 바꾸었는가?

그것이 책임 시험입니다. 라우팅 사건은 경로가 루킹 글래스에서 사라진다고 종결되지 않습니다. 운영자는 그것이 왜 사라졌는지, 누가 제거했는지, 재발을 무엇이 막는지, 복구가 외부에서 관찰 가능한지를 보여야 합니다. 그렇지 않으면 공개 기록은 나쁜 상태가 끝났다는 사실만 보여줄 뿐, 시스템이 배웠다는 증거는 없습니다.

AS37468 신원 기록의 역할

AS37468은 근거 패키지에서 Angola Cables에 묶인 공개 자율 시스템 식별자입니다. bgp.tools는 편리한 공개 라우팅 맥락 페이지를 제공합니다. AFRINIC RDAP는 autnum 자원에 대한 레지스트리 데이터를 제공합니다. PeeringDB는 운영자가 피어링 표면을 시장에 어떻게 제시하는지를 포함한 자발적 피어링 맥락을 제공합니다 [4][5][6]. 이 자료들이 중요한 이유는 책임에는 안정적인 대상이 필요하기 때문입니다. ASN이 없으면 이 글은 브랜드 이야기로 흐를 수 있습니다. ASN이 있으면 논의가 라우팅 주체에 고정됩니다.

레지스트리 논점은 Heng.lu의 방법론 논점이기도 합니다. 레지스트리는 번호 자원 청구에 대한 장부와 기록 관리자이며, 모든 운영 행위에 대한 주권적 판정은 아닙니다. AFRINIC에 AS37468의 RDAP 기록이 있다는 사실이 2023년 5월 25일의 과실, 무죄, 정확한 경로 정책을 증명하지는 않습니다. 다른 근거를 조직할 수 있는 공개 자원 신원을 증명할 뿐입니다. 기사가 그 선을 명확히 유지한다면, 책임 기사에는 그것으로 충분합니다.

PeeringDB에도 같은 한계가 있습니다. 운영자가 피어링 참여자임을 설명하는 데 도움이 됩니다. 네트워크가 피어링 자세, 연락 방식, 교환소 존재를 어떻게 광고하는지 보여줄 수 있습니다. 그 자체로 특정 루트 리크를 증명할 수는 없습니다. PeeringDB 페이지는 라우터 로그가 아닙니다. 유용한 이유는 루트 리크가 관계 사건이기 때문입니다: 누가 누구에게서 배우고, 누가 누구에게 수출하며, 당사자들이 그 경로로 무엇을 해야 했는지.

좋은 근거 사슬은 이 기록들을 각자의 고유한 역할에 맞게 사용합니다. AS37468 신원은 사건을 묶습니다. RDAP는 번호 자원 맥락을 확인합니다. PeeringDB는 피어링 표면의 방향을 잡습니다. 루트 컬렉터와 사건 보고서는 보이는 라우팅 상태를 보여줍니다. RFC와 MANRS 지침은 통제 지도를 제공합니다. 어느 하나도 완전한 포스트모템이 아닙니다. 함께 있을 때 포스트모템이 답해야 할 질문을 정의합니다.

삭제 시험은 단순합니다. BGP, AS37468, 경로 전파, 컬렉터, 트랜짓 정책을 기사에서 제거하면 책임 논제가 무너집니다. 남는 것은 일반적인 연결성 이야기입니다. Daniel Kade의 목표는 더 좁습니다. 요점은 Angola Cables가 존재한다는 것도, 대륙 간 트래픽이 느려질 수 있다는 것도 아닙니다. 요점은 이름이 지정된 자율 시스템과 그 이웃들이 실수가 외부에서 관찰될 수 있고 외부적으로 책임져야 할 공개 라우팅 패브릭 안에 있다는 것입니다.

루트 컬렉터가 도움은 되지만 사건을 결정하지는 못하는 이유

RouteViews와 RIPE RIS는 공개 루트 컬렉터 시스템입니다. 참여 피어로부터 BGP 데이터를 받아 그 지점에서 어떤 경로가 보였는지 연구할 수 있게 합니다 [7][8]. 외부 책임에 필수적입니다. 컬렉터가 없으면 공개는 거의 전적으로 사적 운영자 발표에 의존하게 됩니다.

컬렉터는 완전한 근거가 아닙니다. 컬렉터는 그 피어들이 보내는 것을 봅니다. 모든 네트워크가 사용하는 모든 경로를 보지 못할 수 있습니다. 특정 최종 사용자 패킷이 선택한 경로를 보여주지 않을 수도 있습니다. 사적 루트맵, 거부된 경로, 내부 예외, 고객 계약을 드러내지 못합니다. 신중한 해석이 필요한 업데이트 체르너(churn)도 포함될 수 있습니다. 한 컬렉터에서 관찰된 광고는 데이터 포인트이지 보편적 진실이 아닙니다.

그 한계가 컬렉터 근거의 필요성을 약화시키지는 않습니다. 오히려 근거 규율을 강화합니다. Pulse와 MANRS가 둔화와 루트 리크를 보고했다면, 다음 책임 단계는 컬렉터 타임라인을 보존하는 것입니다: 이상 경로가 언제 나타났는지, 어떤 AS 경로가 보였는지, 몇 개의 컬렉터가 보았는지, 철회가 언제 도착했는지, 경로가 재등장했는지. 그 타임라인은 운영자 로그와 비교될 수 있습니다. 공개 관찰과 사적 기록이 수렴해야 합니다.

호주에서 미국으로 이어지는 경로에 영향을 준 루트 리크에는 지리적·토폴로지적 다양성이 중요합니다. 한 지역 근처의 컬렉터는 다른 컬렉터가 볼 수 없는 경로를 볼 수 있습니다. 호주 접속 제공자는 유럽 트랜짓 제공자와 다른 경로를 선택할 수 있습니다. AWS와 Akamai 목적지는 서로 다른 피어링 선택을 통해 도달될 수 있습니다. 그래서 신뢰할 수 있는 분석은 방법을 공개하지 않는 한 단일 글로벌 카운트를 피합니다. 어떤 컬렉터, 어떤 피어, 어떤 시간 창, 어떤 경로 세트를 세는지 밝힙니다.

이 때문에 기사는 경로 가시성과 트래픽 피해를 분리해야 합니다. 경로는 보이면서도 선택되지 않을 수 있습니다. 어떤 네트워크는 선택하고 어떤 네트워크는 그렇지 않을 수 있습니다. 전면 장애 없이 경로를 느리게 만들 수 있습니다. 한 콘텐츠 전달 매핑에 다른 매핑보다 더 크게 영향을 줄 수 있습니다. 공개 사건 글은 가독성을 위해 이 구분들을 압축하기도 합니다. 책임 글은 복구가 어느 층이 실패했는지 아는 데 달려 있기 때문에 이 구분들을 다시 펼쳐야 합니다.

원천 운영자의 통제 질문

첫 질문은 AS37468이 무엇을 수출하려 했는가입니다. 네트워크는 각 외부 이웃에게 광고할 수 있는 프리픽스와 경로 유형을 알아야 합니다. 그 의도된 세트는 비정상적인 급증을 감지할 만큼 구체적이어야 합니다. 자체 오리진 프리픽스, 고객 프리픽스, 피어에서 배운 경로, 제공자에서 배운 경로, 테스트 경로, 내부 재배포 산물을 구분해야 합니다. 이 범주들이 무너지면, 루트 리크는 넓어 보이지만 그 범위를 담을 의도가 없었던 수출 정책을 통해 탈출할 수 있습니다.

두 번째 질문은 수출 정책이 어떻게 생성되었는가입니다. 어떤 네트워크는 정적 프리픽스 리스트를 유지합니다. 어떤 네트워크는 IRR 객체, ROA, 프로비저닝 시스템 또는 그 혼합으로 필터를 생성합니다. 어떤 네트워크는 루트맵과 커뮤니티로 관계별 수출을 제한합니다. 방법보다 중요한 것은 감사 추적입니다. 포스트모템은 어떤 입력 소스가 최종 정책을 만들었는지, 언제 바뀌었는지, 누가 승인했는지, 라우터의 실제 Adj-RIB-Out이 승인된 세트와 어떻게 비교되는지를 보여야 합니다.

세 번째 질문은 네트워크에 원천 측 이상 한도가 있었는가입니다. 세션이 보통 작고 알려진 경로 세트를 수출한다면, 갑작스러운 확장은 이웃이 필터하기 전에도 로컬 보류를 트리거해야 합니다. 그 보류는 최대 프리픽스 임계값, 수출 차이 게이트, 커밋 시점 점검, 실시간 광고를 인벤토리와 비교하는 외부 모니터로 구현할 수 있습니다. 원천 네트워크는 모든 실수를 업스트림 제공자가 알아차리기를 기대해서는 안 됩니다.

네 번째 질문은 운영자가 자기 경로의 공개 인터넷 뷰를 모니터링했는가입니다. 네트워크는 컬렉터와 루트 모니터링 시스템에 예기치 않은 오리진, 경로, 전파를 조회할 수 있습니다. 목표는 허영 모니터링이 아닙니다. 네트워크를 떠난 것이 네트워크가 의도한 것과 일치한다는 증거입니다. 공개 라우트 테이블은 라우팅 책임의 실행 코드입니다. 공개 테이블이 잘못된 경로를 보여주는데, 의도된 정책이 올바르다는 사적 주장만으로는 부족합니다.

다섯 번째 질문은 경로가 어떻게 철회되었는가입니다. 엔지니어가 변경을 롤백했는가? 자동 통제가 세션을 닫았는가? 이웃이 경로를 필터했는가? 정책 변경 후 루트 리플렉터가 수렴했는가? 나쁜 경로가 모든 관련 컬렉터에서 사라졌는가, 아니면 하나에서만? 철회는 타임스탬프가 아니라 운영 행위입니다. 그 행위는 재구성 가능해야 합니다.

공개 자료는 이 질문들에 답하지 않습니다. 그래서 추측을 게시할 이유가 되지 않습니다. 그것은 공개 기록의 경계입니다. 기사는 AS37468 신원과 사건 경계는 뒷받침되지만 내부 근본 원인은 여전히 알려지지 않았다고 말할 수 있습니다. 책임 요구는 없는 확신을 발명하는 것이 아니라, 결여된 기록을 향합니다.

이웃과 트랜짓 제공자의 의무

루트 리크가 커지려면 보통 하나 이상의 실패가 필요합니다. 원천 네트워크는 잘못된 것을 수출할 수 있지만, 수용 여부는 이웃이 결정합니다. 이웃은 이후 전파 여부도 결정합니다. 그 수용 경계가 로컬 오류를 공유 리스크로 만드는 곳입니다. 제공자가 모든 고객 오류를 잡겠다고 약속하는 것은 무리하지만, 고객별 정책, 경로 한도, 검증 신호를 적용하는 것은 기대할 수 있습니다.

고객 프리픽스 필터링이 핵심입니다. 제공자는 고객이 오리진으로 광고하거나 트랜짓할 수 있는 것이 무엇인지 알아야 합니다. 그 지식은 계약, 프로비저닝 데이터베이스, IRR 데이터, ROA, 과거 경로 이력, 직접 소통에서 나올 수 있습니다. 각 소스에는 결함이 있습니다. IRR 데이터는 낡을 수 있습니다. ROA 커버리지는 불완전할 수 있습니다. 계약 기록은 기계 판독 가능하지 않을 수 있습니다. 과거 라우팅은 과거의 실수를 정당화할 수 있습니다. 요점은 완벽한 소스 하나를 찾는 것이 아니라, 여러 소스를 보수적인 수용 규칙으로 결합하는 것입니다.

기본 거부가 여기서 중요합니다. RFC 8212는 BGP 운영 기대를 갱신하여, 외부 BGP 세션이 암묵적으로 경로를 교환하는 대신 명시적 수입·수출 정책을 요구해야 함을 정합니다 [12]. 실용적 교훈은 단순합니다: 세션이 떠 있다는 이유만으로 경로가 경계를 넘어서는 안 됩니다. 그 경로가 그 관계에 허용되는 이유를 밝히는 정책이 있어야 합니다. 정책이 없다면 안전한 결과는 경로를 통과시키지 않는 것입니다.

RFC 9234에 기술된 BGP 역할과 Only-to-Customer 속성은 또 하나의 통제 지도를 더합니다. 이 설계는 이웃들이 관계 역할을 신호하고, 기대된 고객·피어·제공자 경로를 위반하는 수출을 감지하는 데 도움을 줍니다 [13]. 모든 레거시 세션에 대한 마법의 소급 적용은 아니고, 배포도 보편적이지 않습니다. 그러나 업계가 어디로 이동했는지 보여줍니다: 루트 리크 방지에는 오리진 근거만이 아니라 관계 근거가 필요합니다.

최대 프리픽스 임계값은 또 하나의 독립적 통제입니다. 평소 범위를 크게 벗어난 경로 세트를 갑자기 보내는 고객은 경고 또는 세션 보호를 트리거해야 합니다. 임계값은 의미 있어야 합니다. 라우터 메모리는 보호하지만 라우팅 무결성은 보호하지 않을 만큼 높은 한도는 충분하지 않습니다. 운영자는 기준 경로 수를 추적하고, 비정상적인 델타에 경보를 내고, 대규모 변경에 대한 의도적인 승인 경로를 요구해야 합니다.

제공자 의무는 비난 극장이 아닙니다. 피해 반경 감축입니다. 원천 AS가 경로를 유출하면, 업스트림과 피어 경계는 그 유출이 전세계적 우회가 되는 것을 막아야 합니다. 서로 다른 이웃이 다르게 반응하면, 그 비교가 근거가 됩니다. 한 경로는 전파되었고 다른 경로는 그렇지 않았습니다. 그 대조는 어떤 통제가 작동했고 어떤 것이 빠졌는지를 운영자에게 가르칩니다.

RPKI는 도움이 되지만 충분하지 않았다

Resource Public Key Infrastructure는 자원 보유자가 어떤 AS가 프리픽스를 오리진으로 광고할 수 있는지를 말하는 ROA(Route Origin Authorization)를 공개하게 합니다. 라우터나 검증 시스템은 이후 경로를 유효, 무효, 미발견으로 분류할 수 있습니다. RFC 6811은 BGP 프리픽스 오리진 검증을 기술하며, 관련 운영 지침은 이 검증을 배포하는 방법을 설명합니다 [14][15]. 잘못된 AS가 오리진으로 나타나는 경로에 대해, RPKI는 강한 거부 신호를 낼 수 있습니다.

그 신호는 좁습니다. 오리진 질문에는 답하지만 전체 경로 질문에는 답하지 않습니다. 경로는 유효한 오리진을 가지면서도 잘못된 관계로 유출될 수 있습니다. ROA가 없어 RPKI 미확인일 수 있습니다. ROA로 커버되면서도 프리픽스 길이, 고객 승인, 수출 범위에 대한 로컬 정책을 여전히 요구할 수 있습니다. 따라서 오리진 검증은 필요한 근거이지 완전한 루트 리크 방화벽이 아닙니다.

Angola Cables 사건에 대해, 공개 캡슐은 RPKI가 모든 것을 막았을 것이라는 주장을 의도적으로 피합니다. 더 안전한 결론은 오리진 검증이 검토의 일부여야 한다는 것입니다. 영향받은 프리픽스 중 어떤 것들이 ROA를 가지고 있었는가? 관찰된 경로에서 무효로 나타난 것은 무엇인가? 미발견은 무엇인가? 어떤 네트워크가 무효를 거부했는가? 미확인을 수용한 곳은? 어떤 곳은 거부가 아니라 로컬 프리퍼런스에만 검증 상태를 사용했는가? 이 답들이 없으면, RPKI는 근거가 아니라 구호에 그칩니다.

RPKI는 또한 자원 보유자가 정확한 ROA를 공개할 것을 요구합니다. 영향받은 목적지에 ROA가 없었다면, 다운스트림 운영자는 오리진 거부를 위한 암호학적 근거가 부족했습니다. 그것이 모든 경로를 수용하는 것을 정당화하지는 않습니다. 라우팅 보안이 협력적이라는 이유를 보여줍니다. 자원 보유자는 오리진 근거를 공개합니다. 원천 네트워크는 수출을 제한합니다. 제공자는 고객을 필터합니다. 피어는 관계 정책을 지킵니다. 컬렉터는 탈출한 것을 드러냅니다. 각 층이 다음 층을 위한 불확실성을 줄입니다.

또 하나의 교훈이 있습니다: 공개 루트 리크는 유출·전파 네트워크에 대한 정책 검토뿐 아니라 영향받은 목적지에 대한 ROA 위생 검토도 트리거해야 합니다. 고가치 목적지가 인터넷에 무단 오리진을 거부해 달라고 의존한다면, 그 자체의 자원 기록이 그 결과를 지지해야 합니다. 이것은 피해자 비난이 아닙니다. 라우팅 시스템의 안전 속성이 분산되어 있음을 인정하는 것입니다.

복구 증명에 무엇이 포함되어야 하는가

복구 주장은 사건 경계로 시작해야 합니다. 경계는 날짜, 시간 창, 오리진 또는 경로 패턴, 영향받은 관계, 관찰된 컬렉터, 알려진 영향 등급을 밝혀야 합니다. 이 사건의 경우 경계는 2023년 5월 25일 Angola Cables AS37468과 연관되고 미국 서비스로 향하는 호주 경로에 관한 루트 리크입니다 [1][2]. 문제가 해결되었다는 말만으로는 부족합니다.

다음으로 운영자는 의도된 경로 세트를 보존해야 합니다. 그 세트는 AS37468이 각 외부 세션에서 오리진으로 광고하거나 수출할 수 있었던 프리픽스를 보여야 합니다. 유출에 고객, 피어, 제공자 경로가 포함되었다면 범주는 명시적이어야 합니다. 의도된 세트는 사건 중 실제 Adj-RIB-Out과 비교되어야 합니다. 그 차이가 결함 표면입니다.

운영자는 이웃 근거도 보존해야 합니다. 어떤 이웃이 잘못된 경로를 받았는가? 어떤 곳이 수용했는가? 거부한 곳은? 이후 전파한 곳은? 각 관련 세션에 대해 포스트모템은 수입 정책, 수출 정책, 경로 수 한도, 검증 상태, 경보 동작을 식별해야 합니다. 어떤 이웃이 경로를 막았다면, 그 성공은 전파 실패만큼 문서화되어야 합니다. 긍정적 통제도 책임 기록의 일부입니다.

컬렉터 근거는 사적 기록과 묶여야 합니다. RouteViews와 RIPE RIS의 타임라인은 경로가 언제 보였고 언제 사라졌는지 보여줄 수 있습니다. 운영자 로그는 어떤 행위가 상태를 바꾸었는지 보여줄 수 있습니다. 운영자가 조치하기 전에 공개 경로가 사라졌다면, 원인은 이웃 필터나 다른 곳의 수렴이었을 수 있습니다. 주장된 수정 이후에도 경로가 남았다면 복구는 불완전합니다. 두 타임라인은 조율되어야 합니다.

복구에는 예방 통제도 포함되어야 합니다. 예로는 더 엄격한 수출 리스트, 생성된 고객 필터, 기본 거부 EBGP 정책, 의미 있는 최대 프리픽스 임계값, RPKI 검증 정책, 가능한 곳의 BGP 역할 지원, 자동화된 컬렉터 모니터링, 비정상 수출 델타에 대한 롤백 규칙이 있습니다. 그 통제는 검증 가능해야 합니다. 미래의 구성은 같은 종류의 경로가 시도될 때 fail-closed 되어야 합니다.

마지막으로 복구는 미지의 것을 보존해야 합니다. 정확한 패킷 손실 총계, 전체 고객 피해, 내부 직원 행위, 재무 영향은 사적이거나 이용 불가능할 수 있습니다. 그렇다고 공개 기사가 약해지는 것은 아닙니다. 기사가 정직해집니다. 책임은 무엇이 알려졌고, 무엇이 추론 가능하며, 무엇이 운영자만 증명할 수 있는지를 밝힐 때 가장 강합니다.

과잉 주장 없는 사업 영향

공개 보고는 이 유출이 AWS와 Akamai 서비스를 포함한 미국 사이트로 향하는 많은 호주 사용자의 연결을 느리게 했다고 말합니다 [1][2]. 이는 심각한 주장입니다. AWS와 Akamai는 수많은 일상적 디지털 경험 아래에 있기 때문입니다. 클라우드 엔드포인트로의 느린 경로는 사용자에게 망가진 애플리케이션처럼 느껴질 수 있습니다. 콘텐츠 전달 네트워크로의 느린 경로는 건강한 오리진을 나쁜 경험으로 바꿀 수 있습니다. 제어평면 오류는 지연, 타임아웃, 불확실성을 통해 사업 문제가 됩니다.

이를 뒷받침 없는 피해자 목록으로 바꾸어서는 안 됩니다. 공개 캡슐에는 영향받은 모든 서비스, 모든 고객 불만, 패킷 손실 장부가 포함되어 있지 않습니다. 따라서 올바른 표현은 한정됩니다: 이 사건은 이름이 지정된 서비스 등급으로 향하는 경로에 영향을 주었고, 공개 보고는 AWS와 Akamai를 예로 들었습니다. 모든 AWS 고객이 영향받았거나, Akamai가 서빙하는 모든 사이트가 느려졌거나, 모든 호주 네트워크가 유출 경로를 선택했다고 말하지 않습니다.

이 절제는 장식이 아닙니다. 과잉 주장은 루트 리크 기사를 옹호문으로 만듭니다. Daniel Kade의 목표는 현실 계층 기사입니다. 독자가 라우팅 제어 실패가 사용자를 어떻게 해칠 수 있는지 이해하면서도, 경로 가시성과 체감 장애 사이의 근거적 거리를 유지하도록 돕습니다. 피해는 신뢰할 수 있지만 정확한 외곽선은 공개되지 않았습니다.

사업 리더에게 교훈은, 네트워크 사건이 애플리케이션 팀의 직접 통제 밖에 있을 수 있다는 것입니다. 클라우드 서비스는 건강할 수 있고, 콘텐츠 네트워크는 정상일 수 있지만, 다른 곳의 라우팅 정책이 바뀌어 사용자의 접속 네트워크가 나쁜 경로를 선택할 수 있습니다. 그래서 사건 관리는 애플리케이션 대시보드만이 아니라 경로 근거를 필요로 합니다. 신스(Synthetic) 모니터링, 트레이스루트, 루트 컬렉터 점검, 제공자 에스컬레이션 경로가 중요한 이유는, 일반적인 가용성 지표가 놓칠 수 있는 층을 드러내기 때문입니다.

네트워크 운영자에게 교훈은, 루트 리크의 비용이 BGP에서 보이는 시간만으로 측정되지 않는다는 것입니다. 비용에는 조사 시간, 고객 신뢰, 에스컬레이션 부하, 미래 라우팅 변경에 대한 확신이 포함됩니다. 짧은 유출조차 많은 팀에게 자기 트래픽이 하이재크되었는지, 우회되었는지, 단지 느렸는지를 묻게 만듭니다. 그 불확실성 자체가 피해의 일부입니다.

독자가 다음에 지켜봐야 할 것

첫 번째 신호는 Angola Cables나 관련 이웃이 상세한 기술 포스트모템을 공개하는지입니다. 유용한 포스트모템은 민감한 고객 계약이나 라우터 비밀번호를 공개할 필요가 없습니다. 실패한 라우트 정책 등급, 프리픽스나 경로의 범위, 경로를 수용하거나 거부한 이웃, 문제를 감지한 모니터링, 철회 타임라인, 이후 추가된 예방 통제를 공개하면 됩니다.

두 번째 신호는 루트 리크 방지 표준이 컨퍼런스 조언이 아니라 운영 기본값이 되는지입니다. RFC 8212 기본 정책, RFC 9234 역할과 OTC, RPKI 오리진 검증, IRR 필터 생성, 컬렉터 모니터링은 모두 같은 방향을 가리킵니다: 명시적 경로 허가가 암묵적 신뢰를 이긴다. 남은 질문은 배포 품질입니다. 종이에 존재하지만 프로덕션 세션에 없는 표준은 다음 유출을 막지 못합니다.

세 번째 신호는 영향받은 목적지들이 자기 오리진 근거를 개선하는지입니다. 고가치 프리픽스에 정확한 ROA가 있으면 더 많은 네트워크가 무단 오리진을 거부할 수 있습니다. 없다면 제공자는 다른 필터에 더 의존해야 합니다. 목적지 자원 보유자는 다른 운영자의 수출 실수에 책임이 없지만, 그들의 기록은 다운스트림 네트워크가 그 실수를 얼마나 자동으로 감지할 수 있는지에 영향을 줍니다.

네 번째 신호는 사건 보고가 경로, 오리진, 피해를 구분하는지입니다. 공개 기사는 루트 리크, 오리진 하이재크, 경로 유출, 지연 사건, 부분 장애, 고객이 보는 서비스 실패 중 어느 것을 다루는지 말해야 합니다. 이 라벨은 학문적 교만이 아닙니다. 어떤 통제가 중요한지를 결정합니다. 오리진 검증은 한 문제를 다루고, 관계 인지형 경로 정책은 다른 문제를 다룹니다. 용량 엔지니어링은 또 다른 문제를 다룹니다. 정확한 라벨이 복구를 지향합니다.

다섯 번째 신호는 공개 컬렉터가 건강하고 넓게 피어링된 상태를 유지하는지입니다. RouteViews와 RIPE RIS는 책임 인프라입니다. 외부인이 인터넷이 무엇을 보았는지에 대한 주장을 검증하게 합니다. 더 다양한 피어링은 공개 기록을 개선합니다. 더 적은 컬렉터나 좁은 피어링은 미래의 사건을 부인하기 쉽고 범위를 정하기 어렵게 만듭니다.

이것이 네트워크 책임 사건인 이유

이 실패가 네트워크 책임에 속하는 이유는, 대상이 브랜드 서사도 일반적 지연 이야기도 아니기 때문입니다. BGP 루트 리크입니다. 책임의 표면은 AS37468, 경로 전파, 관계 정책, 레지스트리 근거, 공개 루트 컬렉터, RPKI의 한계, 운영자의 지속성입니다. 그 표면들을 제거하면 이야기가 더 이상 성립하지 않습니다. 남는 질문은 단지 회사에 나쁜 날이 있었는지 여부뿐입니다. 공개 근거는 더 좁고 유용한 질문을 지지합니다: 어떤 라우팅 통제가 나쁜 경로를 수출, 수용, 전파하거나 설명 없이 남기기 어렵게 만들었어야 했는가?

레지스트리와 번호 자원 기록이 여기서 중요한 것은 상징적 소유권 주장이 아니라 근거 시스템으로서입니다. AFRINIC RDAP 기록은 등록된 자원 맥락을 식별하는 데 도움이 됩니다. bgp.tools와 PeeringDB는 네트워크 신원과 보이는 관계를 프레이밍하는 데 도움이 됩니다. 그중 어느 기록도 그 자체로 라우팅 현실을 결정하지 않습니다. 실행 코드와 보이는 경로 상태가 여전히 1차입니다. 현실 계층은 패킷이 가도록 유도된 경로, 컬렉터가 본 광고, 운영자가 증명할 수 있어야 할 정책입니다.

그 표준은 또한 기사를 이용 가능한 근거 안에 유지합니다. Angola Cables가 고의로 사용자를 해쳤다고 말하지 않습니다. 영향받은 모든 서비스가 실패했다고 말하지 않습니다. RFC를 소급적 법적 의무로 바꾸지 않습니다. RFC 7908, RFC 8212, RFC 9234를 통제 지도로 사용합니다: 이 종류의 사건이 어떻게 제약될 수 있는지를 설명하는 정의, 기본값, 관계 신호입니다. 이것은 공개 기록이 증명하지 못한 과거 규칙 위반을 선언하는 것과 다릅니다.

같은 절제가 기사를 유용하게 만듭니다. BGP를 운영하지 않는 독자도 사슬을 이해할 수 있습니다: 네트워크가 경로를 광고하고, 이웃이 수용하거나 거부하고, 다른 네트워크가 경로를 선택할 수 있고, 사용자가 열악한 서비스를 경험할 수 있고, 공개 컬렉터가 그 상태를 관찰 가능하게 하며, 복구에는 근거가 필요합니다. 기술적 세부 사항은 장식이 아닙니다. 공개 피해에서 책임 있는 통제로 가는 경로입니다.

종결 질문

루트 리크 종결 질문은 명확히 남습니다:

  1. AS37468은 2023년 5월 25일에 정확히 어떤 경로 세트를 수출하려 했는가?
  2. 어떤 경로가 그 세트에서 탈출했으며, 어떤 외부 세션을 통했는가?
  3. 어떤 이웃이 경로를 수용, 거부 또는 전파했는가?
  4. 어떤 컬렉터가 경로를 보았으며, 경로는 언제 철회되었는가?
  5. 어떤 RPKI, IRR, 최대 프리픽스, BGP 역할 또는 수출 정책 통제가 존재했는가?
  6. 이후 어떤 예방 통제가 바뀌었으며, 어떻게 검증할 수 있는가?
  7. 어떤 사용자 영향 주장이 가정이 아니라 측정으로 뒷받침되는가?

이 질문들은 징벌적 이론을 요구하지 않습니다. 근거를 요구합니다. 그것이 루트 리크에 대한 올바른 표준입니다. 인터넷은 운영자가 비난 논쟁에서 이길 때 더 신뢰할 수 있게 되지 않습니다. 경로 허가가 명시적이고, 컬렉터 근거가 보존되며, 미지의 것이 숨겨지지 않고, 다음 나쁜 경로가 사용자가 알아차리기 전에 fail-closed 될 때 더 신뢰할 수 있게 됩니다.

출처

  1. https://manrs.org/2023/05/bgp-route-leak-at-angola-cables-slows-connectivity-for-many-australians/
  2. https://pulse.internetsociety.org/en/news/2023/05/bgp-route-leak-at-angola-cables-slows-connectivity-for-many-australians/
  3. https://seclists.org/nanog/2023/May/368
  4. https://bgp.tools/as/37468
  5. https://rdap.afrinic.net/rdap/autnum/37468
  6. https://www.peeringdb.com/net?asn=37468
  7. https://www.routeviews.org/routeviews/
  8. https://ris.ripe.net/docs/
  9. https://www.rfc-editor.org/rfc/rfc4271
  10. https://www.rfc-editor.org/rfc/rfc7908
  11. https://www.rfc-editor.org/rfc/rfc7454
  12. https://www.rfc-editor.org/rfc/rfc8212
  13. https://www.rfc-editor.org/rfc/rfc9234
  14. https://www.rfc-editor.org/rfc/rfc6811
  15. https://www.rfc-editor.org/rfc/rfc8893
  16. https://www.rfc-editor.org/rfc/rfc9319
  17. https://manrs.org/isps/guide/
  18. https://www.kentik.com/blog/a-brief-history-of-the-internets-biggest-bgp-incidents/