[질문] raw 소켓으로 패킷 전송하려면?

jyj9782의 이미지

패킷을 구성했을때요

이더넷헤드랑.. 모두요 ^^

그것을 고대로 로우패킷으로 전송하려는데요..

sendto 같은걸로 하면..

따로

그앞에 이더넷헤드|IP헤드가

또 붙어서.. 원하는 데이타를 로우레벨로 전송할수가 없어요

로우소켓으로 할때, 어떻게 전송해야하나요?

패킷전체를 구성해서 날릴려면요..

어떤 API 를 써야하죠?

래리버드의 이미지

raw socket으로는 ehter header, ip header까지는 제어 할 수 없는걸로 알고 있는데요...

raw socket으로 ip header까지 제어 할라면 socket option에서 IP_HDRINCL 를 주면 가능합니다.

ether/ip header까지 모두 포함하여 packet 을 만들라면 libpcap을 사용하시는 것이 훨 편할텐데요..

비 온 뒤에 땅이 굳어진다는 말은 다 거짓말이다.

jyj9782의 이미지

음.. 그렇게 못하나요?

ARP 프레임이거든요

이더넷|ARP프레임

이렇게 구성되는지라.. =.=

힘내세요.

jyj9782의 이미지

libnet 을 써야겠군요 ^^

힘내세요.

cychong의 이미지

arp는 packet socket을 사용하시면 됩니다.
PF_PACKET

Life with fun...

aniseeker의 이미지

저도 libnet을 추천합니다.
쓰기만 하는 것보다 libnet의 소스코드를 한번 분석해
보시면 도움이 많이 될 겁니다.

어두운 밤에 움직이지 않는 꽃과 개와 물,
어두운 밤에 꽃과 짖는개와 물.