{"id":"IL-0539","org":"KT","date":"2021-10-25","docs":[],"title":{"en":"KT's internet service failed nationwide for about 89 minutes as wrong routes spread from one router in Busan","ko":"잘못된 경로 정보가 IS-IS 로 전국 라우터에 퍼져 KT 인터넷이 약 89분 동안 끊겼다"},"domain":["networking"],"impact":{"scope":"KT's internet service nationwide for about 89 minutes; added load on KT's voice and text message networks","users":"unknown","region":"nationwide across KT's network in Korea"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"The investigation named management problems and technical problems. On the management side, work approved for the night was done during the day, partner company workers did the routing work without a work manager, and the work was done with the network still connected. On the technical side, the two pre-verification steps were people reading the script and missed the missing 'exit', there was no virtual testbed for trying the work on a disconnected network, and nothing stopped an error in one region from spreading to the whole country.","ko":"조사반은 이 장애를 관리 문제와 기술 문제로 나눠 정리했다. 승인된 작업 시간은 야간이었지만 작업은 주간에 관리자 없이 네트워크를 연결한 채 진행됐다. 사람이 직접 검토하는 1·2차 사전검증도 빠진 exit 를 찾지 못했다. 설정을 미리 돌려 볼 가상 테스트베드와 한 지역의 오류가 전국으로 번지는 것을 막는 장치가 없어서 라우터 하나의 실수가 전국 장애가 됐다. 정부는 3년 전 KT 아현국사 화재 뒤의 대책이 물리적이고 국지적인 재난에 맞춰져 있었고, 이번 장애는 시스템 전체에 번지는 새로운 종류였다고 밝혔다."},"related":[],"sources":[{"url":"https://www.korea.kr/briefing/policyBriefingView.do?newsId=156477990","kind":"runbook","archived":null}],"summary":{"en":"KT's routers build their routing tables from two protocols: BGP (Border Gateway Protocol) for routes between KT's network and outside networks, and IS-IS (Intermediate System-to-Intermediate System) for routes inside KT's network. On 25 October 2021, partner company workers were replacing an enterprise network router in KT's Busan office, a grade C facility, working remotely from the Busan communication center, a grade A facility. The network operations center had approved the work for 01:00 to 06:00 on 26 October, but it was done during the day on 25 October, by partner company staff without a KT work manager present and with the network still connected. The KT manager and the partner company staff agreed together to work during the day, and the manager was away on other work.\n\nThe routing configuration script in the work plan lacked the 'exit' command that should have closed the IS-IS commands. The ministry understood that such scripts are written by the partner company and KT staff together, and KT staff checked this one in a first and a second pre-verification, both done by people reading it, without finding the omission. There was no virtual testbed to run the work on a disconnected network first. Without the 'exit', the following commands were joined to BGP, so route information meant to be exchanged by BGP was sent into IS-IS. IS-IS normally exchanges about 10,000 entries in KT's network; hundreds of thousands of BGP entries were loaded into it, and the routing paths went wrong. IS-IS routers exchange updates automatically, so the wrong routes set on the Busan router reached IS-IS routers in other regions. KT's IS-IS connects the whole country as one network with no safeguard against wrong data, and there was no system to stop a regional error from spreading nationwide, so the mistake on one router spread to routers across the country. The joint investigation team of the Ministry of Science and ICT and outside experts also ruled out a DDoS attack from IP patterns and traffic.\n\nRecovery began at 11:57. KT first isolated the router where the problem started, then logged in to each regional router, checked it, deleted the faulty processes and brought them back up. The ministry issued a level 2 alert, of four levels, at 11:56, and KT reported recovery complete at 12:45.","ko":"KT 는 외부 네트워크와 경로를 주고받을 때 BGP 를, KT 내부 네트워크의 경로를 구성할 때 IS-IS 를 쓴다. 2021년 10월 25일 KT 부산국사에서 기업망 라우터를 교체하던 작업자가 라우팅 설정 스크립트에서 IS-IS 설정을 끝내는 exit 명령을 빠뜨렸다. 이 때문에 BGP 에서 교환할 경로 정보가 IS-IS 로 전송됐다. IS-IS 는 보통 1만 개 안팎의 경로 정보를 교환하는데, 여기에 수십만 개의 BGP 경로 정보가 올라가면서 라우팅 경로에 오류가 생겼다. IS-IS 라우터들은 서로 정보를 자동으로 주고받아 갱신하고, KT 의 IS-IS 는 잘못된 데이터 전달을 막는 장치 없이 전국을 하나로 연결하고 있었다. 그래서 부산 라우터 하나의 잘못된 경로가 전국 라우터로 연쇄 전파됐다.\n\n장애는 11시 16분쯤 DNS 트래픽 증가로 시작했다. KT 는 11시 20분에 장애를 알아챘고 처음에는 DDoS 공격을 의심했다. 11시 40분 정부에 신고했고 11시 44분 라우팅 오류로 판단했다. 정부는 11시 56분 2단계 경보를 발령했고, 11시 57분 복구가 시작돼 12시 45분 복구 조치가 끝났다. 서비스 장애는 약 89분이었다. 복구는 문제 라우터를 먼저 고립시킨 뒤, 지역 라우터마다 접속해 문제가 된 프로세스를 지우고 다시 살리는 순서로 진행했다. KT 는 이용자에게 장애를 홈페이지에 공지했고, 문자 안내는 늦었다.\n\n과학기술정보통신부와 민간 전문가로 꾸린 사고조사반은 관리 측면과 기술 측면의 문제를 밝혔다. KT 네트워크 관제센터가 승인한 작업 시간은 10월 26일 1~6시 야간이었지만, 작업은 KT 관리자와 협력업체 직원의 합의로 25일 주간에 진행됐다. 관리자는 다른 업무로 자리를 비웠고, 협력업체 직원들끼리 A급 시설인 부산통신센터에서 C급 시설인 부산국사의 라우터를 원격으로 작업했다. 네트워크는 연결된 채였다. 스크립트에서 exit 가 빠진 것은 KT 직원의 1·2차 사전검증에서도 걸러지지 않았다. 이 검증은 사람이 직접 검토하는 방식이었다. 망과 분리된 가상 테스트베드에서 미리 돌려 보는 단계가 없었고, 한 지역의 오류가 전국으로 번지는 것을 막는 시스템도 없었다."},"trigger":{"en":"During the replacement of an enterprise network router at KT's Busan office, worked on remotely from the Busan communication center, a worker entered a routing configuration script that lacked the 'exit' command that should have ended the IS-IS part of the configuration.","ko":"KT 부산국사에서 기업망 라우터를 교체하던 작업자가 IS-IS 설정 명령을 마무리하면서 exit 명령을 빠뜨렸다. 그 바람에 뒤의 설정이 BGP 와 연결돼, BGP 로 주고받아야 할 경로 정보가 IS-IS 로 전송됐다."},"severity":"unknown","symptoms":["network-unreachable","service-unavailable"],"timeline":{"detected_after":"4m","resolved_after":"1h 29m"},"date_kind":"incident","detection":{"en":"KT recognised the internet outage at 11:20, four minutes after DNS traffic began to surge at 11:16. The Ministry of Science and ICT saw the traffic increase in its own monitoring, and KT reported the outage to the ministry at 11:40.","ko":"11시 16분부터 DNS 서버 트래픽이 급증했고, KT 는 11시 20분에 인터넷 장애를 알아챘다. 정부도 네트워크 트래픽 모니터링에서 트래픽 증가를 보고 현장에 나가 조사했다. KT 는 처음에 DDoS 공격을 의심했다가 11시 44분 라우팅 오류로 판단했다."},"components":["igp-routing","bgp"],"root_cause":"config-change","remediation":[{"text":{"en":"Isolated the router where the faulty routing configuration was entered","ko":"먼저 문제가 된 부산 라우터를 망에서 고립시켰다."}},{"text":{"en":"Logged in to each regional router, deleted the faulty processes and restarted them","ko":"망이 더 나빠지지 않는 상태를 만든 뒤 지역 라우터마다 접속해 확인하고, 문제가 된 프로세스를 지우고 다시 살려 정상화했다."}}],"action_items":[{"text":{"en":"Check the network management of major carriers, including their work procedures and the systems that stop technical errors from spreading","ko":"주요 통신사업자의 네트워크 작업 체계와 기술적 오류 확산 방지 체계 같은 네트워크 관리 체계를 점검한다."}},{"text":{"en":"Consider having major carriers introduce simulation systems that diagnose errors from network work in advance","ko":"주요 통신사업자가 네트워크 작업으로 생길 오류를 미리 진단하는 시뮬레이션 시스템을 도입하도록 검토한다."}},{"text":{"en":"Have the NMS center and network operations center of each major carrier check technically that approved work plans are followed","ko":"주요 통신사업자는 승인된 작업계획서의 내용과 절차를 지켰는지 NMS센터와 네트워크관제센터에서 직접 기술적으로 점검하는 체계를 갖춘다."}},{"text":{"en":"Strengthen safeguards in routing work, such as limiting the number of route entries updated at once below a set level","ko":"라우팅 작업 때 한 번에 갱신되는 경로 정보의 개수를 일정 수준 이하로 제한하는 식으로 안전장치를 강화한다."}},{"text":{"en":"Strengthen the monitoring of carriers' outages and develop technology, including AI-based preventive diagnosis, for network stability and resilience","ko":"통신 장애 모니터링 체계를 강화하고, AI 로 예방 진단과 대응을 더 빠르게 하는 기술처럼 네트워크의 안정성과 복원력을 높이는 기술을 개발한다."}},{"text":{"en":"Prepare structural measures for a stable network architecture and network survivability","ko":"안정적인 망 구조와 네트워크 생존성을 확보하는 구조적 대책을 추진한다."}},{"text":{"en":"Let carriers notify users of outages through SNS, text messages and other means, not only the website","ko":"장애를 홈페이지 공지에 그치지 않고 SNS 와 문자를 비롯한 여러 수단으로 알릴 수 있게 고친다."}}],"contributing":["review-missed","no-config-tests","change-in-peak-hours","blast-radius-too-wide"],"recurrence_of":null,"symptoms_text":{"en":"On 25 October 2021 from about 11:16, traffic to the DNS servers in KT's network rose sharply, and then KT's internet service failed across the whole country. KT recognised the internet outage at 11:20, and the outage lasted about 89 minutes until KT finished recovery at about 12:45.\n\nThe DNS server logs showed traffic more than 22 times normal on the central primary DNS, more than 4 times normal on the secondary DNS and more than 3.7 times normal on the Busan DNS. Packet analysis found at most about 15 DNS queries from any single IP address, only for normal domains such as Naver and Daum, and no repeated queries for changing, nonexistent domains. The incoming traffic reached at most 8% of the central primary DNS server's bandwidth and 28% of the Busan DNS server's bandwidth.\n\nFrom around 11:20, KT first suspected a DDoS attack, and the outage was widely taken for a cyber attack. KT reported the outage to the Ministry of Science and ICT at 11:40 and at 11:44 told the ministry that it was a routing error, not a DDoS attack. The ministry, which had also seen the traffic increase in its own monitoring and sent investigators, judged from packet analysis that it was not a DDoS attack. Firewalls did not act, because they block attacks from outside and do not stop a configuration error made inside the network.\n\nKT's IPTV, voice and text message networks are separate from its internet network, but the investigation estimated that load on the voice and text networks grew as people turned to calls and texts and as many users reset their devices. During recovery, logging in to routers in the regions was difficult because the internet itself was not working.","ko":"2021년 10월 25일 11시 16분쯤부터 KT 의 DNS 서버로 들어오는 트래픽이 갑자기 늘었고, 이어서 전국에서 KT 인터넷이 끊겼다. KT 는 11시 20분에 인터넷 장애를 알아챘다.\n\nDNS 서버의 트래픽은 평시와 비교해 중앙 1차 DNS 에서 22배 이상, 2차 DNS 에서 4배 이상, 부산 DNS 에서 3.7배 이상 늘었다. 대역폭으로 보면 중앙 1차 DNS 서버 대역폭의 최대 8%, 부산 DNS 서버 대역폭의 28% 수준이었다. IP 하나가 보낸 DNS 질의는 많아야 15개 정도였고, 네이버나 다음 같은 정상 도메인을 묻는 질의뿐이었다.\n\n부산 지역 라우터에 잘못된 라우팅 경로가 설정된 뒤, 같은 IS-IS 프로토콜로 묶인 다른 지역 라우터에도 잘못된 갱신 정보가 전달됐다. 라우터 하나의 오류가 전국 라우터에 연쇄로 번졌다. 인터넷 자체가 잘 되지 않아 복구하는 쪽에서도 지방에 있는 라우터에 접속하기 어려웠다.\n\nIPTV 와 음성·문자 서비스망은 인터넷 서비스망과 따로 구성돼 있었다. 그런데도 인터넷이 끊기자 전화와 문자 사용이 늘고 단말 전원을 껐다 켜는 이용자가 많아져, 음성·문자망의 부하도 커졌을 것으로 조사반은 추정했다.\n\nKT 는 처음 11시 20분대에 DDoS 공격을 의심했고, 장애는 한동안 사이버 공격으로 잘못 알려졌다. KT 는 11시 40분 과학기술정보통신부에 신고했고, 11시 44분에 DDoS 공격이 아니라 라우팅 오류라고 판단해 알렸다. 정부 조사반은 패킷과 트래픽을 분석해 DDoS 공격이 아니라고 결론 내렸다. 방화벽은 외부 공격을 막는 장치여서, 내부에서 생긴 설정 오류에는 작동하지 않았다."},"updated_at":"2026-11-14T12:34:18.217778Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0539","org_slug":"kt"}