KT 장애는 ‘예견된 사고’…작업자 ‘실수’ 막을 안전장치도 없었다

김은경 기자 (ek@dailian.co.kr)
입력 2021.10.29 15:00 수정 2021.10.29 14:41

라우팅 설정명령 입력과정서 ‘exit’ 명령어 누락

안전장치 없이 전국 연결…장애 범위 연쇄 확산

오류 시뮬레이션 시스템 구축 등 재발방지 착수

최근 발생한 KT 인터넷 장애의 직접적인 원인은 작업자의 단순 실수에 의한 것으로 드러났다. 문제는 회사가 이를 막을 안전장치를 마련해두지 않았다는 점이다. 야간에 승인된 작업이 주간에 진행되는 등 관리·감독이 제대로 이뤄지지 않으면서 예견된 사고였다는 지적이 나온다.


과학기술정보통신부는 29일 KT 네트워크 장애 사고 원인 조사 결과를 발표했다.


이번 장애는 지난 25일 오전 11시 16분부터 12시 45분까지 약 89분 동안 발생했다. 장애 발생 시점부터 도메인 주소를 인터넷(IP) 주소로 변환하는 KT 도메인 네임 시스템(DNS) 서버에서 트래픽이 급증하기 시작했다.


서울 종로에 있는 중앙 1차 DNS는 평소 대비 22배, 중앙 2차 DNS(혜화)는 4배, 부산 DNS는 3.7배 이상 급증했다. 단, 시스템 자원 디도스 공격이나 네트워크 대역폭 공격은 확인되지 않았다.


사고 로그기록을 분석한 결과 부산국사에서 기업 망 라우터 교체 작업 중 작업자가 잘못된 설정 명령을 입력했고, 이후 라우팅 오류로 인해 전국적인 인터넷 장애가 발생한 것으로 드러났다.


인터넷 서비스가 제공될 때 PC·스마트폰 등 개인 접속단말은 지역라우터, 센터라우터 등을 거쳐 국내외 네트워크로 연결된다. 이 때 정상적인 연결을 위해서는 이용자 단말과 접속 대상 IP 주소 사이에 있는 다수의 라우터 경로정보가 필요하다.


라우터는 네트워크 경로정보를 구성하기 위해 최신의 경로정보를 라우터끼리 교환(업데이트)하는 프로토콜을 사용한다. KT는 외부 네트워크 경로를 구성할 때 BGP(이하 외부) 프로토콜을 , 내부 경로 구성에는 IS-IS(이하 내부) 프로토콜을 사용한다. 라우터는 이렇게 외부와 내부 프로토콜을 통해 교환한 경로정보를 종합해 최종 라우팅 경로를 설정한다.


작업 내역을 확인한 결과 라우터에 설정 명령어를 입력하는 과정에서 내부 프로토콜 명령어를 마무리하는 부분에 ‘exit’ 명령어가 누락됐다. 이 탓에 외부에서 교환해야 할 경로정보가 내부 프로토콜로 전송되면서 사고가 난 것이다.


임혜숙 과학기술정보통신부 장관이 지난 26일 오후 KT 네트워크관제센터를 방문해 이철규 KT 부사장으로부터 인터넷 장애 관련 원인과 재발방지 대책 등의 설명을 듣고 있다.ⓒ과학기술정보통신부

통상 1만개 내외의 정보를 교환하는 내부 프로토콜에 수십만개의 외부 정보가 잘못 전송되면서 라우팅 경로에 오류가 발생하게 됐다. 문제는 ‘안전장치’가 없어 장애가 전국으로 확산됐다는 점이다.


내부 프로토콜 내의 라우터들은 상호간의 정보 최신화를 위해 자동으로 데이터를 주고받는데, 부산 지역 라우터에 잘못된 라우팅 경로가 설정되면서 다른 지역의 내부 라우터에도 잘못된 업데이트 정보로 전달됐다.


KT 네트워크 내에 있는 내부 프로토콜은 잘못된 데이터에 대한 안전장치 없이 전국을 모두 하나로 연결하고 있었다. 결국 1개 라우터의 잘못된 라우팅 경로 업데이트가 연쇄적으로 전국에 확대된 것이다.


IPTV와 음성전화・문자 서비스망은 인터넷 서비스 망과 별도로 구성돼 있으나, 인터넷 서비스 장애로 인해 전화와 문자 이용이 늘었고, 단말 전원을 리셋한 이용자로 인한 트래픽 증가가 발생해 부하가 가중됐을 것으로 추정됐다. 단말 전원 리셋 시 단말이 망에 다시 등록하므로 추가적인 트래픽이 발생하기 때문이다.


조사반은 KT의 관리적·기술적 문제점을 지적했다. 먼저 관리적 문제점이다. 당초 KT 네트워크관제센터가 오전 1시부터 6시까지 야간작업을 승인했으나 작업이 주간에 수행되는 과정에서 장애가 발생했다.


작업 관리자 없이 KT 협력업체 직원들인 작업자들끼리만 라우팅 작업을 수행하는 등 작업오류를 방지하기 위한 작업관리체계가 부실했으며 네트워크가 연결된 채로 작업이 이뤄졌다.


기술적으로는 사전검증 단계에서 오류를 파악하지 못했다는 문제가 있다. 라우팅 작업계획서상 스크립트에서 명령어가 누락됐음에도 사전 검증 과정에서 발견하지 못했기 때문이다. 1·2차 사전검증 단계가 있긴 했지만 사람이 직접 검토하는 체계이기 때문에 오류를 발견하지 못한 것으로 확인됐다.


네트워크가 차단된 가상 상태에서 오류 여부를 사전에 발견하기 위한 가상 테스트베드도 없었으며 지역에서 발생한 오류가 전국으로 확산하는 것을 차단할 수 있는 시스템도 전무했다.


과기정통부는 이번 조사결과를 바탕으로 주요통신사업자 네트워크의 생존성·기술적·구조적인 대책이 담긴 ‘네트워크 안정성 확보방안’을 마련할 계획이다.


과기정통부 네트워크정책실장을 단장으로 네트워크 전문가 등 관계 전문가들과 태스크포스(TF)를 구성·운영 추진하고 네트워크 안정성 확보방안은 단기대책과 중장기대책을 포괄하는 방안을 검토할 예정이다.


단기 대책으로 주요통신사업자의 네트워크 작업체계, 기술적 오류확산 방지체계 등 네트워크 관리체계를 점검하고 네트워크 작업으로 인한 오류 여부를 사전에 진단할 수 있는 시뮬레이션 시스템을 도입한다.


승인된 작업계획서 내용과 절차가 준수되는지에 대해 네트워크관제센터에서 기술적 점검 체계를 구축하도록 한다. 라우팅 설정오류로 인한 피해를 최소화하기 위해 라우팅 작업을 할 때 한 번에 업데이트되는 경로정보 개수를 일정 수준 이하로 제한하는 방안 등도 검토할 계획이다.


중장기 대책으로는 주요통신사업자의 통신장애 대응 모니터링 체계를 강화하고 네트워크 안정성과 복원력을 높이는 기술개발, 안정적인 망 구조 등 네트워크의 생존성 확보를 위한 구조적 대책 마련 등을 추진할 예정이다.


이용자 피해 보상을 위해 KT는 이용자 피해현황 조사과 피해구제 방안 마련을 추진한다. 방송통신위원회는 이행여부를 점검할 예정이다. 방통위는 통신장애 발생 시 실효성 있는 피해구제를 위한 법령을 마련하고 이용약관을 개선하는 방안을 검토할 계획이다.

김은경 기자 (ek@dailian.co.kr)
기사 모아 보기 >

김은경 기자가 쓴 기사 더보기