넥스지 VForce UTM 트래픽 모니터링 MRTG 설정

넥스지(NexG, 현 케이엑스넥스지)의 VForce UTM 장비에서 네트워크 트래픽을 MRTG로 모니터링하기 위해 필요한 SNMP 활성화 방법과 인터페이스 OID 확인 절차, 그리고 MRTG 적용 방법을 단계별로 설명한다. 본 문서의 내용은 VF 1500뿐 아니라 대부분의 네트워크 장비에서 SNMP 기반 트래픽 모니터링을 구성할 때도 참고할 수 있다.

네트워크 트래픽(traffic)을 관리할 때는 보통 스위치 포트의 송수신 트래픽을 보지만, 라우터나 보안장비에서 확인해야 하는 경우도 있다. 예를 들면, 인터넷 회선이 라우터나 보안장비에 직접 연결되어 있고 ISP에서 별도의 트래픽 정보를 제공하지 않는 경우이다.

이러한 경우 내부 스위치의 트래픽만으로 인터넷 회선의 전체 사용량을 파악하기는 심히 귀찮다. 때문에 가입자 측에서 인터넷 회선과 맞닿아 있는 장비의 인터페이스를 직접 확인하는 게 편리하다.

NexG VForce UTM

케이엑스넥스지의 VForce UTM 시리즈는 방화벽, VPN, IPS 등의 기능을 제공하는 통합 보안 장비이다. 그중 500 시리즈에는 성능과 하드웨어 구성에 따라 500, 1500, 2500, 3500, 4500 모델이 있었다.

VForce UTM 500·1500·2500·3500·4500과 NexG FW 60S의 하드웨어 사양 비교표
구형 VForce UTM과 NexG FW 60S의 하드웨어 사양

현재 VForce UTM 500 시리즈는 단종되었고 새로운 제품군인 FW, ACRON 등이 출시되었지만, 구형 VForce 장비 역시 아직까지 많은 현장에서 현역으로 돌아가고 있다.

VForce UTM을 모니터링하고 관리하기 위해서는 넥스지의 NMS 프로그램을 사용하거나, 유지보수 업체를 통해 기술지원을 받는 경우가 일반적이다. 하지만 세상의 모든 일에는 예외와 피치 못할 사정이란 게 존재하기 마련이고, 그런 상황에 처했다면 사용할 수 있는 모든 방법을 생각해 어떻게든 답을 만들어 봐야 한다. 본 필자의 경우처럼 말이다…

VForce 웹 UI의 트래픽 그래프

다행히도 VForce의 웹 UI에는 인터페이스별 실시간 트래픽을 확인할 수 있는 트래픽 모니터 기능이 기본적으로 제공된다.

VForce 웹 UI에서 eth0부터 eth3까지의 수신·송신 트래픽을 pps와 Mbps·Kbps로 표시한 그래프
VForce 웹 UI의 트래픽 그래프

제법 예쁘고 보기 좋은 UI이지만, 아래와 같은 소소한 제약이 있다.

  • 짧은 시간 범위의 실시간 기록만 확인할 수 있다.
  • 장비의 웹 UI에 직접 접속한 상태에서만 확인할 수 있다.

때문에 평소 장기적인 트래픽 추이를 관찰하거나, 장애가 발생했던 시간대의 기록을 나중에 확인하는 용도로 활용하기에는 한계가 있다.

하지만 VForce 역시 네트워크 장비인 만큼 SNMP를 지원한다. 그리고 우리에게는 만능 그래프 도구인 MRTG가 있다.

SNMP를 이용한 VForce MRTG 그래프 생성 방법

VForce UTM 1500의 트래픽을 MRTG로 기록하는 과정은 SNMP 설정, 인터페이스 확인, 트래픽 OID 선택, MRTG 설정 적용 순서로 진행한다.

또한, SNMP를 사용하기 위해서는 방화벽 설정에서 SNMP 매니저의 접속이 허용되어 있어야 한다.

Step 1. VForce SNMP 설정

VForce에서 SNMP를 사용하려면 먼저 SNMP 서비스와 접근 권한을 설정해야 한다. 웹 UI에 접속한 뒤 좌측 메뉴에서 시스템 → 관리 → SNMP를 선택하면 SNMP 관련 설정 화면이 나타난다.

VForce 1500의 시스템·관리·SNMP 화면에 표시된 출발지 설정과 커뮤니티 목록
NexG VForce 1500의 SNMP 설정 메뉴
  1. SNMP 커뮤니티 목록 항목의 ADD 버튼을 클릭한다.
  2. 새 커뮤니티의 이름과 접근 권한을 입력한다.
  3. APPLY 버튼을 눌러 저장한다.
SNMP 커뮤니티 이름, Read Write 권한, 관리 주소를 설정하는 VForce 화면
SNMP 커뮤니티 생성과 접근 권한 설정
커뮤니티 이름
MRTG에서 사용할 커뮤니티 문자열을 입력한다. 예시에서는 eqblogdemo를 사용했다.
권한
해당 커뮤니티의 접근 권한을 설정한다. Read Write 체크박스를 해제하면 읽기 전용이 된다. 트래픽 모니터링에는 쓰기 권한이 필요하지 않으므로, 웬만하면 읽기 전용(Read Only)으로 설정하는 것을 권장한다.

Step 2. SNMPWALK로 인터페이스 확인

이제 MRTG에 사용할 인터페이스의 OID를 찾아야 할 차례이다. 안타깝게도 공식 매뉴얼에서는 관련 정보를 찾을 수 없지만, 우리에게는 SNMPWALK라고 하는 강력한 도구가 있다!

SNMPWALK에서 장비 IP 주소와 앞서 설정한 커뮤니티 문자열을 지정하고, SNMP 버전은 v2c로 설정한다. 인터페이스 이름을 나타내는 1.3.6.1.2.1.31.1.1.1.1(ifName)을 조회하면 아래처럼 인터페이스 이름과 각 인터페이스에 할당된 인덱스가 좌라락 표시된다.

SNMP ifName OID와 eth0부터 eth7, lo, gre0, ipsec4 등 인터페이스 이름의 대응 목록
SNMP 조회로 확인한 인터페이스 이름과 인덱스

이 OID의 마지막에 붙은 숫자가 인터페이스 인덱스인 ifIndex이다. 위 화면에서 eth0은 10000000, eth1은 10000001에 대응한다. 본 필자의 VForce 1500에서는 물리 인터페이스인 eth0부터 eth7까지 인덱스가 10000000번부터 차례대로 할당되어 있다.

목록에는 물리 인터페이스 외에도 루프백, VLAN, 터널 등의 논리적 인터페이스가 함께 표시된다. 논리적 인터페이스를 모니터하고 싶다면 해당 인터페이스의 인덱스를 사용해 주면 되겠다.

Step 3. 입력·출력 트래픽 OID 선택

이제 인터페이스별 인덱스를 알았으니, 입력과 출력 트래픽을 나타내는 OID를 선택한다. 인터페이스 확장 테이블인 ifXTable의 목록을 정의하는 ifXEntry(1.3.6.1.2.1.31.1.1.1)에는 19개의 객체가 정의되어 있다. 그중 누적 입출력 바이트 수를 나타내는 OID는 아래의 두 가지다.

1.3.6.1.2.1.31.1.1.1.6 — ifHCInOctets
인터페이스에서 수신한 누적 바이트 수를 나타내는 64비트 카운터이다.
1.3.6.1.2.1.31.1.1.1.10 — ifHCOutOctets
인터페이스에서 송신한 누적 바이트 수를 나타내는 64비트 카운터이다.

위 두 OID 뒤에 모니터링할 인터페이스의 인덱스를 붙이면 된다. MRTG는 이 누적값을 주기적으로 조회하고, 이전 값과의 차이를 경과 시간으로 나누어 전송률을 계산한다. VForce 1500의 인터페이스별 완성된 OID는 다음과 같다.

넥스지 VForce UTM 1500 인터페이스 OID
인터페이스In(ifHCInOctets)Out(ifHCOutOctets)
eth01.3.6.1.2.1.31.1.1.1.6.100000001.3.6.1.2.1.31.1.1.1.10.10000000
eth11.3.6.1.2.1.31.1.1.1.6.100000011.3.6.1.2.1.31.1.1.1.10.10000001
eth21.3.6.1.2.1.31.1.1.1.6.100000021.3.6.1.2.1.31.1.1.1.10.10000002
eth31.3.6.1.2.1.31.1.1.1.6.100000031.3.6.1.2.1.31.1.1.1.10.10000003
eth41.3.6.1.2.1.31.1.1.1.6.100000041.3.6.1.2.1.31.1.1.1.10.10000004
eth51.3.6.1.2.1.31.1.1.1.6.100000051.3.6.1.2.1.31.1.1.1.10.10000005
eth61.3.6.1.2.1.31.1.1.1.6.100000061.3.6.1.2.1.31.1.1.1.10.10000006
eth71.3.6.1.2.1.31.1.1.1.6.100000071.3.6.1.2.1.31.1.1.1.10.10000007

Step 4. mrtg.cfg에 Target 적용

SNMP로 가져올 OID를 확인했다면, 해당 OID를 mrtg.cfg 설정 파일의 Target에 지정하면 된다. 아래는 첫 번째 물리 인터페이스인 eth0의 입력·출력 트래픽을 모니터링하기 위한 Target 설정 예시이다.

Target[WAN]: 1.3.6.1.2.1.31.1.1.1.6.10000000&1.3.6.1.2.1.31.1.1.1.10.10000000:eqblogdemo@192.168.123.123:::::2
  1. mrtg.cfg의 해당 대상에 위 Target 설정을 적용한다.
  2. eqblogdemo를 장비에 설정한 커뮤니티 문자열로 변경한다.
  3. 192.168.123.123을 모니터링할 VForce 장비의 IP 주소로 변경한다.
  4. 다른 인터페이스를 모니터링한다면 입력·출력 OID의 마지막 인덱스를 해당 인터페이스의 값으로 변경한다.

끝의 :::::2는 SNMPv2를 사용하도록 지정하는 부분이다. 새 대상을 추가하는 경우에는 Target뿐 아니라 MaxBytes, Title 등 필요한 대상별 설정도 함께 구성해야 한다. 세부 설정은 MRTG 설정 가이드를 참고하기 바란다.

Step 5. MRTG 실행과 그래프 확인

설정을 저장한 뒤 MRTG를 실행하고, SNMP 조회나 설정과 관련된 오류가 없는지 확인한다. 이후 주기적인 수집이 이어지면, VForce 장비에서 받아온 데이터로 그래프를 열심히 그리는 MRTG의 모습을 확인할 수 있다.

처음에는 전송률을 계산하기 위한 이전 수집값이 없으므로, 첫 실행만으로 정상적인 트래픽 그래프가 완성되는 것은 아니다. 수집을 반복한 뒤 선택한 인터페이스의 수신·송신 트래픽이 기록되는지 확인하면 된다.

결론과 마무리

이러한 방식은 넥스지 VForce 장비에만 사용할 수 있는 것이 아니다. SNMP로 인터페이스의 트래픽 카운터를 제공하는 다른 네트워크 장비에서도, 해당 장비의 OID와 인터페이스 인덱스를 확인해 같은 방식으로 MRTG와 연동할 수 있다. 적절한 모니터링 도구가 없거나 기술지원이 종료된 장비에서도 유용하게 활용할 수 있는 방법이다.

어려운 상황이라 하더라도, 방법만 알면 길은 열리기 마련이다. 궁하면 다 통하게 되어 있다.

(그리고 이 글을 읽고 있는 독자 제위께서는, 실무에서 이런 정보를 찾기 위해 헤매는 일이 없으시기를 진심으로 바라는 바이다… ㅜㅜ)

갱신 내역

  • — 최초 게시
  • — 수정 및 주소 이전 (https://www.DectENG.com/)
  • — 수정 및 주소 이전 (https://www.EQMaker.kr/)