2020년에 검토된 5가지 최고의 SNMP 네트워크 모니터링 소프트웨어
최고의 기술자도 자신의 도구만큼 뛰어날 수 없습니다. 이는 네트워크 관리 분야를 포함하여 다양한 영역에 적용되는 격언입니다. 운 좋게도 네트워크 관리자에게는 다양한 작업을 지원하는 유용한 도구들이 많이 있습니다. 그중에서도 모니터링은 필수적인 작업이며, 이를 위해 다양한 종류의 도구를 사용할 수 있습니다. NetFlow Analyzer나 S-Flow Analyzer는 네트워크 활동에 대한 명확한 가시성을 제공하지만, 이번에는 SNMP(단순 네트워크 관리 프로토콜) 네트워크 모니터링에 초점을 맞추고자 합니다. SNMP는 모니터링 도구가 네트워크 장비 및 서버를 비롯한 다양한 장치에서 작동 메트릭을 읽어올 수 있도록 해주는 통신 프로토콜입니다. 시장 조사 끝에, 최고의 SNMP 네트워크 모니터링 도구 5가지를 선정하여 상세히 살펴보겠습니다.

본격적으로 최고의 SNMP 네트워크 모니터링 도구를 소개하기 전에, SNMP가 무엇이며 어떻게 작동하는지 먼저 간략하게 설명하겠습니다. 전문적인 기술 문서가 아닌 만큼, 최대한 이해하기 쉬운 설명을 제공하고자 합니다. 우리의 목표는 네트워크 모니터링 도구가 어떻게 작동하는지에 대한 전반적인 그림을 제시하여 이해를 돕는 것입니다. 특히 네트워크 모니터링 맥락에서 SNMP에 대해 자세히 알아볼 것입니다. 결국 이것이 이 글의 핵심 아니겠습니까? 이론적인 부분을 다룬 후에는 엄선된 5가지 최고의 SNMP 네트워크 모니터링 도구를 상세히 살펴보겠습니다.
SNMP 개요
SNMP에 대한 여러 설명은 마치 복잡한 주제처럼 느껴지게 만들 수 있습니다. 물론 이유가 있습니다. 실제로 복잡한 면도 있기 때문입니다. 그러나 자동차를 운전하기 위해 정비사가 될 필요가 없는 것처럼, 모니터링 도구를 구성하기 위해 반드시 SNMP 전문가가 될 필요는 없습니다. 다만 작동 원리를 이해하고 비교할 수 있을 정도면 충분합니다. 사실, 네트워크 모니터링의 맥락에서 보면 그렇게 복잡한 개념은 아닙니다. 좀 더 자세히 알아보도록 하겠습니다.
SNMP 프로토콜은 주로 외부 장치(편의상 SNMP 관리자라고 함)가 SNMP를 지원하는 장치에서 정보를 읽고, 필요한 경우 정보를 쓸 수 있도록 하는 데 사용됩니다. 스위치, 라우터와 같은 네트워크 장비나 서버 및 기타 네트워크 연결 장비들이 여기에 해당됩니다. 이러한 장치들은 읽기 전용 또는 읽기-쓰기 모드로 특정 매개변수를 제공할 수 있습니다. 예를 들어, SNMP 지원 프린터는 잉크 카트리지 잔량이나 총 인쇄 매수와 같은 읽기 전용 매개변수를 가질 수 있습니다. 마찬가지로 SNMP 지원 서버는 CPU 사용률, 사용 가능한 디스크 공간, 시스템 온도와 같은 매개변수를 가질 수 있습니다. SNMP 관리자는 SNMP 지원 장치와 통신하기 위해 get 요청을 사용하여 매개변수를 읽거나 쓸 수 있습니다.
MIB 및 OID
MIB(Management Information Base)는 특정 장치의 각 매개변수를 식별하는 특수 텍스트 파일입니다. 모든 SNMP 지원 장치에는 해당 MIB가 있습니다. 모든 장치에 개별적인 MIB가 있는 것은 아닙니다. 예를 들어, 시스코 스위치의 경우 대부분의 모델을 포괄하는 MIB가 있습니다. MIB에는 해당 장치에서 사용 가능한 모든 SNMP 매개변수의 계층적 목록이 포함되어 있습니다. 다음은 MIB 항목의 일반적인 예입니다.
Iso(1).org(3).dod(6).internet(1).private(4).transition(868).products(2).chassis(4).card(1).slotCps(2)-cpsSlotSummary(1).cpsModuleTable(1).cpsModuleEntry(1).cpsModuleModel(3).3562.3
점으로 구분된 각 요소는 마치 저장 장치 트리의 디렉토리처럼 계층 구조의 한 단계를 나타냅니다. MIB 파일에는 이러한 항목이 수백 개씩 포함될 수 있습니다. 각 텍스트 값 옆의 괄호 안의 숫자를 눈여겨보셨을 것입니다. 이는 관리자와 클라이언트 간의 통신을 간소화하는 데 사용됩니다. 예를 들어, 관리자는 위에서 제시된 매개변수를 참조하기 위해 문자열 1.3.6.1.4.868.2.4.1.2.1.1.1.3.3562.3을 사용할 수 있습니다. 이렇게 하면 대역폭 사용량이 줄어든 더 작은 요청을 보낼 수 있습니다. 이러한 문자열은 텍스트를 사용하든 숫자만 사용하든 관계없이 OID(객체 식별자)라고 합니다.
SNMP 관리자가 SNMP 지원 장치에서 매개변수를 가져오거나 설정하려면 해당 장치의 MIB 파일에 액세스할 수 있어야 합니다. 대부분의 SNMP 관리 또는 모니터링 소프트웨어에는 이미 모든 표준 MIB와 주요 제조업체의 인기 있는 MIB가 내장되어 있습니다. 소프트웨어의 내장 MIB에 포함되지 않은 특정 장치 OID에 액세스해야 하는 경우, 해당 MIB를 직접 추가해야 합니다. 일반적으로 장비 제조업체의 웹사이트에서 MIB 파일을 다운로드하여 소프트웨어의 MIB 디렉토리에 복사하는 과정이 필요합니다.
SNMP는 인터넷 보안이 지금처럼 중요해지기 훨씬 전인 1988년에 처음 만들어졌습니다. 따라서 프로토콜 자체에 내장된 보안 기능은 그다지 많지 않습니다. SNMP는 암호화를 사용하지 않으며, 매우 기본적인 인증 메커니즘을 사용합니다. 관리자가 보내는 모든 SNMP 요청에는 커뮤니티 문자열이 포함되어 있습니다. 이는 일종의 기본 암호와 같습니다. 요청의 커뮤니티 문자열은 대상 장치의 커뮤니티 문자열과 일치해야 합니다. SNMP 지원 장치에서 관리자는 읽기 전용 및 읽기-쓰기라는 두 가지 유형의 커뮤니티 문자열을 구성할 수 있습니다. 기본적으로 많은 장치에서 읽기 전용 커뮤니티 문자열로 "public"을, 읽기-쓰기 커뮤니티 문자열로 "private"을 사용했습니다. 아직도 그렇게 설정된 경우가 많습니다. 이는 SNMP에서 보안이 우선순위가 아니었음을 보여주는 명확한 증거입니다.
네트워크 모니터링에 SNMP 사용
네트워크 모니터링을 위해 SNMP를 사용할 때는 소수의 OID만이 중요합니다. 그중에서도 주로 게이지와 카운터라는 두 가지 유형이 있습니다. 게이지 유형 OID는 프로세서 사용률이나 사용 가능한 메모리 비율과 같은 항목에 사용됩니다. 카운터 유형 OID는 장치 인터페이스를 통해 주고받는 바이트 수를 계산하거나 인터페이스 입력 및 출력 오류를 계산하는 데 사용됩니다. SNMP 지원 네트워킹 장비에는 인터페이스당 하나의 게이지 유형 OID 세트가 있습니다.
일반적인 SNMP 모니터링 도구는 정기적인 간격(보통 5분)으로 관련 OID 값을 읽습니다. 게이지 유형 OID의 경우 일반적으로 값을 데이터베이스에 저장하고 대시보드에 숫자 또는 그래프 형태로 표시합니다. 일부 도구는 시간 경과에 따른 매개변수 변화를 그래프로 표시합니다.
카운터 유형 OID의 경우는 좀 더 복잡합니다. 인터페이스를 통해 주고받는 바이트 수 자체는 흥미로운 지표가 아니므로, 이를 그대로 사용하는 대신 인터페이스의 대역폭 사용률을 초당 비트 수로 계산하는 데 사용됩니다. 마찬가지로 초당 오류율은 누적 오류 수보다 훨씬 더 흥미로운 매개변수입니다.
작동 방식은 다음과 같습니다. SNMP 모니터링 도구는 동일한 5분 간격으로 카운터 값을 읽습니다. 값을 데이터베이스에 저장하지만, 그대로 표시하는 대신 몇 가지 계산을 수행합니다. 먼저 현재 값에서 이전 값을 빼서 지난 5분 동안 주고받은 바이트 수를 구합니다. 이 숫자에 8(바이트당 비트 수)을 곱하고, 5분 동안의 초 수인 300으로 나누어 지난 5분 동안의 평균 대역폭 사용률을 얻습니다. 이것이 바로 도구가 그래프에 표시하거나 그릴 값입니다.
여기서 중요한 점은 얻을 수 있는 것이 평균 사용률이라는 것입니다. 예를 들어 100Mbps 인터페이스를 생각해보십시오. 5분 간격 동안 트래픽 수준이 150초 동안은 100Mbps이고 나머지 150초 동안은 0일 수 있습니다. 이 경우 인터페이스는 5분 동안 절반 시간 동안 최대 사용률을 보였지만 평균 트래픽은 50Mbps로 표시됩니다. 이는 모든 SNMP 모니터링 소프트웨어의 한계입니다.
최고의 SNMP 네트워크 모니터링 소프트웨어 — Top 5
시중에는 수많은 SNMP 모니터링 소프트웨어가 존재합니다. 너무 많아서 하나를 선택하기가 쉽지 않을 수 있습니다. 선택을 돕기 위해 최고의 SNMP 모니터링 소프트웨어 5가지를 선정하여 목록을 만들었습니다. 일부는 상용 소프트웨어이고 일부는 무료 및 오픈 소스입니다. 여기서 검토하는 모든 상용 도구는 무료 평가판을 제공하므로, 원하는 만큼 사용해 볼 수 있습니다.
1. SolarWinds Network Performance Monitor (무료 평가판)
첫 번째로 소개할 도구는 SolarWinds의 강력한 Network Performance Monitor(NPM)입니다. SolarWinds는 네트워크 관리 및 운영을 위한 최고 수준의 소프트웨어 도구를 만드는 회사로 잘 알려져 있습니다. 또한 무료 도구로도 유명하며, 최근에는 최고의 무료 TFTP 서버 또는 최고의 무료 SCP 서버에 대해 논의할 때도 언급되었습니다.

Network Performance Monitor는 기능이 풍부한 전문 SNMP 모니터링 시스템입니다. 사용하기 쉬운 웹 기반 대시보드를 제공하며, 설정 및 구성이 간편하고 무엇보다 뛰어난 성능을 자랑합니다. 이 도구에는 특정 지표가 미리 설정된 값을 초과할 때마다 알려주는 사용자 정의 가능한 경고 기능이 있습니다.
이 도구는 네트워크의 지능형 맵을 구축하고 중요한 경로를 표시하여 문제를 신속하게 해결할 수 있도록 돕습니다. 또한 무선 네트워크 모니터링 및 관리 기능도 내장되어 있습니다. 이 소프트웨어에는 일일이 언급하기 어려울 정도로 많은 기능이 있습니다. 30일 무료 평가판을 통해 이 강력한 도구가 무엇을 할 수 있는지 직접 확인해 보시기 바랍니다.
SolarWinds Network Performance Monitor의 가격은 2,955달러부터 시작하며, 모니터링하는 장치 수에 따라 달라집니다. 소프트웨어는 확장성이 뛰어나서 현재 용량보다 더 많은 장치를 추가해야 할 경우 라이선스를 업그레이드하면 됩니다.
무료 평가판 다운로드: SOLARWINDS Network Performance Monitor
2. ManageEngine OpManager
ManageEngine은 최고 수준의 네트워크 관리 도구 제조업체 중 하나이며, OpManager는 그중에서도 최고의 제품 중 하나입니다. 이 소프트웨어는 Windows 또는 Linux에서 사용할 수 있으며, 풍부한 기능을 제공합니다. 특히 장치를 자동으로 검색하고 네트워크를 매핑하여 고유한 그래픽 대시보드를 제공하는 기능이 돋보입니다. 대시보드는 직관적이고 드릴다운 기능이 있어 사용하기 쉽습니다. 모바일 사용자를 위한 iOS 및 Android용 모바일 클라이언트 앱도 제공합니다.

경고 기능과 관련하여 ManageEngine OpManager는 부족함이 없습니다. 네트워크 문제를 감지, 식별 및 해결하는 데 도움이 되는 다양한 임계값 기반 경고를 제공합니다. 경고 및 알림은 사용자 정의가 가능하며, 모든 메트릭에 대한 다양한 알림으로 여러 임계값을 쉽게 설정할 수 있습니다.
ManageEngine OpManager는 무료, 필수, 엔터프라이즈의 세 가지 버전으로 제공됩니다. 무료 버전은 최대 10개의 장치만 모니터링할 수 있으며 기능도 축소되어 있습니다. 필수 버전은 25개 장치에 대해 715달러부터 시작하며, 최대 1,000개 노드를 모니터링할 수 있습니다. 엔터프라이즈 버전의 경우 최대 10,000개 장치를 모니터링할 수 있으며, 가격은 500개 장치에 대해 19,795달러부터 시작합니다.
3. PRTG
Paessler Router Traffic Grapher(또는 PRTG)는 가장 빠르게 설정할 수 있는 모니터링 도구라고 자부합니다. 제조업체에 따르면 몇 분 만에 실행할 수 있다고 합니다. 실제로는 그보다 시간이 조금 더 걸릴 수 있지만, 여전히 가장 빠르고 쉽게 설치 및 구성할 수 있는 SNMP 모니터링 도구 중 하나입니다. 이 제품은 다양한 사용자 인터페이스를 제공합니다. Windows 엔터프라이즈 콘솔, Ajax 기반 웹 인터페이스, Android 및 iOS용 모바일 앱이 있습니다.

이 제품에는 장치를 감지할 뿐만 아니라 사전 정의된 템플릿을 기반으로 센서를 생성하는 장치 자동 검색 기능이 있습니다. PRTG의 경고 및 알림 기능은 다른 경쟁 제품과 비교해도 손색이 없습니다. 알림은 모바일 클라이언트 앱에 푸시 알림으로 전송될 수 있다는 고유한 장점이 있습니다. 물론 이메일이나 SMS와 같은 "표준" 경고 기능도 함께 제공됩니다.
PRTG의 기본 과금 단위는 모니터링해야 하는 매개변수 또는 메트릭인 센서입니다. 모든 기능을 갖춘 무료 버전은 100개의 센서 모니터링으로 제한됩니다. 더 많은 기능이 필요한 경우 유료 라이선스를 구입할 수 있습니다. 가격은 센서 용량에 따라 500개 센서의 경우 1,600달러에서 무제한 센서의 경우 14,500달러까지 다양합니다.
4. Zabbix
Zabbix는 최고의 엔터프라이즈급 모니터링 플랫폼이라고 주장합니다. 특히 다른 무료 및 오픈 소스 도구와 비교했을 때 더욱 그렇습니다. Zabbix는 가격 대비 성능이 뛰어나다고 할 수 있습니다. SNMP를 사용하여 네트워크 장치뿐만 아니라 로컬 또는 클라우드 기반 서버도 모니터링할 수 있습니다. 대역폭, CPU 및 메모리 사용률, 일반적인 장치 상태, 구성 변경 사항과 같은 다양한 메트릭을 모니터링할 수 있다는 장점이 있습니다.

이 소프트웨어는 이해하기 쉬운 웹 기반 인터페이스와 인상적인 기능 세트를 갖추고 있습니다. 수천 달러 상당의 상용 제품과 비교해도 뒤지지 않습니다. 경고 시스템은 모니터링 이벤트에 의해 트리거된 경고에 대한 응답으로 로컬 스크립트를 실행할 수 있는 기능을 갖춘 시장 최고의 기능 중 하나라고 할 수 있습니다.
Zabbix 자체는 무료이지만, 게시자로부터 다양한 서비스를 구매할 수 있습니다. 여기에는 5단계로 제공되는 기술 지원과 전 세계적으로 강의가 제공되는 완벽한 교육 및 인증 프로그램이 포함됩니다. 커뮤니티 지원도 무료로 제공됩니다.
5. Cacti
SNMP 모니터링 시스템에 대해 이야기할 때 Cacti를 빼놓을 수 없습니다. 몇 가지 단점이 있지만, 가장 많이 사용되고 가장 오래된 무료 오픈 소스 모니터링 플랫폼 중 하나입니다. 일부 상용 제품만큼 기능이 풍부하지는 않지만, 여전히 뛰어난 도구입니다. 웹 기반 사용자 인터페이스는 다소 구식처럼 보일 수 있지만 사용하기는 매우 쉽습니다. Cacti의 핵심에는 빠른 폴러, 고급 그래프 템플릿 및 다양한 수집 방법이 있습니다. 일반적으로 SNMP 폴링을 사용하지만 사용자 정의 스크립트를 사용하여 거의 모든 소스에서 데이터를 가져와 Cacti의 그래프에 표시할 수 있습니다. 사용자 계정을 사용하여 특정 사용자의 장치에 대한 접근 권한을 제한할 수 있으며, 이는 여러 지원 그룹이 있는 대규모 조직에서 유용합니다. 이 제품은 소규모 비즈니스 네트워크에서 여러 사이트에 걸쳐 수천 대의 장치를 모니터링하는 대규모 설치에 이르기까지 매우 잘 확장됩니다.

하지만 Cacti가 완벽한 것은 아닙니다. 사실, 경고라는 중요한 구성 요소가 빠져 있습니다. Cacti의 강점은 장치에서 데이터를 가져와 웹 페이지에 그래프로 표시하는 것입니다. 뛰어난 기능을 제공하지만 그게 전부입니다. 반면 Cacti는 PHP로 작성되었으며 오픈 소스이므로 필요한 기능을 직접 추가하는 것도 가능합니다. 경고 기능이 필요하지 않다면 Cacti의 단순함이 오히려 장점이 될 수 있습니다. 사용자 정의가 가능하여 특정 요구 사항에 맞게 쉽게 조정할 수 있습니다.
Cacti는 구성을 용이하게 하기 위해 템플릿을 광범위하게 사용합니다. 일반적인 장치 유형에 대한 장치 템플릿과 그래프 템플릿이 많이 있습니다. 장비 제조업체에 대한 사용자 정의 템플릿을 만드는 활발한 온라인 커뮤니티도 있어 Cacti 템플릿을 쉽게 다운로드할 수 있습니다.
특별 언급
이 목록에 포함될 자격이 없을 수도 있지만, 모든 SNMP 모니터링 시스템의 조상이라고 할 수 있는 MRTG(Multi Router Traffic Grapher)에 경의를 표하고 싶습니다. MRTG 개발자들은 장비 관리보다는 모니터링을 위해 SNMP를 처음으로 사용했습니다. MRTG의 원래 코드 일부는 오늘날 Cacti 및 기타 여러 오픈 소스 도구에서 여전히 사용되고 있습니다.