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.1.2.1.4.20.1.2.192.168.10.3 => 2 [ASN_INTEGER32]
SNMP GET 1.3.6.1.2.1.2.2.1.6.2 => 00-1D-72-90-C3-4B [ASN_OCTETSTRING]
NETMASK 구하기
ipAdEntNetMask(1.3.6.1.2.1.4.20.1.3) 를 이용하면 쉽게 구할 수 있다.
1.3.6.1.2.1.4.20.1.3. 에 호스트의 IP를 붙여서 GET 요청을 보낸다.
예) 대상 IP가 192.168.10.3 일때
SNMP GET 1.3.6.1.2.1.4.20.1.3.192.168.10.3 => 255.255.255.0 [ASN_IPADDRESS]
'Programing' 카테고리의 다른 글
SNMP 래퍼 클래스 (0) | 2012.09.21 |
---|---|
SNMP 프로그래밍 (0) | 2012.09.21 |
활성화된 네트워크 열거하기 (0) | 2012.09.21 |
구글 크롬 소스코드 빌드하기 (0) | 2012.09.21 |
구글 크롬 소스코드 (0) | 2012.09.21 |