title: What does public subnet mean in AWS VPC?
body: <p>I learnt that private IPv4 address space is:</p>
  
  <pre><code>Class A 10.0.0.0 – 10.255.255.255
  Class B 172.16.0.0 – 172.31.255.255
  Class C 192.168.0.0 – 192.168.255.255
  </code></pre>
  
  <p>A private IP address is an IP address that cannot be accessed over the Internet and normally protected by firewall.</p>
  
  <hr>
  
  <p><code>169.254.0.0</code> used by Microsoft machines but not assigned by IANA</p>
  
  <hr>
  
  <p>In the below AWS VPC architecture(from <a href="https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Scenario2.html" rel="nofollow noreferrer">here</a>):</p>
  
  <h2><a href="https://i.stack.imgur.com/Sxcwo.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Sxcwo.png" alt="enter image description here"></a></h2>
  
  <p>Public subnet is designated with subnet <code>10.0.0.0/24</code>, but this address is part of private address space(<code>10.0.0.0 – 10.255.255.255</code>).</p>
  
  <p>Why subnet(<code>10.0.0.0/24</code>) is considered as public subnet?</p>
  
  <p><em>Note:</em>
  In AWS world, associating a subnet to a public route table makes it a public subnet. Route table entry having outbound traffic to IGW indicates a route table, a public route table</p>