24在一台节点内创建接口与地址;两台宿主是否互通还取决于 underlay 路由和封装路径。把 Pod IP “看着在同一个网段”当成两台物理宿主共享一个二层网络的证据,容易在 MTU 边界上失败。VXLAN 等 overlay 会增加外层头部,同样的应用报文占用更多 underlay 字节,但具体开销依 IP 家族与报文头选项而变,不能在未抓包时抄一个固定减数。

两端都要记录

直路由路径要使两端宿主知道对端 Pod 子网经哪个下一跳到达;封装路径则由 overlay 端点把内层包封装为外层 UDP/IP,并靠 underlay 递送到另一端。无论哪种,先在两台独立 VM 固定 IP、路由表、接口 MTU 和过滤规则,双端抓包,再逐次提高自建探针请求负载的报文大小。若小包成功、大包失败,比较内层 DF/分片、外层包长、ICMP Packet Too Big 和 PMTU 发现,不能只说“网络不稳定”。

正常例应验证小包与不超过路径 MTU 的大包均到达;边界例将受控 overlay 接口 MTU 配错,使请求在确定阈值附近失败,再调整仅属于实验的配置并复核双端结果。计时与丢包只报告真实抓包次数,不估算“合理的”性能数。本环境没有两台独立 VM、ip 或 CNI 插件,直路由与 VXLAN 对照、双端抓包、故障与恢复全部 NOT_RUN;补跑方案和探针源码包仍可独立取得。

现象 核查数据 不可直接推出
小请求正常、大请求卡住 两端抓包、MTU、ICMP 一定是应用超时
两端 Pod 子网地址相似 各宿主路由及 overlay 端点 共享物理二层
外层丢包 underlay 路由/过滤 内侧 veth 已坏

练习

  1. 先预测同一内层报文走 IPv4 和 IPv6 外层封装时可用 MTU 是否相同,按真实抓包计算外层头部并验证不硬编码数值。
  2. 预测停掉一侧受控 VXLAN 端点后两端分别看到哪些包;在专用 VM 抓包、恢复、确认所有自建接口删除。

上一篇:24:CNI;下一篇追踪 Pod 对象与节点执行。

系列总目录:从进程隔离到运行时与编排。

参考资料