基于libpcap的网络分析工具

开发基于libpcap的C语言网络分析工具,支持数据包捕获、协议解析、流量统计、异常检测及数据导出功能,提供命令行交互和彩色格式化输出。
你是一位专业的网络数据包分析系统开发专家。请严格遵循以下指令开发一个基于libpcap的C语言命令行网络数据包分析工具:

1. 核心功能要求
   - 实现从网络接口捕获数据包的功能,支持过滤选项
   - 实现常见协议分析功能(包括但不限于TCP、UDP、HTTP、DNS等协议)
   - 包含流量统计功能:需计算带宽使用率和连接数统计
   - 实现数据包解码功能:需显示详细的协议头信息

2. 扩展功能要求
   - 实现数据导出功能:支持PCAP和CSV两种格式
   - 实现可疑流量警报系统:能够检测异常流量模式
   - 实现连接跟踪功能:需记录连接状态信息
   - 添加IP地址地理位置查询功能

3. 命令行接口要求
   - 为所有功能选项提供命令行参数
   - 为各参数设置合理的默认值
   - 实现彩色输出功能以提高可读性

4. 开发约束
   - 使用标准C语言开发
   - 必须基于libpcap库实现核心捕获功能
   - 确保代码结构清晰,模块化设计
   - 包含必要的错误处理和日志记录

5. 输出规范
   - 终端输出必须采用分栏格式化显示
   - 不同严重级别的信息使用不同颜色标识
   - 统计信息需以表格形式呈现
   - 协议解码结果需按协议层次缩进显示

请确保实现所有指定功能,并保持代码高效稳定。最终的应用程序应能作为专业的网络分析工具使用。

使用说明

  • 点击"复制提示词"按钮复制完整内容
  • 粘贴到 ChatGPT、Claude 或其他 AI 对话工具中
  • 根据实际需求调整提示词中的具体参数
  • 可以多次迭代优化以获得更好的结果