一、采集内容
客户端通过 eBPF 的 kprobe 与 tracepoint 采集以下五项网络行为。下文内核版本,均指这五项都可以采集。
| 网络行为 | 识别目标 |
| 发起网络连接 | 主动外联 |
| TCP 连接状态变化 | 连接建立与断开 |
| 端口绑定 | 主机监听的端口 |
| UDP 发送(含 DNS 查询) | DNS 访问 |
| Unix 域套接字连接 | 本机进程之间的连接 |
二、已验证内核版本
| 操作系统 | 内核版本 |
| CentOS 8 | 4.18.0-305.3.1.el8.x86_644.18.0-348.7.1.el8_5.x86_64 |
| al8 内核 | 5.10.134-16.3.al8.x86_64 |
| TencentOS Server 3.1 (TK4) | 5.4.119-19.0009.655.4.119-19.0009.67.3 |
| TencentOS Server 4 | 6.6.92-34.1.oc9.x86_646.6.92-34.1.tl4.x86_646.6.119-47.8.oc9.x86_64 |
| OpenCloudOS Server 9 | 6.6.34-9.oc9.x86_646.6.47-12.oc9.x86_646.6.117-45.1.oc9.x86_646.6.119-49.23.oc9.x86_64 |
| Ubuntu | 6.8.12-060812-generic6.14.11-061411-generic |
注意:说明:
三、采集前提
确认内核有提供 BTF,BTF 是内核自带的类型信息,客户端靠它加载 eBPF 程序(如 CentOS 7 默认的 3.10 内核没有 BTF,可安装客户端,但不会启用上述网络行为采集),确认步骤如下:
1. 在 Linux 主机上执行:
ls /sys/kernel/btf/vmlinux
2. 若该文件存在,表示内核提供 BTF。
注意:说明:
注意:有 BTF 只说明具备加载条件,请按下文核对内核版本是否已验证五项网络行为采集。
四、核对内核
核对当前主机的内核版本,是否已验证可以完整采集上述五项网络行为,核对步骤如下:
1. 在 Linux 主机上执行:
uname -r
2. 将输出的完整内核版本与上文已验证内核版本对照,查找完全相同的内核版本。
·可查到:说明上述五项网络行为内容均可采集。
·查不到:说明该版本仍在验证中,尚未收录至这篇,五项网络行为的采集情况,以该主机实际结果为准。