<pre><code> Network1               Network2
(MASER, NODE1) &lt;=NAT=&gt; (NODE2, NODE3)
</code></pre>

<p>Is it possible to make overlay network work on nodes behind the NAT (without real IP addresses)? If so, how to do it?</p>

Jonas
<p>First of all this might not be good idea, as Kubernetes needs a stable networking between master(s) and nodes or you might get into multiple problems. Not sure if this will work in your case but you could look at <a href="https://github.com/kubernetes-sigs/federation-v2" rel="nofollow noreferrer">federation</a> between clusters. </p>

<p>Also I'm pretty sure here is the answer:</p>

<blockquote>
  <p>Kubernetes imposes the following fundamental requirements on any
  networking implementation (barring any intentional network
  segmentation policies):</p>
  
  <ul>
  <li>all containers can communicate with all other containers without NAT</li>
  <li><strong>all nodes can communicate with all containers (and vice-versa) without
  NAT</strong> </li>
  <li>the IP that a container sees itself as is the same IP that others
  see it as</li>
  </ul>
</blockquote>
