지난 kt 유무선 인터넷 장애가 일어난 원인을 살펴보고 여기서 건질만한 네트워크 개념이나 이슈를 파악해보자
10월 25일 오전에 갑자기 사내 와이파이가 멈추었다.
주위의 모든 사람들에게 같은 현상이 발견되었고, 일을 해야 했기에 핸드폰(skt 사용)의 핫스팟을 사용하여 작업을 계속 진행하였었다.
한시간 반정도 지났을까 와이파이는 다시 동작하였고 kt의 유무선 인터넷 장애가 그 원인이었다는 것이 확인되었다.
kt에서는 당일 ddos의 공격으로 인해 발생한 현상이었다고 발표했었다. 그러나 다시 내부설정 오류로 인한 것이라고 발표했었던걸로 기억이 난다.
해당 사건에 관한 주요 기사의 인용문을 살펴보자
지난 10월 25일 11시 16분 부터 KT DNS서버에서 평시에 비해 트래픽이 급증하였다.
중앙 1차 DNS(혜화)의 경우 평시 대비 22배 이상, 중앙 2차 DNS(혜화)는 평시 대비 4배 이상, 부산 DNS는 평시 대비 3.7배 이상 증가하는 등 큰 폭의 트래픽 증가가 나타났따.
망 장애가 발생한 통신사가 KT라 피해 규모가 더 컸다. 지난 2월 과학기술정보통신부가 집계한 유선통신 시장점유율에 따르면 KT가 41%로 1위이며, SK텔레콤 29%, LG유플러스 20% 순이다. 특히 KT는 전국적으로 기간통신망을 보유해 주요 공공기관에서 이용하는 인터넷 전용선도 대부분 KT가 서비스한다
“통신 상대가 KT 가입자이거나, 이용하는 서비스 혹은 기업이 KT서버망 혹은 KT 인터넷 센터를 이용 중일 경우 타 통신사 가입자도 서비스 이용에 어려움을 겪었을 수 있다”
사건의 전말을 간략히 살펴보자
1. 부산에서 기업용 라우터를 신규로 교체하는 작업이 이루어졌다.
2. 신규 라우터의 설정명령어 입력과정에서 'exit'명령어 하나가 빠졌다.
3. 이 라우터 설정 오류는 부산의 백본 라우터에 잘못된 정보를 전달했다.
4. 이는 다시 서울의 센터 라우터에 잘못된 정보를 전달했고
5. 타 지역의 백본 라우터에도 잘못된 정보가 전달되어 전국적으로 인터넷을 이용할 수 없었다.
인터넷 서비스가 제공될 때, PC, 스마트폰 등 개인의 접속 단말은 지역 라우터, 센터라우터 등을 거쳐 국내외 네트워크로 연결되는데, 정상적인 연결을 위해서는 이용자 단말과 접속 대상 IP 주소 사이에 있는 다수의 라우터의 경로정보가 필요하다
라우터는 네트워크 경로 정보를 구성하기 위해 최신의 경로정보를 라우터끼리 교환 하는 프로토콜을 사용하는데, KT 네트워크와 내부 네트워크 경로 구성에는 BGP 프로토콜을 사용하고, KT 내부 네트워크 경로 구성에는 IS-IS 프로토콜을 사용한다.
라우터는 이렇게 BGP, IS-IS 프로토콜을 통해 교환한 경로정보를 종합해서 최종 라우팅 경로를 설정하게 된다
그런데 작업자의 라우터 설정 명령어 입력과정에서 Is-Is 프로토콜을 마무리하는 부분에서 'exit' 명령어를 누락했고 이로 인해 BGP 프로토콜에서 교환해야할 경로정보가 IS-IS 프로토콜로 전송되었다.
kt 네트워크에 있는 라우터들을 이어주는 is-is 프로토콜은 안전장치 없이 전국을 모두 하나로 연결하고 있다. is-is 프로토콜로 이어진 라우터들은 상호간의 정보 최신화를 위해 자동으로 데이터를 주고받는다. KT 부산 지사 라우터에 잘못된 라우팅 경로가 설정되면, 서울이나 대전 등 전국 지사의 KT 라우터에도 잘못된 업데이트 정보가 전달되는 식이다. 이번 사태에서 부산에서 서울로, 다시 전국으로 오류가 전달되는 데는 30초가 안걸렸다.
쉽게 말해 원래라면 특정구간이 정체되지 않도록 최적의 경로를 안내해줘야 하는데, 이게 뭔가 잘못되어서 한쪽으로만 몰린 겁니다. 도로도 멀쩡하고, 사고가 난 것도 아닌데 네비게이션이 오작동 해서 교통이 마비된것이죠.
KT는 내부와 외부 네트워크 경로를 구성하는 경우와 내부간 경로를 구성하는 경우의 프로토콜을 각각 다르게 쓰고 있다. 각각 교환해야 하는 경로정보의 총량이 다르기 때문이다. 내부와 외부를 연결하는 경우 BGP 프로토콜을 사용해 수십만 개 수준의 경로정보를 교환한다. 반면 내부 네트워크 경로를 구성할 때는 IS-IS 프로토콜을 이용한다. 내부 라우터간 경로 정보를 주고받기 때문에 1만 개 이하의 경로정보만이 IS-IS 프로토콜을 통해 교환된다.
KT는 내부와 외부 네트워크 경로를 구성하는 경우와 내부간 경로를 구성하는 경우의 프로토콜을 각각 다르게 쓰고 있다. 각각 교환해야 하는 경로정보의 총량이 다르기 때문이다. 내부와 외부를 연결하는 경우 BGP 프로토콜을 사용해 수십만 개 수준의 경로정보를 교환한다. 반면 내부 네트워크 경로를 구성할 때는 IS-IS 프로토콜을 이용한다. 내부 라우터간 경로 정보를 주고받기 때문에 1만 개 이하의 경로정보만이 IS-IS 프로토콜을 통해 교환된다.
KT의 네트워크 구조
- 코넷망 : KT의 인터넷 백본 네트워크
- 프리미엄망 IPTV, LTE를 위한 네트워크
- 5G : 5G 무선망을 위한 백본 네트워크
코넷망의 라우터중 하나인 부산 지사의 라우터에 설정 오류가 발생했고 코넷망 내부 라우터끼리 잘못된 설정 오류를 서로 업데이트 하였다.
IPTV 서비스망 과 음성전화, 문자 서비스망에 문제가 생겼다고 추측되는 이슈는
인터넷 서비스가 안되면서 음성전화와 문자 이용이 급격히 늘었고,
단말전원을 리셋한 이용자가 급격히 증가하여 트래픽이 급증 한것으로 추정이 된다고 한다(단말전원 리셋시 단말이 망에 다시 등록하므로 추가적인 트래픽 발생)
DNS(Domain Name System) 개요
* (DNS)인터넷은 IP 주소를 이용해 통신을 하게 되는데, 숫자인 IP주소를 외우기 어렵기 때문에 기억하기 쉽도록 문자로 이루어진 도메인을 관리하는 통신 체계
* (DNS 서버) 미리 등록된 도메인에 대한 IP정보를 가지고 있는 서버로, 도메인 주소를 IP 주소로 변환하는 역할 수행
* ISP(Internet Service Provider) 캐시 DNS 서버에 KISA 도메인의 IP 주소가 있을 경우, 사용자 PC로 바로 응답(1,8)
* 캐시 DNS서버에 KISA 도메인의 IP 주소가 없을 경우, 2~7 수행한 후 사용자 PC에 응답
dkrnfls.tistory.co.kr에 접속을 시도하게 되면
root dns 서버에 kr에 관한 ip 주소를 받아오게 되고
kr dns 서버에 co에 관한 ip 주소를 받아오게 되고
co dns 서버에서 dkrnfls.tistory에 관한 ip 주소를 받아오게 되는것이다.
인터넷의 개념
* 정보를 담고 있는 각 컴퓨터들을 TCP/IP 통신 프로토콜을 이용해 서로 정보를 주고받도록 한 컴퓨터 네트워크
인터넷 작동원리
* 컴퓨터간 통신이 필요할 때 물리적(케이블 선) 또는 무선(wifi, bluetooth)으로 연결 가능, 여러 컴퓨터를 연결해야할 시는 비효율이 바랭할수 있다.
* 이런 비효율을 해결하기 위해 라우터가 등장, 컴퓨터와 컴퓨터의 연결을 라우터와 컴퓨터의 연결로 대체
* 단일 라우터로 더 많은 연결에 한계가 존재하여 라우터와 라우터 연결을 통한 네트워크 확장 가능
라우터 역할 및 동작 방식
* 라우터는 인터넷 상에서 IP(인터넷 프로토콜)주소를 부여받은 장치간 통신을 위하여 인터넷 트래픽을 전달하는 역할 수행
-> PC, 노트북, 스마트폰과 같은 사용자 단말과 네이버, 구글 서비스 제공 서버등 인터넷에 연결되어 있는 다양한 형태의 시스템
* 인터넷은 전세계 다양한 규모의 자율 관리 네트워크의 연결로 구성됨
-> 자율 시스템(AS, Autonomous System)이라고 부르며 동일한 사업자/관리자에 의해서 동일한 정책으로 관리
-> KT의 경우 일반 인터넷 백본 네트워크, IPTV/LTE를 위한 프리미엄 네트워크, 5G 백본 네트워크가 각각 다른 AS로 관리되고 있음
* 라우팅 프로토콜은 라우터 간 메시지 교환을 통하여 IP주소에 따른 경로정보를 관리하며, 경로정보의 범위가 AS 내부인지 외부인지에 따라서 IGP와 EGP로 구분
구분 | 설명 | 종류 |
IGP(Interior Gateway Protocol) | 동일한 AS내 라우터 간 경로정보 교환을 위한 라우팅 프로토콜 | IS-IS |
EGP(Exterior Gateway Protocol) | AS 외부 경로정보 교환을 위한 라우팅 프로토콜 | BGP |
* 하나의 라우터에 여러 종류의 라우팅 프로토콜이 동시에 구동이 되며, 라우터 간 라우팅 메시지 교환은 동일한 종류의 라우팅 프로토콜 간 이루어 짐
이후 나온 대책
21년 12월 30일에 발표된 네트워크 안정성 확보방안 마련 내용
youtube 보도 자료 : https://www.youtube.com/watch?v=_IulWEXqyBw
정리 내용 :
- 라우팅 테이블에서 필터링을 추가해서 미리 선언되지 않은 종류의 라우팅이 라우팅 테이블에 업데이트 되는것을 방지합니다.
(is-is 라우팅 테이블에 bgp 라우팅이 업데이트 되는 경우는 사라질 것으로 보입니다)
- kt의 통신망에 에러가 생길경우 타사의 통신망을 이용하여 통신할 수 있게 합니다. 이는 다른 통신사의 서비스에 장애가 생겼을때도 마찬가지 입니다.
용어 정리
패킷: 데이터를 주고받을때 네트워크를 통해서 전송되는 데이터 조각
라우터: 네트워크 간에 데이터 패킷을 전송하는 네트워크 장치
백본라우터: 거점이 되는 라우터로 이해하면 될것 같다
라우팅: 통신 데이터를 보낼때 최적의 경로를 선택해서 전송할 수 있게 해주는 과정, (쉽게 말해 경로 설정, 자동차 내비게이션, 신호등)
프로토콜: 데이터 교환 방식을 정의하는 규칙
BGP(Border GateWay Protocol) 프로토콜: 대규모 네트워크 사이에서 패킷을 전달하는 방법에 대한 규칙, 수십만 단위
IS-IS(Intermediate System to Intermediate System) 프로토콜: 내부 라우터간 경로정보를 주고받는 프로토콜, 1만개 이하 단위
출처 :
https://www.chosun.com/economy/economy_general/2021/10/30/TVGA6W4XQRBPRPYXU5QU7PEFHY/
https://m.khan.co.kr/economy/economy-general/article/202110291500011#c2b
https://www.edaily.co.kr/news/read?newsId=02591206629217840&mediaCodeNo=257 https://www.etoday.co.kr/news/view/2073503
https://m.khan.co.kr/economy/economy-general/article/202110251426001#c2b
https://enlqn1010.tistory.com/9
과학기술정보통신부 보도자료(과기정통부, 케이티(KT) 연결망(네트워크) 장애 원인분석 결과 발표)
'네트워크' 카테고리의 다른 글
쿠키, 세션 🔥 (0) | 2022.04.11 |
---|---|
CORS 🔥 (0) | 2022.04.03 |
OSI 7 layer 🌱 (0) | 2022.04.01 |
로컬에서 CORS policy 관련 에러가 발생하는 이유 😃 (0) | 2022.03.21 |
REST API URI를 설계하는 7가지 규칙 (0) | 2022.02.21 |