Subnet vuol dire sotto rete, ovvero una rete più piccola all'interno di una rete più grande, a livello di protocollo IP la subnet comprende apparati di rete che possono dialogare tra di sè ma non hanno contatto diretto con il resto della rete (bada bene, non intendo internet, ma rete di computer in generale), per far ciò il protocollo internet riconosce gli apparati nella stessa sotto rete grazie alla subnet mask, ovvero un sistema di identificazione che divide l'indirizzo IP in due parti, la parte comune e la parte divers aper ogni apparato della stessa sottorete. Gli apparati di rete riconosco, analizzando IP e subnet mask, se un IP richiesto è locale alla sotto rete e quindi viene contattato localmente o se l'IP richiesto è esterno alla sotto rete e quindi è necessario contattare il gateway, ovvero un apparato che mette in comunicazione una sotto rete con il resto della rete, tutto già spiegato qua:
en.m.wikipedia.org
Esistono delle specifiche classi di subnet "private" per poter raggruppare apparati di rete interni alla stessa unità organizzativa (azienda, casa, scuola, realtà geografica, ecc)
en.wikipedia.org
en.wikipedia.org
Per poter traslare IP di una sottorete al resto della rete si usa la tecnica di routing (source network address translation o S-NAT)
it.wikipedia.org
Per capire come viene effettuato il NAT, leggi come è composto il datagram IP
en.wikipedia.org
Se non riesci a capire leggendo da wikipedia, allora davvero ti serve il libro che ti ho indicato o equivalenti (io ho studiato su quello e lo ritengo la mia personale bibbia)