首页 > 解决方案 > 使用 pcap 监控 15-30 个接口的成本是多少?

问题描述

在一个标准配置中使用 docker 网络,每个容器都有自己的虚拟 NIC。

我有兴趣同时监控所有这些,抓取 IP src 和 dst 地址以及 TCP 或 UDP src 和 dst 端口(如果适用)。

这样做的成本可能有多大?

有什么方法可以做我想要的,即在桥接模式下仅监视 docker 桥接接口?

在 Kubernetes 中处理多个通过 flannel 相互通信的 docker 网络时,我发现很多 src 和 dst IP 地址只是桥地址。(大概是网桥做了 NAT,但由于某种原因,我在 iptables -t nat -L 下没有看到翻译规则)

标签: dockerkuberneteslibpcap

解决方案


这是相当大的。如果您在容器内执行 pcap,您的应用程序可能会遇到 2-3 倍的 CPU 计算开销。但实际上,这完全取决于您如何捕获,您的表情是否捕获了每个数据包?您的应用程序是否有大量流量?

这里的另一个问题提供了更多见解:tcpdump 的侵入性如何?

正如您已经提到的,如果您仅在桥接接口上捕获,您可能已经看到了翻译/伪装的地址。


推荐阅读