페이스북 장애와 BGP 그리고 DNS

어제 페이스북 계열인 페이스북과 인스타가 6시간이 넘도록 먹통이 되었습니다.

페이스북 장애

최근 들어 구글 네이버 등 국내외의 IT 기업의 서비스 다운이 자주 발생하는 것 같은 느낌인데요.

이번 장애는 BGP 프로토콜의 장애가 원인이었다는 이야기가 들려오고 있습니다.

그래서 오늘은 페이스북 장애를 일으킨 BGP(Border Gateway Protocol)과 이번 장애의 원인을 알아보도록 하겠습니다.

먼저 BGP를 알아보기 전에 간단히 인터넷에서 우리가 서버를 찾아 통신이 진행되는 과정을 설명드리겠습니다.

인터넷 통신 과정

먼저 우리가 인터넷을 사용할 때는 주소창에 www.facebook.co.kr이라는 도메인을 을 입력합니다.

도메인

도메인은 아래와 같이 3단계로 나뉘는데요.

  1. 최상위 도메인 : 국가를 나타냄(ex. kr, jp, cn 등)
  2. 2단계 도메인 : 사이트의 특성(ex. co = 회사, go = 정부 기관 등)
  3. 희망 문자열 : 사용자가 원하는 정보(ex. facebook. tistory 등)

즉 브라우저에 이렇게 도메인을 입력하면 우리가 원하는 사이트로 이동이 됩니다.

하지만 컴퓨터는 이런 도메인을 주소로 사용하는 것이 아닌 IP주소로 나타냅니다.

아래와 같이 IPv4와 IPv6로 나뉘는데요. 자세한 정보는 나중에 찾아보시면 되고요.

간단하게 cmd에서 ipconfig를 치시면 본인의 컴퓨터의 IP주소를 확인할 수 있습니다.

위에 예시로 든 192.168.5.18이라는 주소가 컴퓨터 주소입니다.

그런데 인터넷을 검색할 때 위의 IP주소를 매번 외우면서 입력하지 않아도 도메인만을 입력해도 통신이 되는데요.

이는 도메인 주소를 IP주소로 변경해주는 DNS 서비스가 동작하기 때문입니다.

간단한 동작 원리는 아래를 참고하시면 되는데요.

DNS서비스

이는 우리가 할머니 집의 주소를 세부 주소까지 말하지 않아도, 가족끼리는 알고 있기 때문에

할머니집 이러면 ㅇㅇ면 ㅇㅇ리 ㅇㅇ번지라는 주소를 자동으로 떠올리는 것과 동일하다고 할 수 있습니다.

사용자가 인터넷 웹 브라우저에 www.facebook.com이라고  도메인을 치면

컴퓨터는 DNS 서버에 facebook.com을 질의해서 페이스북의 IP주소를 반환해서 통신이 되게 됩니다.

그러면 인터넷에서 해당 IP주소는 어떻게 찾게 되는 걸까요?

통신에 필요한 장비인 라우터는 컴퓨터의 위치를 광고하여 해당 위치로 안내하게 되는데요.

즉 우리가 길 찾는 것에 비유하면 

아까 할머니 집을 가기 위해서 Tmap과 같은 내비게이션 어플에 주소를 치면 경로를 알려주는 것을

라우팅이라고 합니다.

라우팅

실제 컴퓨터에서 동작하는 것은 아래와 같이 동작합니다.

실습을 통해서 테스트해보시려면 아래와 같은 Packet Tracer를 통해서

IP 라우팅이 어떻게 되는지도 알아볼 수 있습니다.

2015.09.02 - [Tip & Tech/IT] - [쉬운IT] Packet Tracer를 활용한 IP 실습

 

[쉬운IT] Packet Tracer를 활용한 IP 실습

[쉬운IT] Packet Tracer를 활용한 IP 실습 준비물 : Packet Tracer, IP 기초 지식 연관 게시물 :  오늘은 Packet Tracer를 이용한 IP 구성 실습을 배워보겠습니다.  CCNA때 Packet Tracer를 사용해보고 오랫만에..

dorudoru.tistory.com

IP Routing

BGP를 설명하기 위해서 여기까지 설명하였는데요. 생각보다 긴 설명이 되었네요.

이때 이제 드디어 문제의 BGP가 등장합니다.

BGP는 Border Gateway Protocol의 약자인데요.

BGP는 각 인터넷 서비스 제공회사끼리의 라우팅 제공 프로토콜입니다.

즉 저 수많은 라우팅 경로를 서로에게 알려주는 것이라고 생각하시면 됩니다.

bgp

이 부분은 해외에서 직구할 때 예를 들어 알리에서 직구를 한다고 하면

중국에서 주소에 KR이라고 들어가면 다 한국으로 보내주라고 광고하는 것과 같습니다.

그렇게 중국이라는 AS에서 한국이라는 AS로 데이터를 넘겨주게 됩니다.

한국이라는 AS에서는 우리의 주소체계를 통해서 택배를 라우팅 하게 되죠.

2021.04.20 - [Tip & Tech/Shopping] - 알리익스프레스 한국 주소 쓰기

 

알리익스프레스 한국 주소 쓰기

알리익스프레스란? Aliexpress는 Alibaba Group이 2010년에 만든 중국에 기반을 둔 온라인 쇼핑몰 서비스입니다. 무엇보다 다양한 제품을 해외 온라인 구매자에게 싼 가격으로 제공해서 인기인데요. 특

dorudoru.tistory.com

페이스북 장애 원인 BGP

이번 페이스북의 장애 원인은 이 BGP 설정을 잘못하였을 것으로 추정하고 있습니다.

페이스북은 전체 서비스가 다운돼서

정말 굴욕적이게 자사 서비스의 장애를 경쟁사인 트위터를 통해서 알릴 수밖에 없었습니다.

페이스북 장애

즉 위에 중국에서 직구할 때 kr이라고 써진 주소(도메인)가 있으면 한국으로 보내주라고 보내야 하는데요.

실수로 kr이라는 주소를 북한으로 보내라고 광고한 것입니다;;

즉 택배 보낸 물건이 북한으로 가서 돌아오지 않게 된 것이죠.

이번 페이스북도 BGP에 facebook ip주소를 잘못 광고하여 엉뚱한 라우터로 라우팅 하였을 것으로 추정하고 있습니다.

https://zdnet.co.kr/view/?no=20211005095816 

 

페북·인스타그램은 왜 6시간 동안 멈췄나

‘페이스북 패밀리’가 사상 초유의 서비스 장애로 홍역을 겪었다. 단순히 서비스만 중단된 게 아니었다. 보안 시스템, 내부 일정표, 일정 관리 도구 등 페이스북 내부 시스템도...

zdnet.co.kr

최근 페이스북은 여러 가지 이슈로 인해서 어려움을 겪고 있는데요.

이번 장애의 원인을 잘 파악해서 다시 예전과 같은 명성을 되찾으면 좋겠네요.