10/4일에 페이스북이 어떻게 사라졌는지 이해하기
(blog.cloudflare.com)- 10/4일 페이스북 관련 서비스들이 접속 불가능했던 이유를 CloudFlare가 외부에서 분석한 글
- DNS 룩업부터 실패하고, 모든 페이스북 관련 인프라의 IP연결이 끊어졌었음
- 페이스북의 공식 발표는
ㅤ→ "데이터 센터간 네트워크 트래픽을 조정하는 백본 라우터 구성을 변경하면서 문제가 발생. 이게 데이터 센터간의 연결에 연쇄적으로 영향을 미쳐서 서비스가 중단되었음"
ㅤ→ DNS 서버들은 보통 BGP를 통해서 자신을 알리게 되어있는데, 페이스북의 DNS서버들은 페이스북 데이터 센터와 연결이 안되면 BGP를 disable하도록 되어있었음
ㅤ→ 데이터 센터 백본이 끊어지면서 BGP 요청을 거부하게 되고, DNS서버에 접근이 불가능하게 되어버림
ㅤ→ 이 때문에 모든 페이스북 서버들 접속이 불가능해져버린게 문제
ㅤ→ 실제로 데이터센터 접근 자체가 어려워져서 엔지니어들이 온사이트로 출동해서 문제를 해결했다고
- 마치 누가 페이스북 데이터 센터의 인터넷선을 뽑은 것처럼 문제가 발생
- DNS 이슈는 아니었지만, DNS 오류가 대규모 중단의 첫번째 증상이었음
- BGP(Border Gateway Protocol)
ㅤ→ 인터넷의 AS(Autonomous Systems)들이 라우팅 정보를 교환하는 메커니즘
ㅤ→ 대형 라우터들은 라우팅 정보를 계속 공유해서 최종 정보에 도달하도록 관리
ㅤ→ 페이스북이 자신의 존재를 네트웍에 알리지(advertising) 않으면 접근이 불가능해 지는 것
ㅤ→ 개별 네트웍들은 ASN(Number) 를 가지고 있고, 자신들이 관리하는 IP들의 prefix 를 알려줌
- 10/4 15:40 UTC 부터 페이스북이 자신들의 DNS Prefix를 어나운싱 중단
ㅤ→ 위에 페이스북이 말한 이슈처럼 BGP Ad를 발송안하므로 접근 불가가 됨
ㅤ→ 이것 때문에 라우팅이 바뀌면서 BGP 업데이트가 대규모로 이뤄졌음
ㅤ→ 모든 DNS 서버들이 페북 URL들에 대해 SERVFAIL 시작
ㅤ→ DNS 쿼리들이 30x 증가하기 시작
ㅤ→ Twitter, Signal, Telegram 등에 대한 DNS쿼리도 증가
- 21:00 UTC 에 BGP가 다시 업데이트 되어 정상으로 돌아옴
- BGP는 안전한가요? https://news.hada.io/topic?id=1932
- 8월30일 CenturyLink/Level(3) 인터넷 다운상황 분석 https://news.hada.io/topic?id=2746