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

正文內(nèi)容

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

2025-09-09 08:05上一頁面

下一頁面
  

【正文】 j rowcount。 return 1。 datatcphwindow= tcphwindow。 datatcphack_seq = tcphack_seq。 if(NULL == dataicmph6) return 1。 default : return1。 dataiph6version = iph6version。 dataiphop_pad = iphop_pad。 } /*分析網(wǎng)絡(luò)層: IP*/ int analyze_ip(const u_char* pkt,datapkt *data,struct pktcount *npacket) { int i。 dataarph = (struct arphdr*)malloc(sizeof(struct arphdr))。 dataethhsrc[i] = ethhsrc[i]。 buf = CString(i_ntoa(in))。 /*獲得協(xié)議 */ pthis(nItem,5,CString(datapktType))。 datatime[3] = ltimetm_hour。 return 1。 } 數(shù)據(jù)包處理 DWORD WINAPI sniffer_CapThread(LPVOID lpParameter) { int res,nItem 。 strcpy(filepath,SavedData\\)。 } } //設(shè)置過濾器 if (pcap_setfilter(adhandle, amp。fcode, filter, 1, mask) 0 ) { MessageBox(_T(語法錯誤,無法編譯過濾器 ))。 } if(CB_ERR == filter_index) { MessageBox(_T(過濾器選擇錯誤 ))。 (_T(icmp))。 //1表示右,表示中,表示左 (1,_T(時間 ),3,130)。 數(shù)據(jù)包的捕獲模塊 該部分創(chuàng)建了一個用于捕獲數(shù)據(jù)包的線程 , 在該線程中調(diào)用 winPcap提供的 pcap_next_ex()函數(shù)從底層驅(qū)動數(shù)據(jù)緩沖區(qū)中讀取數(shù)據(jù)包 , 該函數(shù)接受已 打開的網(wǎng)絡(luò)設(shè)備句柄 , 返回捕獲數(shù)據(jù)包的實體 ,并用 pcap_dump函數(shù)將每一 個數(shù)據(jù)包寫人臨時文件中。單播模式 : 只有匹配的目的網(wǎng)卡才能接收數(shù)據(jù)信息。所謂嗅探器 ( Sniffer) ,是一種利用計算機網(wǎng)絡(luò)接口截獲網(wǎng)絡(luò)數(shù)據(jù)的軟件或硬件,可用于網(wǎng)絡(luò)管理、網(wǎng)絡(luò)協(xié)議分析以及網(wǎng)絡(luò)安全等眾多方面。嗅探器設(shè)置模塊主要調(diào)用 w inP c aP 提供的 API,分為獲取網(wǎng)絡(luò)設(shè)備信息 , 設(shè)置并編譯過濾器 ,打開網(wǎng)絡(luò)設(shè)備三個步驟。 ASSERT(IDM_ABOUTBOX 0xF000)。 (6,_T(源 IP地址 ),3,145)。 (FALSE)。count++) dev=devnext。 int len,x。 char thistime[30]。 if(dumpfile==NULL) { MessageBox(_T(文件創(chuàng)建錯誤! ))。 //數(shù)據(jù)包頭 const u_char *pkt_data=NULL,*pData=NULL。 //將本地化后的數(shù)據(jù)裝入一個鏈表中,以便后來使用 ppkt_data = (u_char*)malloc(headerlen)。 /*顯示時間戳 */ (_T(%d/%d/%d %d:%d:%d),datatime[0], datatime[1],datatime[2],datatime[3],datatime[4],datatime[5])。 buf = CString(i_ntoa(in))。 else (_T(%02x),dataiph6daddr[n])。 case 0x0800: return analyze_ip((u_char*)pkt+14,data,npacket)。 dataarphar_srcip[i] = arphar_srcip[i]。 npacketn_ip++。 break。 dataiph6hlim =iph6hlim。 if(NULL == dataicmph) return 1。 dataicmph6op_len = icmph6op_len。 datatcphece = tcphece。 strcpy(datapktType,TCP)。 for(i = 0。 } bufAppend(_T(\r\n))。 j++) bufAppendFormat(_T(%02x ),(u_int)pkt[i+j])。 dataudphdport = ntohs(udphdport)。 datatcphfin = tcphfin。 npacketn_icmp6++。 npacketn_icmp++。 break。 } /*分析網(wǎng)絡(luò)層: IPV6*/ int analyze_ip6(const u_char* pkt,datapkt *data,struct pktcount *npacket) { int i。 dataiphtlen = ntohs(iphtlen)。 dataarphar_pln = arphar_pln。 return 1。 dataethh = (struct ethhdr*)malloc(sizeof(struct ethhdr))。 } } pthis(nItem,6,buf)。 (_T(%02X%02X%02X%02X%02X%02X),dataethhsrc[0],dataethhsrc[1], dataethhsrc[2],dataethhsrc[3],dataethhsrc[4],dataethhsrc[5])。 ltime = localtime(amp。header, amp。 CString str。 time(amp。x++) { filter[x] = (x)。 return 1。 sniffer_initCap()。dev。 } } SetIcon(m_hIcon, TRUE)。 ,winPcap提供了 pcap_open()函數(shù) ,該函數(shù)第一參數(shù)制定要 捕獲數(shù)據(jù)包的哪些部分 , 第二參數(shù)用來制定適配器是否為混雜模式 , 第三 參數(shù)為讀取數(shù)據(jù)的超時時間 , 當(dāng)適配器被打開后 , 就可以進行捕獲工作了 。在計算機網(wǎng)絡(luò)系統(tǒng)中,網(wǎng)卡是用來接收網(wǎng)絡(luò)上其他節(jié)點發(fā)來的數(shù)據(jù)幀,其內(nèi)嵌的單片處理程序會檢測數(shù)據(jù)幀來源的 MAC 地址,并根據(jù)網(wǎng)卡所設(shè)置的接收方式來是否接收處理數(shù)據(jù),如果認(rèn)為應(yīng)該處理,則網(wǎng)卡就會產(chǎn)生中斷信號通知 中央處理器,接收該數(shù)據(jù)幀并傳輸給操作系統(tǒng)處理。在目前的網(wǎng)絡(luò)環(huán)境中,所有計算機節(jié)點都是共享傳輸介質(zhì),任意節(jié)點發(fā)出或發(fā)往任意節(jié)點的數(shù)據(jù)幀必將經(jīng)過網(wǎng)內(nèi)每一個節(jié)點的網(wǎng)絡(luò)接口,此時只需對嗅探節(jié)點的網(wǎng)絡(luò)接口 ( 網(wǎng)卡 ) 進行適當(dāng)?shù)脑O(shè)置便可為實現(xiàn)嗅探的做好準(zhǔn)備工作。 (嗅探器總體結(jié)構(gòu)如圖 1 ) 圖 五、設(shè)計步驟 嗅探器的設(shè)置模塊 a .獲取已連接的網(wǎng)絡(luò)設(shè)備列表 , winPcap提供了 pcap_findalldevs_ex()函 數(shù) , 這個函數(shù)返回一個 PcaPi
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1