freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于winpcap的嗅探器設(shè)計與實現(xiàn)_畢業(yè)設(shè)計(文件)

2025-07-31 08:05 上一頁面

下一頁面
 

【正文】 } } pthis(nItem,6,buf)。 = dataiphdaddr。n8。 /*對包計數(shù) */ pthisnpkt++。 dataethh = (struct ethhdr*)malloc(sizeof(struct ethhdr))。i++) { dataethhdest[i] = ethhdest[i]。 //處理 ARP還是 IP包? switch(dataethhtype) { case 0x0806: return analyze_arp((u_char*)pkt+14,data,npacket)。 case 0x86dd: return analyze_ip6((u_char*)pkt+14,data,npacket)。 return 1。 struct arphdr *arph = (struct arphdr*)pkt。i6。 dataarphar_srcmac[i]= arphar_srcmac[i]。 dataarphar_pln = arphar_pln。 return 1。 if(NULL == dataiph) return 1。 dataiphdaddr = iphdaddr。 dataiphtlen = ntohs(iphtlen)。 dataiphversion = iphversion。 break。 break。 } /*分析網(wǎng)絡(luò)層: IPV6*/ int analyze_ip6(const u_char* pkt,datapkt *data,struct pktcount *npacket) { int i。 npacketn_ip6++。 dataiph6plen = ntohs(iph6plen)。i16。 break。 break。 } /*分析傳輸層: ICMP*/ int analyze_icmp(const u_char* pkt,datapkt *data,struct pktcount *npacket) { struct icmphdr* icmph = (struct icmphdr*)pkt。 dataicmphcode = icmphcode。 npacketn_icmp++。 dataicmph6 = (struct icmphdr6*)malloc(sizeof(struct icmphdr6))。 dataicmph6seq =icmph6seq。 for(i=0。 npacketn_icmp6++。 if(NULL == datatcph) return 1。 datatcphres1 = tcphres1。 datatcphack = tcphack。 datatcphfin = tcphfin。 datatcphurg_ptr = tcphurg_ptr。 strcpy(datapktType,HTTP)。 } /*分析傳輸層: UDP*/ int analyze_udp(const u_char* pkt,datapkt *data,struct pktcount *npacket) { struct udphdr* udph = (struct udphdr*)pkt。 dataudphdport = ntohs(udphdport)。 npacketn_udp++。 char tempbuf[256]。i+=16) { bufAppendFormat(_T(%04x: ),(u_int)i)。 j++) bufAppendFormat(_T(%02x ),(u_int)pkt[i+j])。 for (j = 0。.39。 } } 七、 設(shè)計結(jié)果 嗅探器運行初始界面如圖 2 所示 圖 嗅探器開始運行后界面如圖 3 所示 圖 八、軟件使用說明 ① 選擇 網(wǎng)卡 ② 設(shè)置過濾器 ③ 點擊開始,程序運行 ④ 查看您需要的信息 數(shù)據(jù)包的簡單信息 數(shù)據(jù)包的詳細(xì)信息 數(shù)據(jù)統(tǒng)計 分析數(shù)據(jù) 九、參考資料 [1]溫乃寧 ,龔尚福 . 基于 Winpcap 嗅探器技術(shù)分析與實現(xiàn) . 高校實驗室工作研究 , 20xx. [2]高傳善 ,毛迪林,曹袖 . 數(shù)據(jù)通信與計算機網(wǎng)絡(luò)(第 2 版) . 高等教育出版社 , 20xx. [3]魯斌 . 網(wǎng)絡(luò)程序開發(fā)使用案例教程 . 清華大學(xué)出版社, 20xx. 十、驗收時間及驗收情況 驗收時間: 9 月 25 日 驗收地點:逸夫科教樓 503 十一、設(shè)計體會 1) 對于 GUI 的設(shè)計不是很熟練,包括控件的作用、控件的屬性、整體的排版等,在此次設(shè)計中加深了對 MFC 設(shè)計界面的了解,編程水平有了顯著提高; 2) 對計算機網(wǎng)絡(luò)基礎(chǔ)知識有了更進(jìn)一步的掌握,學(xué)會了如何對不同類型的數(shù)據(jù)包進(jìn)行捕獲、識別、分流、解析,按照不同協(xié)議的解釋輸出包的詳細(xì)信息。 } bufAppend(_T(\r\n))。 j++) { ch = pkt[i+j]。j16。 for (j = 0。 for(i = 0。 } //將數(shù)據(jù)包以十六進(jìn)制方式打印出來 void print_packet_hex(const u_char* pkt,int size_pkt,CString *buf) { int i=0,j = 0,rowcount。 dataudphsport = ntohs(udphsport)。 if(NULL == dataudph ) return 1。 strcpy(datapktType,TCP)。 datatcphopt = tcphopt。 datatcphseq = tcphseq。 datatcphrst = tcphrst。 datatcphece = tcphece。 datatcphcheck = tcphcheck。 } /*分析傳輸層: TCP*/ int analyze_tcp(const u_char* pkt,datapkt *data,struct pktcount *npacket) { struct tcphdr *tcph = (struct tcphdr*)pkt。i++) { dataicmph6op_ethaddr[i] = icmph6op_ethaddr[i]。 dataicmph6op_len = icmph6op_len。 dataicmph6chksum = icmph6chksum。 } /*分析傳輸層: ICMPv6*/ int analyze_icmp6(const u_char* pkt,datapkt *data,struct pktcount *npacket) { int i。 dataicmphtype = icmphtype。 if(NULL == dataicmph) return 1。 break。 break。 dataiph6daddr[i] = iph6daddr[i]。 dataiph6hlim =iph6hlim。 dataiph6flowtype = iph6f
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1