Kubernetes 中 pod 与外部 API 通信时的 IP 地址?

问题描述 投票:0回答:2

假设我有一个 pod 在 Kubernetes 集群中运行。

现在这个 pod 想要与外部 API 交互。

当 pod 向 API 发出请求时,API“看到”什么 IP 地址?

kubernetes ip kubernetes-ingress
2个回答
0
投票

假设api指的是Google,Google看到的就是你的外网IP。


0
投票

API 看到的是集群网络的路由器公共地址。

在 Kubernetes 的大多数实现中,集群的节点(以及扩展的 Pod)都位于专用网络内。因此,根据定义,它们拥有无法通过互联网路由的私有 IP 地址。

所以,当他们想要与互联网通信时,必须通过路由器。路由器执行网络地址转换 (NAT),将节点(和 Pod)专用 IP 映射到单个公共 IP 地址,即路由器的地址。

从互联网的角度来看,通信似乎来自路由器的公共IP地址,而不是原始的私有IP地址。

当路由器收到来自互联网的响应时,它使用 NAT 表将响应发送到专用网络内的正确设备。

© www.soinside.com 2019 - 2024. All rights reserved.