본문 바로가기

네트워크12

libpcap 라이브러리 API 정리 출처 : http://www.joinc.co.kr/modules/moniwiki/wiki.php/article/libpcap%C0%BB_%C0%CC%BF%EB%C7%D1_%C7%C1%B7%CE%B1%D7%B7%A1%B9%D6 이글은 그냥 제가 보려고 한거고 실제로는 위 출처에 잇는 내용입니다. 자세한 설명과 예제는 위 링크에 잘 설명되어 있으니 위 출처에서 보시는게 나을 거 같네요... 1. 디바이스 & 네트웍 정보 관련 API [1] int pcap_lookupnet() int pcap_lookup(char *device, bpf_u_int32 *netp, bpf_u_int32 *maskp, char *errbuf 네트웍 디바이스에 대한 네트웍 및 mask 번호를 되돌려 준다. 네트웍 번호는 netp에.. 2010. 6. 24.
Libpcap (Pcap) 라이브러리 Libpcap(pcap) Portable Packet Capturing Library의 줄임말이며 해석 그대로 간단하게 패킷을 캡쳐하기 위한 함수 모음(라이브러리) 이다. 물론 pcap이외에도 패킷 캡쳐를 위한 도구들이 있기는 하지만, 대부분의 경우 운영체제에 종속적이여서, 운영체제별로 코드를 다시 짜야한다는 불편함이 있다. 대표적인 도구로는 SOCK_PACKET, LSF, SNOOP, SNIT 등이 있다. 이에 비해 pcap는 운영체제에 상관없이 범용적으로 사용가능한 API를 제공해줌으로, 공용프로그램 혹은 공용 라이브러리의 제작이 가능하도록 도와준다. 또한 간단하게 사용가능한 사용자 레벨 라이브러리이다. libpcap를 이용한 가장 대표적인 프로그램이 tcpdump 와 SAINT와 같은 프로그램들이다.. 2010. 6. 23.
RAW 소켓을 하면서...[ ping 프로그램 ( icmp 프로토콜) ] 이책 저책을 보고보고... [TCP/IP 소켓 프로그래밍 : 한빛] RAW 소켓 : 스위스 만능 칼 RAW를 사전에서 찾아보면 ‘생’, ‘날’ 이라는 뜻이 있다. 풀어서 쓰자면 가공하지 않은 정도로 보면 될 것이다. 따라서 말 그대로 RAW 소켓은 ‘가공하지 않은 소켓’이다. 일반적인 소켓 함수는 네트워크를 통해서 데이터를 주고 받을 때 헤더 정보를 붙이거나 헤더 정보를 떼어내는 등의 가공을 한다. 일반적으로 주고받는 데이터가 중요하지, 헤더 정보는 별로 중요하지 않기 때문이다. 최종적으로 응용계층에 전달되는 데이터는 사용자 데이터라는 이다. 헤더를 떼고 붙이고 하는 부분은 운영체제의 프로토콜 스택 내에서 자동으로 일어난다. 따라서 프로그래머는 헤더를 직접 절할 기회가 없게 된다. 그렇지만 경우에 따라서.. 2010. 3. 29.
Looping(뻉뺑이) - ? 루핑(Looping)은 프레임이 네트워크 상에서 무한정으로 뱅뱅 돌기 때문에 이더넷의 특성상 네트워크가 조용해야 데이터를 전송할 수 있는 다른 녀석들이 계속 네트워크가 조용해지기를 기다리기만 할 뿐 데이터 전송을 불가능해지는 상태를 말하는데, 브리지나 스위치의 디자인에서는 가장 주의해야되는 사항이다!!! 2010. 1. 22.