You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure K8s集群中同主机Pod间UDP报文被内核丢弃的问题排查求助

Azure K8s集群中同主机Pod间UDP报文被内核丢弃的问题排查求助

我在Azure的K8s集群里碰到了一个UDP报文转发的异常问题,想请大家帮忙排查下:

  • 集群内有两个K8s服务:serviceA和serviceB。其中serviceA是LoadBalancer类型,并且配置了externalTrafficPolicy=Local
  • 客户端向serviceA发送UDP报文,serviceA通过用户态代码将报文转发给serviceB,预期serviceB的Pod直接给客户端回包
  • serviceA的Pod(podA)和serviceB的Pod(podB)存在被调度到同一台宿主机的情况
  • 为了实现直接回包,我在podB的初始化容器里给宿主机添加了一条SNAT规则:把podB发出的UDP报文源IP从Pod IP替换成负载均衡的浮动IP,示例规则如下:
    iptables -t nat -D POSTROUTING -p udp -s 10.224.0.157 --sport 9999 -j SNAT --to-source 20.225.34.72:9999
    
  • 当前遇到的核心问题:当podA和podB在同一台宿主机上时,报文会被丢弃;两者不在同一主机时,报文能正常发出

备注:内容来源于stack exchange,提问作者feiyu_guo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 11:33:21