본문 바로가기

Programing

(403)
SNMP - 래퍼 Rogério Paulo 쓸만한 WinSNMP Wrapper ClassSNMP - A C++ Wrapper for the WinSnmp libraryhttp://www.codeproject.com/KB/library/WinSNMPWrapper.aspx?display=Print 클래스 다이어그램까지 잘 만들어져 있다.실행파일, 프로젝트 파일 두 가지 형태로 배포되고 있는데, Visual Stdio 2003이 있다면 바로 컴파일해서 사용할 수 있다.주의할 점이 라이브러리는 알려진 버그와 콘솔이 뜨는 문제가 있다.알려진 버그불규칙하게 메모리 쓰기 오류문제 이 라이브러리를 사용하다 보면 불규칙적으로 메모리 충돌이 일어난다.(그런데 이상하게 Debug 모드로 컴파일하면 문제가 안 생기다가, Release 모드로 컴파일을 하면 문제가 발생..
SNMP 래퍼 클래스 회사에서 SNMP관련 프로그래밍을 할 일이 있었다.환경은 윈도우 /콘솔/서비스 프로그램과 C/C++기반 첫번째 사용한 것은 코드프로젝트에서 구한 'Rogério Paulo'의 SNMP Wrappe 클래스 이 래퍼 클래스는 확실히 잘 설계가 되었다. 하지만 사용하기가 조금 어렵고, 오래 사용을 하면 메모리 누수 문제가 있다.두번째 사용한 것은 내가 직접 WinSNMP API를 가지고 만든 것(현재) 결국 내가 직접 래퍼 클래스를 만들었다. 조회하려는 SNMP 에이전트의 주소와 OID를 넣으면 값을 가져오게 하는 방법으로 단순하게 바꾸었다. 하지만 약간 불안정한적인 면이 있어서 바꾸려고 하고 있다.세번째 지금 만들고 있는 것은 SNMP Management API를 가지고 만들고 있다.예전에 회사에서 사용했던..
SNMP 프로그래밍 기본적인 Socket 프로그래밍(UDP)을 할 줄 안다면 데이터를 전송하고 수신만 하면 간단하다.문제는 메시지를 만드는 것과 수신한 데이터를 해석해내는 것이 관건이다. SNMP 통신SNMP Message를 구성한다SNMP Agent에 UDP 161 포트에 접속해서 1번에서 만든 Message를 전송한다(데이터 송신-Snmp Request)전송한 데이터에 대한 응답을 받는다(데이터 수신-Snmp Response)데이터를 해석해서 사용한다 SNMP Message 포맷은 아래의 사이트를 참고하세요http://www.tcpipguide.com/free/t_SNMPVersion1SNMPv1MessageFormat.htm SNMP 메시지 샘플Windows Server 2003에 SNMP 서비스를 올리고(SNMP A..
MAC주소와 서브넷마스크 구하기 MAC 주소 구하기ARP를 이용하면 같은 네트워크에 있는 호스트의 MAC주소를 쉽고도 빠르게 구할 수 있다.msdn : SendARP API 참고 하지만 다른 네트워크의 호스트의 MAC주소는 어떻게 가져올까? 호스트에서 snmp agent가 있어서 서비스를 제공하고 있다면대부분 MAC주소와 관련된 정보를 조회할 수 있다. ipAdEntIfIndex(1.3.6.1.2.1.4.20.1.2) 를 이용해서 인터페이스의 인덱스를 구하고그 인덱스의 ifPhysAddress(1.3.6.1.2.1.2.2.1.6)를 GET하면 된다.인터페이스의 타입이 이더넷(ethernet)인지 확인하자.. eg) ifType(1.3.6.1.2.1.2.2.1.3) 예) 대상 IP가 192.168.10.3 일때SNMP GET 1.3.6...
활성화된 네트워크 열거하기 윈도우의 netstat.exe를 이용하면 된다.> netstat -noa Active connection enumerator (Source!!!):
구글 크롬 소스코드 빌드하기 VS2008 에서 한다.다른 환경은 차이가 있으므로, Build Instructions (Windows)를 참고한다. 사전 준비 작업64비트 컴파일 도구 설치서비스팩1을 설치하기전에 반드시 "64비트 컴파일 도구"를 미리 설치해 놓자(중요)VS2008 SP1의 버그 때문에 나중에 올바르게 설치할 수 없다고 한다.설치가 되어 있는지 확실히 알 수 없다면, 아무 Win32 프로젝트를 만들고, 구성관리자(Win32 하위)를 선택후,활성 솔루션 플랫폼에서 '새로 만들기'를 해서 아래와 같이 x64 항목이 있는지를 보면 된다. 없으면 프로그램/제거 추가에서 "Microsoft Visual Studio 2008 ..."를 [변경/제거]를 눌러서 설치할 수 있다. 서비스팩1 설치Microsoft Visual Stud..
구글 크롬 소스코드 최근에 depot_tools이 다운로드가 되지 않아서 잘 안되더라... 크롬 소트코드 디렉토리들The Chromium Projects > FD> HT> Getting Around the Chromium Source Code Directories번역 by 나모 (필요에 의해서는 의역도 했습니다. 개발자의 관점에서..)참고로 소스코드를 얻고 싶으시면 소스코드 얻기를 이용세요.서브버전(SVN) 경로 : svn://svn.chromium.org/chrometarball 파일 : http://chromium-browser-source.commondatastorage.googleapis.com/chromium_tarball.html High레벨 개요Chromium는 3개의 메인 파트로 나뉘어있다.(다른 라이브러리들..
Java NIO(New I/O) 관련 패키지 : java.nio - http://java.sun.com/j2se/1.4.2/docs/api/java/nio/package-summary.html오라클자바 - Java NIO(Non-Blocking IO) e-books : http://java7862.blogspot.com/2007/05/java-ebooks-3.html (링크 깨짐)