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

正文內(nèi)容

簡易windows防火墻的設(shè)計(jì)與實(shí)現(xiàn)—免費(fèi)畢業(yè)設(shè)計(jì)論文-在線瀏覽

2025-02-05 17:26本頁面
  

【正文】 執(zhí)行線程,它 封裝了一個(gè) Windows 應(yīng)用程序的初始化、運(yùn)行和終止。它構(gòu)成了程序功能的主框架。 class CMainFrame:public CFrameWnd { 第 6 頁 共 21 頁 protected: BOOL Installed。//開始過濾的標(biāo)志, TRUE已開始, FALSE未開始 TDriver filterDriver。// protected: BOOL AddFilterToFw()。 //{{AFX_MSG(CMainFrame) afx_msg void OnAppExit()。//添加規(guī)則按鈕 afx_msg void OnButtondel()。//開始過濾按鈕 afx_msg void OnButtonstop()。//安裝規(guī)則 afx_msg void OnButtonuninstall()。//添加規(guī)則菜單 afx_msg void OnMenuDelRule()。安裝菜單 afx_msg void OnMenuUninstallRules()。//開始過濾菜單 afx_msg void OnMenuStop()。//保存規(guī)則菜單 afx_msg void OnMenuLoadRules()。 在主框架類 CMainFrame 中定義了應(yīng)用程序的所有基本功能。在本程序中 CFireWallDoc 主要用來存儲用戶添加的規(guī)則,當(dāng)用戶添加規(guī)則或刪除規(guī)則時(shí),就要向文檔類CFireWallDoc 中寫入數(shù)據(jù);當(dāng)視圖類 CFireWallView 需要將用戶添加的規(guī)則顯示在規(guī)則列表時(shí),或者將規(guī)則安裝到驅(qū)動(dòng),就需要從文檔類 CFireWallDoc 中讀取數(shù)據(jù)。//規(guī)則序數(shù) RuleInfo rules[MAX_RULES]。//添加規(guī)則 void DeleteRule(unsigned int position)。//重置規(guī)則,即在加載規(guī)則前,需要?jiǎng)h除規(guī)則列表中及存儲在文檔類 CFireWallDoc 中的所有規(guī)則 }。 視圖類 CFireWallView 視圖類一般是用來顯示信息的,在本程序中, CFireWallView 主要用來在規(guī)則列表中顯示存儲在文檔類 CFireWallDoc 中的規(guī)則。//指針指向文檔類,和文檔類 CFireWallDoc關(guān)聯(lián)。//在這個(gè)函數(shù)中初始化規(guī)則列表 //}}AFX_VIRTUAL public: void UpdateList()。//將文檔類 CFireWallDoc 中的規(guī)則顯示出來 }。 typedef struct _RuleInfo 第 8 頁 共 21 頁 { unsigned long sourceIp。 unsigned short sourcePort。 unsigned long destinationMask。 unsigned int protocol。 }RuleInfo,*PRuleInfo。 圖 2 程序主界面 添加過濾規(guī)則 添加過濾規(guī)則的功能是通過一個(gè)“添加規(guī)則”對話框完成 , 如圖 3。分兩個(gè)步驟: 取得添加規(guī)則對話框中的數(shù)據(jù): int result。//使控件列表與控件關(guān)聯(lián) result=i_addr(m_ipsource,amp。//從源 IP 地址編輯框獲取源 IP 地址賦給 srcIp。srcMask)。 result=i_addr(m_ipdestination, amp。//從目的 IP 地址編輯框獲取目的IP 地址賦給 dstIp。dstMask)。 if(m_protocol == TCP) protocol = 6。 else if(m_protocol == ICMP) protocol = 1。 if(m_action == 放行 ) cAction = 0。 srcPort = m_portsource。//目的端口 將取得的數(shù)據(jù)添加到文檔類中: BOOL CFireWallDoc::AddRule(unsigned long srcIp, unsigned long srcMask, unsigned short srcPort, unsigned long dstIp, unsigned long dstMask, unsigned short dstPort, unsigned int protocol, int action) { rules[nRules].sourceIp = srcIp。 rules[nRules].sourcePort = srcPort。 rules[nRules].destinationMask = dstMask。 rules[nRules].protocol = protocol。 nRules++。 } 實(shí)現(xiàn)添加規(guī)則功能的程序流程圖如圖 4。當(dāng)正在進(jìn)行過濾時(shí),則要先停止過濾,才能刪除規(guī)則。 CFireWallDoc *doc = (CFireWallDoc *)GetActiveDocument()。//選中的規(guī)則 if(started == TRUE)//如果正在過濾 { CString strTemp。 } int position。//position 是當(dāng)前選擇的規(guī) 則的下一條的序數(shù) 是 開始 格式匹配? 取得對話框中的 數(shù)據(jù) 將數(shù)據(jù)添加到 Doc 中 彈出添加規(guī)則對話框 結(jié)束 輸入 正確的 規(guī)則 否 第 12 頁 共 21 頁 實(shí)現(xiàn)刪除規(guī)則功能的程序流程如圖 5。//關(guān)聯(lián)文檔類 docoDeleteRule(position)。//更新規(guī)則列表的顯示 } void CFireWallDoc::DeleteRule(unsigned int position) { if(position = nRules) return。 for(i = position + 1。i++) { rules[i 1].sourceIp = rules[i].sourceIp。 rules[i 1].sourcePort = rules[i].sourcePort。 否 開始 取得當(dāng)前選擇的規(guī)則 正在過濾 ? 調(diào)用 DeleteRule() 更新列表顯示 結(jié)束 停止過濾 是 第 13 頁 共 21 頁 rules[i 1].destinationMask = rules[i].destinationMask。 rules[i 1].protocol = rules[i].protocol。 } } nRules。 圖 6 DeleteRule()的調(diào)用 驅(qū)動(dòng)程序設(shè)計(jì) 簡介 基于 FirewallHook Driver 的包過濾驅(qū)動(dòng)程序位于核心態(tài),運(yùn)行效率高,主要用于在 IP 過濾驅(qū)動(dòng)中攔截所有的網(wǎng)絡(luò)數(shù)據(jù)包,根據(jù)過濾規(guī)則判別是否接收或發(fā)送數(shù)據(jù)包。 安裝過濾函數(shù)之前,先將過濾函數(shù)的地址填入 IP_SET_FIREWALL_HOOK_INFO結(jié)構(gòu)的 FirewallPtr 指針中, Add 設(shè)置為 TRUE,并指定該過濾函數(shù)優(yōu)先級Priority,然后向 IP 設(shè)備發(fā)送 IOCTL IOCTL_IP_SET_FIREWALL_HOOK 控制碼,這樣就完成了過濾函數(shù)的安裝。 刪除 開始 是最后一條規(guī)則? 后面規(guī)則往前移 刪除 結(jié)束 取得當(dāng)前規(guī)則 否 是 第 14 頁 共 21 頁 每個(gè)過濾函數(shù)可以設(shè)置一個(gè)優(yōu)先級,系統(tǒng)調(diào)用這些函數(shù)的時(shí)候按照優(yōu)先級的順序進(jìn)行,直到某個(gè)函數(shù)返回 “ 丟棄包 ” 為止??梢园堰@些過濾函數(shù)想象成一個(gè)過濾鏈,所有的函數(shù)按照優(yōu)先級排列,如果一個(gè)函數(shù)返回 “ 丟棄包 ” ,這條過濾鏈就斷開了。 圖 7 驅(qū)動(dòng)結(jié)構(gòu)圖 該驅(qū)動(dòng)的優(yōu)點(diǎn) 在 Windows 中這不是開發(fā)防火墻的唯一方法,其它的有諸如 NDIS 防火墻,TDI 防火墻, Winsock 分層防火墻,包過濾 API 等等。但不能過濾更低層的頭部數(shù)據(jù),例如:不能過濾以太幀數(shù)據(jù)。 這是一種簡單的方法。但包過濾API(Packet Filtering API)更加容易使用,盡管它缺少彈性,例如不能處理包的內(nèi)容,不能用包過濾 API 修改內(nèi)容。 程序初始化時(shí),調(diào)用 LoadDriver()加載 DrvFltIp 驅(qū)動(dòng): CMainFrame::OnCreate() { (IpFilterDriver,System32\\Drivers\\,NULL,TRUE)。 } 當(dāng)用戶 單擊 “ 停止過濾 ” 按鈕時(shí),程序向驅(qū)動(dòng)發(fā)送 START_IP_HOOK 控制代碼,停止過濾: CMainFrame::OnButtonstop() { (STOP_IP_HOOK,NULL,0)。 } AddFilterToFw() { (ADD_FILTER, amp。 } 當(dāng)用戶單擊 “ 卸載規(guī)則 ” 按鈕時(shí),程序向驅(qū)動(dòng)發(fā)送 CLEAR_FILTER 控制代碼 : CMainFrame::OnButtonuninstall() { (CLEAR_FILTER, NULL, 0)。通過局域網(wǎng)連接于外部網(wǎng)絡(luò),可以 PING 通本地網(wǎng)關(guān)地址 和電信 DNS 服務(wù)器地址 ,如圖 8 和圖 9。 第 17 頁 共 21 頁 源地址: 目的地址 端口號: 0(所有端口) 協(xié)議:由于 PING 命令基于 ICMP 協(xié)議,所以協(xié)議選擇: ICMP 行為:丟棄 圖 10 添加規(guī)則圖 點(diǎn)擊“添加”按鈕將規(guī)則保存到防火墻:如圖 11。 圖 12 開始過濾圖 由圖 12 可以看出原來本地計(jì)算機(jī)可以和本地網(wǎng)關(guān)(路由器)進(jìn)行 ICMP 數(shù)據(jù)包收發(fā),也能和電信 DNS 服務(wù)器進(jìn)行數(shù)據(jù)包收發(fā)。但是本地計(jì)算機(jī)還能和電信 DNS 服務(wù)器 進(jìn)行數(shù)據(jù)收發(fā)。按照用戶設(shè)置的規(guī)則進(jìn)行數(shù)據(jù)包過濾。此防火墻的開發(fā)是在了解和熟悉了 TCP、 UDP、 ICMP 協(xié)議以及 IP 封包過濾驅(qū)動(dòng)的基礎(chǔ)上,運(yùn)用 VC++這一編程語言來開發(fā)的。在以后的學(xué)習(xí)中隨著自身技術(shù)的提高,我會進(jìn)一步完善整個(gè)防火墻 ,使它具有更多的功能對計(jì)算機(jī)安全起到更好的作用。對以后的學(xué)習(xí)和工作 都有 很大的 第 19 頁 共 21 頁 幫助。 [2] Keith ,Richard [M].北京:機(jī)械工業(yè)出版社 ,2021。 [4] 黎連業(yè) ,張維 .防火墻及其應(yīng)用技術(shù) [M].北京:清華大學(xué)出版社 ,2021。 [6] John C++MFC 編程實(shí)例 [M].北京:機(jī)械工業(yè)出版社 ,2021。 第 20 頁 共 21 頁 致 謝 本 文是在索望老師的熱情關(guān)心和指導(dǎo)下完成的,他淵博的知識和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)使我受益匪淺,對順利完成本課題起到了極大的作用。文中除了特別加以標(biāo)注地方外,不包含他人已經(jīng)發(fā)表或撰寫過的研究成果,也不包含為獲得成都信息工程學(xué)院或其他教學(xué)機(jī)構(gòu)的學(xué)位或證書而使用過的材料。 關(guān)于學(xué)位論文使用權(quán)和研究成果知識產(chǎn)權(quán)的說明: 本人完全了解成都信息工程學(xué)院有關(guān)保管使用學(xué)位論文的規(guī)定,其中包括: ( 1)學(xué)校有權(quán)保管并向有關(guān)部門遞交學(xué)位論文的原件與復(fù)印件。 ( 3)學(xué)??梢詫W(xué)術(shù)交流為目的復(fù)制、贈(zèng)送和交換學(xué)位論文。 ( 5)學(xué)??梢怨紝W(xué)位論文的全部或部分內(nèi)容(保密學(xué)位論文在解密后遵守此規(guī)定)。 特此聲明! 第 1 頁 共 57 頁 畢業(yè)設(shè)計(jì) ( 論文 ) 簡易 Windows 防火墻的設(shè)計(jì)與實(shí)現(xiàn) 論文作者姓名: 申請學(xué)位專業(yè): 申請學(xué)位類別: 指導(dǎo)教師姓名(職稱) : 論文提交日期: 簡易 Windows 防火墻的設(shè)計(jì)與實(shí)現(xiàn) 摘 要 當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代,計(jì)算機(jī)與信息處理技術(shù)日漸成熟。網(wǎng)絡(luò)防火墻系統(tǒng)就是網(wǎng)絡(luò)安全技術(shù)在實(shí)際中的應(yīng)用之一。 本防火墻由以下幾個(gè)模塊組成:過濾規(guī)則 添加 模塊 ,過濾規(guī)則顯示模塊,過濾規(guī)則存儲模塊,文件儲存模塊,安裝卸載規(guī)則模塊, IP 封包過濾驅(qū)動(dòng)功能模塊 。 關(guān)鍵詞 : 防火墻;過濾鉤子;過濾驅(qū)動(dòng);包過濾 The Design and Implement of Simple Windows Firewall Abstract The current
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1