
네트워크 엔지니어에게 예고 없이 찾아오는 ‘장애’는 피할 수 없는 숙명과도 같습니다. 단순한 “인터넷이 안 돼요”라는 사용자 불만부터 기업 전체 서비스가 마비되는 크리티컬한 상황까지, 장애의 양상은 매우 다양합니다. 하지만 성공한 엔지니어는 당황하지 않고 체계적인 로직으로 접근하여 MTTR(Mean Time To Repair)을 단축합니다. 본 글에서는 실무 사례를 바탕으로 네트워크 장애를 분석하고 복구하는 프로세스를 심도 있게 다룹니다.
1. 장애 분석의 시작: 범위 확정과 계층별 접근
네트워크 장애가 보고되었을 때 가장 먼저 수행해야 할 작업은 ‘장애 범위(Fault Domain)’를 확정하는 것입니다. 범위가 확정되지 않은 상태에서의 막연한 점검은 시간 낭비일 뿐입니다.
- L1 계층(Physical Layer): 가장 기본적이지만 빈번한 원인입니다. 케이블 단선, 커넥터 접촉 불량, SFP 모듈 장애, 스위치 전원 차단 등을 확인해야 합니다.
- L2 계층(Data Link Layer): 동일 서브넷 내의 통신 장애를 다룹니다. VLAN 설정 오류, MAC 주소 테이블 오버플로우, STP(Spanning Tree Protocol) 루핑 등이 주요 원인입니다.
- L3 계층(Network Layer): 라우팅 이슈를 점검합니다. IP 주소 고갈(DHCP), 정적 라우팅 경로 누락, ACL(Access Control List)에 의한 패킷 드롭 여부를 판단합니다.
2. 실무 사례 1: 브로드캐스트 폭풍(Broadcast Storm)의 공포
사내망에서 갑자기 모든 네트워크 속도가 현저히 느려지거나 장비 접속이 불가능해진다면, 십중팔구 브로드캐스트 폭풍입니다. 이는 주로 L2 스위치 간의 잘못된 연결로 인한 루핑(Looping)에서 비롯됩니다.
2.1 장애 증상과 원인
스위치의 모든 포트 LED가 비정상적으로 빠르게 깜빡이며, 스위치의 CPU 사용률이 100%에 육박합니다. 이는 특정 프레임이 네트워크 상에서 무한히 회전하며 대역폭을 점유하기 때문입니다. 주로 사용자가 임의로 허브를 연결하여 업링크 포트를 루핑시키거나, STP 설정이 누락된 백업 라인에서 발생합니다.
2.2 해결 및 방지책
- STP(Spanning Tree Protocol) 활성화: 모든 스위치에서 STP를 기본적으로 활성화하여 루프 발생 시 자동으로 포트를 차단하도록 설계해야 합니다.
- BPDU Guard 적용: 사용자가 연결되는 포트에 BPDU Guard를 설정하십시오. 허가되지 않은 스위치나 루핑이 감지되면 즉시 해당 포트를
Err-disable상태로 전환합니다. - Storm Control 설정: 포트당 허용되는 브로드캐스트 트래픽의 임계치를 설정하여 네트워크 전체 마비를 방지하십시오.
3. 실무 사례 2: 스위치 다운 및 성능 저하 원인 분석
장비 자체가 다운되는 것은 물리적, 환경적 요인이 큽니다. 단순히 “장비가 낡아서”라고 결론짓는 것은 엔지니어로서 실격입니다.
- 발열과 환경: 서버실의 항온항습기 고장이나 스위치 팬(Fan) 불량으로 인한 과열은 ASIC 칩셋의 연산 오류를 유발합니다.
show environment명령어를 통해 장비의 적정 온도를 상시 모니터링해야 합니다. - 로그 분석(Syslog): 모든 장애는 흔적을 남깁니다. 장비 메모리에 저장된 버퍼 로그를 확인하십시오.
show logging명령어를 통해Internal Error나Memory Allocation Failure가 발견된다면 즉시 장비 교체나 펌웨어 업데이트를 고려해야 합니다. - ARP 스푸핑(Spoofing): 외부 공격자가 게이트웨이의 MAC 주소를 변조하여 트래픽을 가로채는 경우, 스위치는 정상인 것처럼 보여도 실제 통신은 두절됩니다.
Dynamic ARP Inspection (DAI)기능을 통해 보안을 강화하십시오.
4. 장애 대응 실무 체크리스트 (Step-by-Step)
장애 복구 시간을 줄이기 위해 다음 4단계 프로세스를 몸에 익히십시오.
- 현상 파악: 사용자 핑 테스트를 통해 게이트웨이(내부)와 외부(8.8.8.8) 통신 가능 여부를 구분합니다.
- 경로 추적:
traceroute명령어를 사용하여 패킷이 어느 홉(Hop)에서 드롭되는지 지점을 특정합니다. - 인터페이스 통계 확인:
show interface [name]명령어로 입출력 패킷의 에러(CRC, Giants, Runt)를 확인합니다. 에러가 많다면 물리적 케이블이나 인터페이스 불량입니다. - 설정 변경 이력 확인: 장애 발생 직전 엔지니어의 설정 변경이 있었는지 확인합니다.
show archive config differences등을 활용하십시오.
5. 결론: 장애 대응의 끝은 ‘보고서’와 ‘자동화’
장애가 해결되었다고 업무가 끝난 것이 아닙니다. 동일한 장애의 재발을 막는 것이 진정한 고수의 실력입니다.
- 사후 분석 보고서(Post-mortem): 장애의 근본 원인(Root Cause), 조치 과정, 향후 예방책을 반드시 문서화하십시오. 이는 추후 유사 장애 발생 시 최고의 지식 베이스가 됩니다.
- 모니터링 자동화: SNMP나 Zabbix, PRTG와 같은 툴을 연동하여 임계치 초과 시 즉시 담당자에게 알람이 가도록 시스템을 구축하십시오.
네트워크 장애 분석 역량은 곧 해당 엔지니어의 연봉과 직결됩니다. 이론에 그치지 말고 실제 장비의 로그를 분석하고 시뮬레이션하는 습관을 지니시길 바랍니다.