首页 > 解决方案 > 有没有办法为 Kubernetes 中的传出流量保留源端口?

问题描述

在大多数 TCP 客户端/服务器通信中,客户端使用随机通用端口号进行传出流量。但是,我在 Kubernetes 集群中运行的客户端应用程序必须使用特定端口号进行传出流量;这是由于服务器的要求。

当应用程序在外部运行时,这通常可以正常工作,但在 Kubernetes 集群内部时,源端口在从 pod 到工作节点的途中被修改(通过工作节点上的 tcpdump 验证)。

对于上下文,我使用的是 LoadBalancer Service 对象。集群在 Iptables 模式下运行 kube-proxy。

标签: networkingkubernetestcpclient-serverport

解决方案


所以我发现我可以通过在 pod 的规范中将hostNetwork字段设置为true来实现这一点。

不是一个理想的解决方案,但可以完成工作。


推荐阅读