- 1
- 0
- 约7.25千字
- 约 14页
- 2017-06-14 发布于湖北
- 举报
实验二
网络数据包的捕获及协议的简单分析
实验目的
网络数据包的捕获及协议的简单分析。网络数据包是基于网络的入侵检测系统的重要数据源,网络数据包的捕获是基于网络的入侵检测系统实现的第一步。通过该实验,熟悉并掌握Linux环境下基于Lipbcap的网络数据包的捕获方法,理解和掌握基于网络入侵检测系统的源数据的捕获、协议分析的基本原理和实现方法。能够熟练应用Libcap开发包中的函数完成网络环境下功能较为简单的网络捕获包和分析程序。
实验内容
1、学习libpcap开发包的功能,并在linux下配置好libpcap环境。
2、在linux系统下基于Libpcap编写C程序数据包
先安装bison、flex、m4,最后安装libpcap
第一步:解压:tar -xvf bison-2.4.1.tar.gz.gz //因为都是.tar.gz的压缩包,使用tar解压命令
第二步:检查:./configure //检查计算机建立包所必须的完整性;根据需要改变默认的路径;激活/禁用编译程序中的各种选项;改变程序将要被安装的路径;
第三步:编译: (sudo)make //(有时候需要root权限)
第四步:安装:(sudo) make install //(有时候需要root权限)
bison-2.4.1.tar.gz.gz、flex-2.5.35.tar.gz.gz、m4-1.4.13.tar.gz.gz都用上述方法安装,最后同样方法安装libpcap-1.5.3.tar.gz.gz
最后将解压到的libpcap-1.5.3目录下的pcap目录复制到根目录下的/usr/include里,再将/usr/lib目录下的libpcap.so.1.5.3复制一份改名为libpcap.so.1放到/usr/lib。
实验代码
标准的与上比对的简单实现代码:
#include pcap.h
#include stdio.h
int main(int argc, char *argv[]){
pcap_t *handle; /* 会议手柄*/
char *dev; /*嗅探装置*/
char errbuf[PCAP_ERRBUF_SIZE]; /* 错误字符串*/
struct bpf_program fp; /* 编译过滤器*/
char filter_exp[] = port 80; /* 过滤器表达式*/
bpf_u_int32 mask; /* 网络掩码*/
bpf_u_int32 net; /* IP */
struct pcap_pkthdr header; /* PCAP返回的头部*/
const u_char *packet; /* 实际的数据包*/
/* 查找网络设备 */
dev = pcap_lookupdev(errbuf);//如果当前有多个网卡,函数就会返回一个网络设备名的指针列表。
if (dev == NULL) {
fprintf(stderr, 找不到默认的设备: %s\n, errbuf);
return(2);}
/* 获得网络参数 */
if (pcap_lookupnet(dev, net, mask, errbuf) == -1){ //获得指定网络设备的IP地址和子网掩码
fprintf(stderr, 无法获取网络掩码设备 %s: %s\n, dev, errbuf);
net = 0;
mask = 0;}
/* 打开网络设备,混杂模式下打开会话 */
handle = pcap_open_live(dev, BUFSIZ, 1, 1000, errbuf);//利用第一步中的返回值,可以决定使用哪个网卡,打开网卡,返回用于捕捉网络数据包的秒数字。
if (handle == NULL) {
fprintf(stderr, 无法打开设备 %s: %s\n, dev, errbuf);
return(2);}
/* 编译和应用过滤器 */
if (pcap_compile(handle, fp, filter_exp, 0, net) == -1)// 数据包的过滤
{
fprintf(stderr, 无法解析过滤器 %s: %s\n, filter_exp, pcap_geterr(handle));
return(2);}
/*设置过滤器*/
if (pcap_setfilter(handle, fp) == -1){ //在上一步的基础上利用pcap_setfilter()函数来设置
fprintf(stderr, 无法安装过滤器 %s: %s\n, filter_exp, pcap_geterr(handle));
retu
您可能关注的文档
- 答案:过程及函数.doc
- 三三三高校教学模式的实践及思考.doc
- java常见面试题和三大框架面试.doc
- PLSQL批量操作及动态SQL.doc
- 指针练习题及答案.doc
- 物流设施及设备期末复习整理.doc
- 怎样高效筛选简历?.docx
- [中级] 2012年中级经济师工商管理学习笔记第一节.docx
- 电脑主板故障诊断检测卡代码表及解决方案.doc
- 《 数据库原理及应用》课程考试试卷(A).doc
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 2025统编版小学道德与法治三年级下册教学计划、教学设计附教学反思(附目录).docx
- 2026年廉政答案考试题库(考试直接用).docx VIP
- 虚列费用培训课件.ppt VIP
- Z20名校联盟(浙江省名校新高考研究联盟)2026届高三第二次联考日语含答案.doc VIP
- 煤矿2026年机电工作计划方案.docx VIP
- 企业合规法律服务指引(湖北省律师协会法律顾问专委会).pdf VIP
- Qu系列说明书QU16&QU24(加强版).pdf VIP
- 数学与生活:一元二次方程的起源.pptx VIP
- 事业单位d类综合应用能力必背知识点.pdf VIP
- (课堂用)TheFutureoftheEnglish(课件.ppt VIP
原创力文档

文档评论(0)