<p>I question I have trouble finding an answer for is this:
When a K8s pod connects to an external service over the Internet, then that external service, what IP address does it see the pod traffic coming from?</p>
<p>I would like to know the answer in two distinct cases:</p>
<ol>
<li>there is a site-to-site  VPN between the K8s cluster and the remote service</li>
<li>there is no such VPN, the access is over the public Internet.</li>
</ol>
<p>Let me also add the assumption that the K8s cluster is running on AWS (not with EKS,it is customer-managed).</p>
<p>Thanks for answering.</p>

<p>When the traffic leaves the pod and goes out, it usually undergoes NATing on the K8S Node, so the traffic in most cases will be coming with the Node's IP address in SRC. You can manipulate this process by (re-) configuring <a href="https://kubernetes.io/docs/tasks/administer-cluster/ip-masq-agent/" rel="nofollow noreferrer">IP-MASQ-AGENT</a>, which can allow you not to NAT this traffic, but then it would be up to you to make sure the traffic can be routed in the Internet, for example by using a cloud native NAT solution (Cloud NAT in case of GCP, <a href="https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html" rel="nofollow noreferrer">NAT Gateway</a> in AWS).</p>
