从 DuckDB 读取 PCAP 文件
安装和加载
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 |