<p>on the node that api server is running, when I call <code>curl localhost:8080/api</code>, I see following</p>

<pre><code>{
  "kind": "APIVersions",
  "versions": [
    "v1"
  ],
  "serverAddressByClientCIDRs": [
    {
      "clientCIDR": "0.0.0.0/0",
      "serverAddress": "192.168.152.201:6443"
    }
  ]
}
</code></pre>

<p>However, if I do <code>curl 192.168.152.201:6443/api</code> on same machine, I do not get anything back.</p>

<p>Can anyone explain why this is the case and how I can access api server externally?</p>

Brandon Lee
<p>It's related to routing and when you make a call <code>192.168.152.201</code> where your traffic is going to.</p>

<p>Could be one or multiple things, some things to check:</p>

<ul>
<li><p>Does one of your physical interfaces have <code>192.168.152.201</code> configured as its IP address? (ie, ensX, or ethX)</p></li>
<li><p>What is your default route? What do you get if you type <code>ip route</code> (Linux)</p></li>
<li><p>If <code>192.168.152.201</code> is not one of your physical interfaces, is it an outside service. How do you get from your default route to that?</p></li>
<li><p>If <code>192.168.152.201</code> is, in fact, one of your physical interfaces, do you have any iptables (firewall rules) preventing access to <code>192.168.152.201:6443</code> and not <code>127.0.0.1:6443</code></p></li>
</ul>
