使用一种标准配置的docker网络,每个容器都具有自己的虚拟NIC。
我有兴趣同时监视所有这些,抓取IP src和dst地址以及TCP或UDP src和dst端口(如果适用)。
这样做的代价可能是多少?
在桥接模式下,是否有任何方法可以执行只监视Docker桥接接口的操作?
在处理通过Kubernetes中的法兰绒相互通信的多个docker网络时,我发现许多src和dst IP地址仅是桥接地址。 (大概是网桥可以进行NAT,但是由于某些原因,我没有在iptables -t nat -L下看到转换规则)
答案 0 :(得分:1)
相当可观。如果在容器内进行pcap操作,则可能会导致应用程序的CPU计算开销增加2-3倍。但是实际上,这完全取决于您的捕获方式,您的表达式是否捕获每个单个数据包?您的应用程序流量大吗?
这里的另一个问题提供了更多的见解:How intrusive is tcpdump?
正如您已经提到的,如果仅在桥接接口上捕获,则可能已经看到翻译/伪装的地址。