这是一个网络问题,主要涉及到 Linux Bridge,还涉及一点点 K8S (但我个人认为,这个问题可能呢和 K8S 本身无关)
先说一下背景吧
我用 linux bridge,配置 k8s 的 cni,将容器 IP,与宿主机 规划到大二层环境下。目的是,让容器 IP 不再是虚拟 IP。这样一来,Java 应用,也可以将容器 IP 暴露到注册中心。搭建完集群后,容器的 IP 访问什么的,都没有问题。但是我在抓包的时候,遇到一个现象。
比如说,有 3 个 K8S 的节点,分别是 A、B、C。
A 上有容器:a1、a2
B 上有容器:b1、b2。
C 上有容器:c1、c2。
我的期望是,在 b1 上抓包,只能抓到这个容器自己网络下的包。但实际上不是。
问题是,我在 B 节点的 b1 容器上抓包,居然可以抓到 A 主机发到 A 主机上的 a1 容器的包。
K8S 版本 1.13.7,CNI 都是官方的。没有任何定制化内容。google 和 baidu 完全找不到相关的问题描述。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.