搜索快捷键 cmd + k | ctrl + k
pcap_reader

从 DuckDB 读取 PCAP 文件

维护者: lmangani, glongo, kYroL01

安装和加载

INSTALL pcap_reader FROM community;
LOAD pcap_reader;

示例

-- Basic PCAP reader for local or remote files
D SELECT * FROM pcap_reader('test.pcap') LIMIT 3;
┌─────────────────────┬────────────────┬────────────────┬──────────┬──────────┬──────────┬────────┬───────────────────────────────────────────┐
      timestamp           src_ip          dst_ip      src_port  dst_port  protocol  length                  payload                   
      timestamp          varchar         varchar      int32     int32     varchar   int32                   varchar                   
├─────────────────────┼────────────────┼────────────────┼──────────┼──────────┼──────────┼────────┼───────────────────────────────────────────┤
 2024-12-06 19:30:2  xx.xx.xx.xxx    yyy.yyy.yy.yyy  64078     5080      UDP       756     INVITE sip:810442837619024@yyy.yyy.yy.y  
 2024-12-06 19:30:2  yyy.yyy.yy.yyy  xx.xx.xx.xxx    5080      64078     UDP       360     SIP/2.0 100 Trying\r\nVia: SIP/2.0/UDP   
 2024-12-06 19:30:2  yyy.yyy.yy.yyy  xx.xx.xx.xxx    5080      64078     UDP       909     SIP/2.0 480 Temporarily Unavailable\r\n  
├─────────────────────┴────────────────┴────────────────┴──────────┴──────────┴──────────┴────────┴───────────────────────────────────────────┤
 3 rows                                                                                                                            8 columns 
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

关于 pcap_reader

DuckDB PCAP 读取器

pcap_reader 是一个 DuckDB 社区扩展,允许网络分析师直接使用 SQL 查询和分析 IPv4 和 IPv6 PCAP 文件。

它采用 Rust 构建,兼顾性能和安全性,利用 pcap-parser crate 高效处理数据包捕获数据。

功能

  • 直接访问 PCAP:无需外部工具,即可将 PCAP 文件直接加载到 DuckDB 中。
  • SQL-PCAP 分析:使用 DuckDB 筛选、聚合和分析 IPv4/IPv6 网络流量。

PCAP 读取器扩展是实验性的,请自行承担风险使用!

新增函数

函数名称 函数类型 描述 备注 示例
pcap_reader NULL NULL