1、 计算机网络课程设计报告计算机网络课程设计报告 题 目 端口检测及 IP 包的捕获解析 学生姓名 班级学号 指导教师 设计时间 I 第一节 实验平台和器材准备 1 1.2 实验平台. 1 第二节 需求分析 1 2.1 实验要求. 1 2.1.1 基本要求 1 2.1.3 详细功能要求. 1 第三节、概要设计 1 3.1 端口监听. 1 3.2 IP 包的捕获与解析 . 2 第四节 详细设计 3 4.1 端口监听程序框图 . 3 4.2 端口监听关键代码 . 3 4.2 IP 包捕获与解析程序框图 4 4.2.1 写日志函数 4 4.2.1 IP 包捕获与分析 5 第五节 实验结果分析 . 9
2、5.1 实验结果展示 . 9 5.1.1 端口监听 9 5.1.2 IP 包的捕获与解析析 . 11 5.1 实验结果分析 12 5.1.1 端口监听 12 5.1.2 IP 包的捕获与解析. 13 第六节 错误调试 14 6.1 数据库连接错误 14 6.1.1 解决方案 14 6.2 POST 乱码解决方式 15 6.2.1 错误表现 15 6.2.2 解决方案 . 15 6.3 Socket 连接错误 . 16 II 6.3.1 错误表现 16 6.3.2 产生错误的原因 16 6.3.3 解决方式 16 第八节 实验总结 0 第九节 参考资料 1 附件:. 2 1 第一节第一节 实验平
3、台和器材准备实验平台和器材准备 1.2 实验平台实验平台 软件开发环境 Eclipse 其他工具 Jnetpcap,winpcap 第二节第二节 需求分析需求分析 2.1 实验要求实验要求 2.1.1 基本要求基本要求 本次实验的要求在网络环境,实现端口检测以及捕获网络中的 IP 数据包,解析数据包 的内容,将结果显示在标准输出上,并同时写入日志文件。 2.1.3 详细功能要求详细功能要求 l)实现本机以及局域网内计算机的端口监控。 2)在标准输出和日志文件中写入捕获的 IP 包的版本、头长度、服务类型、数据包总长 度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源 I
4、P 地 址和目的 IP 地址等内容。 3)形成记录结果的日志文件。 第三节、概要设计第三节、概要设计 3.1 端口监听端口监听 创建一个服务器 s,依次开放 065535 间所有的端口,当开放过程抛出 IO 流异常 e,并且 2 e 是 .BindException 的一个实例时,输出该端口被占用。 3.2 IP 包的捕获与解析包的捕获与解析 在 Java 平台下通过第三方包来进行底层网络嗅探。 使用 JnetPCAP 对接 WinPCAP 来截获网卡 数据包,分为四步走。 第一步:获取网卡列表。 通过 Pcap.findAllDevs(alldevs, errbuf) 这个静态方法将所有本机网卡加入到 alldevs 的 ListPcapIf T handler, T user) 方法即可进行监听,在 loop 方法的参数中有两点需要关注,第一点是用户指定的数据包分析器,在之后的文章中 将详细介绍;第二点是一个泛型参数,表示传输给分析器的用户指定类型的消息。 第四步