<p>I'm aware that what I'm about to ask is probably an extremely basic networking question, but I'm not even sure the best way to word this to do a Google search that returns anything useful.</p>
<p>I'm working through a Kubernetes tutorial which suggests to get the IP address of one of my services with this command:</p>
<pre><code>minikube service web --url
</code></pre>
<p>This returns to me <code>http://192.168.64.2:30169</code>. The part that confuses me is that my computer's IP address is <code>192.168.64.1</code>. It seems like there are actually two IP addresses on my local network that &quot;live&quot; on my laptop, but when I try to access the service address from another machine on my home network the service does not load.</p>
<h1>Question</h1>
<p>What is really going on when each service is assigned a different IP address? What network is that on and why can I only access those services from my laptop?</p>

<p>I think &quot;http://192.168.64.2&quot; could be the IP address of the VM that minikube is running. You can check it using <code>minikube ip</code>. <code>30169</code> could refer to the port where the service is accessible if the service is of <code>NodePort</code> type. Also, these IPs are locally exposed on your computer so they may not be accessible from another computer.
Each service is assigned a virtual IP address inside the kubernetes cluster. They can be accessed from outside the cluster if they are of <code>NodePort</code> type. You can access them on any node of the cluster (hence multiple different IP addresses) or you could loadbalance across those node by adding a <code>Loadbalancer</code> or <code>Ingress</code>.</p>
