Netfilter관련 질문 입니다.
글쓴이: swunk / 작성시간: 일, 2005/10/23 - 12:07오전
아래와 같은 함수를 NF_IP_PRE_ROUTING에 등록 시켜 놓았습니다.
int func(...., struct sk_buff **skb_pp,...) { struct skb_buff *skb_p = *skb_pp; struct tcphdr *tcph; char *buf; tcph=(struct tcphdr *)(skb_p->h.tcphdr); memcpy(buf, tcp_h, sizeof(struct tcphdr)); for(i=0; i<sizeof(struct tcp_hdr); i++) printk("%2x", *(buf+i)); : : }
위의 적은 구조체나 변수명들이 정확한지는 모르겠습니다. :roll:
여튼... 위와 같이 프린트 문에서 tcp 헤더의 값들을 hexa 값으로 출력하고 같은 패킷들을 동시에 ethereal로 잡아서 비교를 해보면...해당 패킷의 tcp 헤더값이 아닌 ip 헤더의 값들이 정확하게 찍힙니다.
어떻게 된거죠 ? 제가 무엇을 잘못 알고 있는 건가요 ?
이 외에도 이상한 이해 못하는 일 너무 많이 일어나내요...냠냠냠...
한수 부탁드립니다.
Forums:
댓글 달기