news 2026/5/1 5:48:39

12、Linux 网络中的 BPF 应用与数据包过滤

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
12、Linux 网络中的 BPF 应用与数据包过滤

Linux 网络中的 BPF 应用与数据包过滤

1. BPF 概述与应用场景

在网络领域,BPF(Berkeley Packet Filter)程序主要用于两个方面:数据包捕获和过滤。用户空间程序可以为任何套接字附加过滤器,提取流经该套接字的数据包信息,并根据需要允许、禁止或重定向特定类型的数据包。

BPF 程序在网络中的应用场景主要包括以下几种:
- 实时流量丢弃:例如,只允许用户数据报协议(UDP)流量,丢弃其他所有流量。
- 实时观察过滤后的数据包:对实时系统中流经的过滤后数据包进行观察。
- 回顾性网络流量分析:使用 pcap 格式捕获实时系统中的网络流量,以便后续分析。

2. tcpdump 与 BPF 表达式

tcpdump 是一款广为人知的命令行工具,本质上是 libpcap 的前端,允许用户定义高级过滤表达式。它从指定的网络接口读取数据包,然后将接收到的数据包内容输出到标准输出或文件中。数据包流可以使用 pcap 过滤语法进行过滤,该语法是一种领域特定语言(DSL),使用一组高级表达式来过滤数据包,这些表达式通常比 BPF 汇编更容易记忆。

以下是一个使用 tcpdump 过滤 IPv4 TCP 端口 8080 流量的示例:

# tcpdump -n 'ip and tcp port 8080'
  • -n:告诉 tcpdump 不将地址转换为相应的名称,以便查看源地址和目的地址。
  • ip and tc
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 5:46:35

哔哩下载姬完整指南:5步掌握B站视频高效下载技巧

哔哩下载姬完整指南:5步掌握B站视频高效下载技巧 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&#xff09…

作者头像 李华
网站建设 2026/4/23 18:45:07

英伟达Audio Flamingo 3震撼发布:全开源音频大模型改写行业格局

2025年7月18日,英伟达正式推出新一代音频大语言模型Audio Flamingo 3(以下简称AF3),这款完全开源的突破性产品在语音识别、环境音效解析和音乐生成等核心领域实现全面超越。作为业界首个支持多模态音频交互的基础模型,…

作者头像 李华
网站建设 2026/4/23 17:17:38

Ring-1T重磅发布:万亿参数思维模型开启开源推理新纪元

今日,我们正式推出万亿参数思维模型Ring-1T,实现发布即开源的重大突破。开发者可通过Hugging Face与ModelScope平台获取模型权重,或直接通过灵犀聊天页面与ZenMux平台体验对话交互及API调用服务(相关链接详见文末)。作…

作者头像 李华
网站建设 2026/4/29 5:20:35

2025-12-13:十六进制和三十六进制转化。用go语言,给定一个整数 n,先求它的平方并把该值用大写字母的 16 进制表示(符号位按需处理,数位使用 0–9 与 A–F),再求它的立方并将该值用大

2025-12-13:十六进制和三十六进制转化。用go语言,给定一个整数 n,先求它的平方并把该值用大写字母的 16 进制表示(符号位按需处理,数位使用 0–9 与 A–F),再求它的立方并将该值用大写字母的 36…

作者头像 李华