- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
仅供个人参考
仅供个人参考
不得用于商业用途
不得用于商业用途
实验五 基于包过滤技术的防火墙设计与实现
(一) 实验要求
利用WinpCap嗅探器,通过抓取网络数据包,设计一个基于协议分析的包过滤防火墙系 统。通过该实验使学生在掌握 WinPcap开发包的基础上,掌握使用WinpCap编写网络应用程 序的能力,深入理解包过滤防火墙的工作原理。
(二) 知识点提示
主要知识点:
For pers onal use only in study and research; not for commercial use
1. WinPcap 开发包;
2 ?网络应用程序开发。
实验内容
开发出一个简单的 Windows平台上的Sniffer工具,能显示所捕获的数据包并能做简单
的分析或统计。主要内容:
列出检测主机的所有网卡,选择一个网卡,设置为混杂模式进行监听。
WINPCAP含有专用的函数,可以检索本机的网卡设备:
A*衣驱机矶冏遅备列表时
i ± (paiblJcII 1°vs.工k: iJ^CKP SRT IF STKLN&p HULL /* i s 为打 . crrb-af) -- -1)
£pt intf fetderr, "Errcr m pc竝一:firwialld电详_抄: 轴'n", trrbnf],
/*打印糜时
(d= allltr: i != BULL; <1= )
{
a 治:4+i
//eout<C! I ! \
coi,t?d_>T.4inf;
//CQUt<C'l !\
i+-:
i £ td-sCi" [ p ti dlk〕
priitfl-)desctiplian);
?lse
prittfC (Jc kscription manlibhnrTJ;
}
if 丘-=0)
{
printf C'/rjftJ interfaces f*und! Make sire tfirJcap is. inslall^d. \n*): re'um 0;
b) WINPCAP含有专用的函数,可以选择本机网卡:
//pc (
//coast diaor ^souxce. f/fg定的网卡的名称
?/ ii\tsnapl?n^ /7鞭前底度
// 网卡捕茯的複式
// i ntr e ad_t i me out. / f 超时
// struct j)cap_rmtauth ^auth., //是否要求认证
// char >errluif//ia 误信息存储
打)
捕获多有流经网卡的数据包,并利用 WinPcap函数库设置过滤规则
利用WinPcap函数库设计过滤规则,设计过滤器:
r f cn-ar p^Gice^_r i」- ip ana □ cnp
uh世 pick8t_filt#r[] - "ip and tcp\_
“縮译过据器
{
fprintfktdgir匚"^nJnable to compile th? packet filter. Chick the synt^ liTJ; /*釋於设备刊壷*/
pcap_£r e^allde^rs (all d?vs);
rat urn _1:
“设置过誌器
i £ ai.p s? tfi.1 t?r (adhandla, &Ecoda) <XJ)
*
fprin七忙仗皿中"血珂皿 s?tting tha W);
掩释放设备死表*/
pctp_fr e^alldevs (?L1 d?v^);
return T ;
分析捕获到的数据包的包头和数据,按照各种协议的格式化显示
a) Ip地址格式:
3 tyjiedef struct i p^allr johsr bytel : ii—ch址 byte2 ; ii—ch右r byte3 : u_c ksr Lyte4 ;
} i p ^.dir ?es5;
ess.b) Ip数据包格式:
ess.
u_charver_i hl;//■u^cltartos;//u^shorttlen;打
u_char
ver_i hl;
//
■u^cltar
tos;
//
u^short
tlen;
打
u^slicirt
i dent i£i ca-.fi on;
//
u_short
flag5_fQl;
打
u^char
ttl;"
//
u^char
proto:
//
u^short
crc ;
//
ip_addre
;ss e a dir;;
//
ip address l^ddr;
//
op J)id;
//
id er :
M* IPw4 首部 */
a typed^ef struct 电dLt「f
服雾类型但ypm o£ ■e exvd ce )
总长(Total length]
毎识 denti £i. c
文档评论(0)