Raw Socket 프로그래밍과 관련한 두가지 궁금증...
글쓴이: kuaaan / 작성시간: 금, 2006/01/20 - 11:18오전
1. Linux에서는 Raw Socket을 사용하여 간편하게 패킷을 보고 쓸수 있습니다. 그렇다면...
libpcap을 사용할때 얻어지는 이득은 무엇이 있죠?
퍼포먼스가 더 좋은가요?
아니면 이식성?
코딩하다가 갑자기 떠오른 궁금증이었습니다.
2. 다음과 같은 코드로 Raw Socket을 생성했습니다.fd = socket(AF_INET, SOCK_PACKET, htons(ETH_P_IP))
UNP vol1. 707page에 따르면 위와 같이 생성한 소켓에서는 시스템을 지나가는 모든 'IP'패킷이 보인다고 되어있습니다. (If we wanted only IPv4 frames, the call would be blabla~~~)
그런데 실제로 해보면... ICMP나 ARP까지 전부 보입니다. 결국 올라온 패킷에 대해 필터링을 해줘야 하죠.
어째서 IP패킷이 아닌 다른 패킷까지 보일까요?
Forums:
ICMP, ARP 모두 IP기반 프로토콜입니다.
ICMP, ARP 모두 IP기반 프로토콜입니다.
[quote="hellowww"]ICMP, ARP 모두 IP기반 프로토콜
'IP기반 프로토콜'이라구요?
저는 이더넷 헤더의 ether_type 필드에 0x0800이 박혀있는 프로토콜에 한정되는 걸로 생각했었는데요.
ICMP라면 이해가 가지만...
ARP는 헤더 내에 IP관련 정보가 들어있을 뿐이지... IP헤더가 붙지는 않지 않나요?
----------------------------------------------
한번뿐인 인생....
미친듯이 살아보자!
----------------------------------------------
search : TCP/IP Protocol SuiteIP Pro
search : TCP/IP Protocol Suite
IP Protocol => TCP/IP Protocol Suite
FYI] libpcap, raw socket, libdnet, libne
FYI] libpcap, raw socket, libdnet, libnet, libipq, libiptc etc.
[quote="kuaaan"][quote="hellowww"]ICMP,
http://www.networksorcery.com/enp/topic/ipsuite.htm
여기보면 ARP도 IP protocol suite에 포함되어 있는것 같네요..
======================
BLOG : http://superkkt.com
아... 그렇군요. IP Protocol suite라...이런게 있었
아... 그렇군요. IP Protocol suite라...
이런게 있었네요... :)
IPv4, IPv6, ARP, RARP, InARO ...
감사합니다.
댓글 달기