제가 핑거프린팅 도구를 만들고 있는데요..
sniffing 을 하는데 다른곳에서 보내는 패킷 제가 보내는 패킷 다 보여요.
그런데 connect를 이용해서 연결을 시키고 패킷을 보면
syn와 ack 패킷만 보이더라구요. syn+ack는 안보이구요. 즉 응답 패킷이 안보이고, 제가 보내는 것만 보여요..
와이어샤크로 확인했을때는 다 잘 보이네요..
syn+ack 이 필요한데 제가 어디서 잘못한지를 모르겠네요..
조언좀 해주세요 ㅠㅠ
sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
memset(&Finger_Addr, 0, sizeof(Finger_Addr));
Finger_Addr.sin_family = AF_INET;
Finger_Addr.sin_addr.s_addr = inet_addr(Finger_IP);
Finger_Addr.sin_port = htons(count);
ret = connect(sock, (struct sockaddr *) &Finger_Addr, sizeof(Finger_Addr));
sniffer = socket(AF_INET, SOCK_RAW, IPPROTO_IP);
memcpy(&dest.sin_addr.s_addr, local->h_addr_list[in], sizeof(dest.sin_addr.s_addr));
dest.sin_family = AF_INET;
dest.sin_port = 0;
mangobyte = recvfrom(sniffer, Buffer, 65536, 0, 0, 0);
|