Ti rispondo in due parole per quanto riguarda IP, Gateway, Subnet, DNS.
Partiamo dall'IP. Un indirizzo IP è un codice numerico che identifica un dispositivo all'interno di una rete locale. Se ho, per esempio, due computer, un server e un router, potrei "chiamare" il router 192.168.1.1, il server 192.168.1.2 e i due computer rispettivamente 192.168.1.3 e 192.168.1.4.
Quando i quattro dispositivi devono comunicare tra di loro, utilizzano questi indirizzi. Tu puoi assegnarli con le tue manine oppure puoi creare un server (chiamato DHCP) che "distribuisce" indirizzi IP.
Se, normalmente, all'accensione del dispositivo, lui sa quale IP gli hai dato, se usi un DHCP il dispositivo cerca nella rete fino a che non trova questo server e "si fa dare" il suo IP.
Naturalmente, nel caso tu usi un DHCP (integrato in quasi tutti i router, servizio attivabile/disattivabile a piacere) ogni volta che accendi i dispositivi, i loro indirizzi cambiano.
Facciamo un esempio pratico:
Ho un router con server DHCP attivo e acceso. Collegato ho un server e due terminali.
se accendo prima il server a questo verrà assegnato il 192.168.1.2 e poi ai terminali 192.168.1.3 e .4, tuttavia, se accendessi prima il terminale 1 sarebbe lui a ricevere il .2, anzichè il server.
Questo non è un problema quando abbiamo una rete fatta di dispositivi il cui unico scopo è quello di navigare in internet (internet cafè) quindi c'è un DHCP e da gli indirizzi a tutti quelli che lo richiedono.
In una rete con file sharing, invece, è importante avere degli indirizzi IP statici (con il DHCP si chiamano IP dinamici) perché so che quel computer a cui mi devo collegare per scambiare dati è sempre e solo a quell'indirizzo IP.
Il gateway è sostituibile con la parola router e indica al dispositivo l'indirizzo IP dell'aggeggio con cui si collega ad internet. Per fare un esempio, se ho due router e quattro PC, i due router rispettivamente 192.168.1.1 e 192.168.1.2 e le quattro postazioni sono .3, .4, .5 e .6, se imposto due postazioni con Gateway .1 e due con gateway su .2 avrò le prime due che accedono da internet con il primo router, le altre due postazioni che accedono con il secondo router.
Naturalmente se spengo il primo router, le prime due postazioni non accederanno ad internet, mentre le restanti due si, dal momento che il secondo router è acceso.
Per quanto rigutarda la subnet, questa specie di indirizzo server ad indicare quali numeri sono "fissi" ed indicano, quindi, la rete e quali sono "mobili" ed indicano il numero progressivo identificatore.
Mi spiego meglio.
Inirizzo: 192.168.1 .1
subnet: 255.255.255.0
In questo caso "192.168.1. " indica su quale rete sto operando, mentre ".1" indica che quello è il numero 1 di quella particolare rete.
Se io avessi tre computer e un router. Tutti e quattro i dispositivi settati con gateway a 255.255.255.0 e, sul router e sui primi due pc usassi "192.168.1.x" dove x vale 1 per il router, 2 e 3 rispettivamente per ogni PC e, la terza postazione, usassi 172.18.1.1 (indirizzo inventato a caso, tranquillo), questa postazione non "vedrebbe" le altre, nonostante sia collegata fisicamente alla stessa rete, in quanto la parte sotto il 255 è diversa.
Come puoi vedere sopra, li ho incolonnati. le cifre sopra il 255 indicano la rete, quelle sopra lo 0 indicano in numero del dispositivo.
Questo perchè, usando 255.255.255.0 come gateway ho a disposizione SOLO 256 dispositivi (da 192.168.1.0 a 192.168.1.255) mentre, se usassi un 255.255.0.0, avrei a disposizione 65536 indirizzi (192.168.0.0, 192.168.0.1, ... , 192.168.1.0, 192.168.1.1, ... , 192.168.255.255).
Uh, una cosa che non t'ho detto è che, per discorsi lunghi che non ti sto qui a raccontare di conversione binaria (se lo sai, meglio ! :D), il valore tra i punti non può mai superare 255.
In questo senso potresti imbatterti nella dicitura IPv4 e IPv6.
Sostanzialmente sono due tipologie di IP. IPv4 usa xxx.xxx.xxx.xxx e ha come massimo, 256^4 terminali, IPv6 usa (sei ?) coppie di caratteri esadecimali e ti permette di fare miliardi di miliardi di dispositivi.
Questo, naturalemente, ha senso sulla rete web, dove, ormai, 256^4 indirizzi sono "pochi" contando i dispositivi. In una rete locale, anche gigantesca, con 65536 indirizzi (ovvero gateway a 255.255.0.0) sono più che sufficienti.
Credo che neanche Google, in una rete interna, utilizzi così tanti indirizzi !
Chiarito questo, passiamo al DNS.
Il DNS è l'acronimo di Domain Name Server, la sua funzione è quello di tradurre i nomi in codici IP e gli IP in nomi. Concetto banale.
Tu, quanto apri Chrome/Firefox (gli altri non son browser, sopratutto Explorer ... ;D ), e digiti, per esempio google.com, in realtà stai chiedendo ad un server "Qual'è l'indirizzo associato a google.com ?"
Lui ti risponderà fornendoti un indirizzo IP numerico e tu, con quello trovi il tuo server (google).
E' un po' come se tu scrivessi "Signor Rossi" e un gigantesco apparato ti dicesse dove sta il signor rossi (via, numero civico e CAP).
Questo per un motivo squisitamente pratico.
Se io devo fare un sito, la gente mica sta li a ricordarsi che il mio sito è, che ne so, 56.45.26.154. Internet sarebbe riservato ai secchioni che si ricordano a memoria queste strisce di cifre.
Usando, invece, i nomi, la cosa è mnemonica. Ricordi meglio "compraonline.com" che non 56.45.26.154.
Ecco. Questo DNS fa proprio questo. Tu gli fornisci un nome e lui ti dice a che IP è associato.
Esistono DNS per internet e DNS per "reti locali".
Il principio è sempre quello. Molto banale.
(Piccola parentesi, dovuta.
Esistono indirizzi IP "privati" e indirizzi IP "pubblici". Un indirizzo IP pubblico è quello che acquisisce il tuo router all'avvio. Questo IP può essere DINAMICO o STATICO. Solitamente, i contratti ADSL classici, sono fatti per avere IP dinamici, ogni volta che accendi il router, questo va dal tuo operatore con il quale hai fatto il contratto (Telecom, Tiscali, ...) e gli dice "Oh bello, dammi il mio IP pubblico". Alcuni contratti particolari, invece, offrono IP PUBBLICI DINAMICI. Ogni volta che accendi il router lui prende sempre quell'IP. Gli IP privati, invece, sono quelli che gestisci nella tua LAN domestica/aziendale. Anche questi, come parlavamo poc'anzi, possono essere STATICI o DINAMICI, a seconda se uso un DHCP o li configuro a mano, macchina per macchina.)
Detto questo, esistono DNS internet i quali prendono gli indirizzi IP RIGOROSAMENTE PUBBLICI E STATICI e li associano ad un nome.
I DNS privati, fanno la stessa cosa, tuttavia operano nella LAN.
Ponendo di avere un server e 5 PC, tutti con IP statico potrei configurare il server DNS in questo modo:
Server -> 192.168.1.1
PC01 -> 192.168.1.2
PC02 -> 192.168.1.3
Amministrazione -> 192.168.1.4
Contabilità -> 192.168.1.5
Portatile -> 192.168.1.6
Se io sto lavorando su PC01 e mi collego a "Amministrazione", io vado, in realtà, a chiedere a Server (il cui indirizzo viene inserito in maniera estesa xxx.xxx.xxx.xxx) "Qual'è l'indirizzo di Amministrazione ?", al che lui mi risponde "E' 192.168.1.4".
Allora PC01 su cui sto lavorando, sapendo l'IP, va a collegarsi con quello.
Non esiste solo il DNS per fare questo tipo di operazioni. Qualche tempo fa vi era il cosiddetto WINS (simile a DNS, ma limitato alle reti locali e poco "scalabile). Altrimenti vi è un file interno ad ogni PC con questa tabella associativa. Se, però, cambio l'IP di un PC, devo modificare questa tabella su tutti i PC: Per esmpio se Amministrazione lo sposto su 192.168.1.7 e non uso né DNS né WINS, devo andare su tutti i PC a cambiare la tabella e dire che Amministrazione sta sul .7.
Sui Winzoz, se non funziona neanche questa tecnica, viene usata una cosa molto drastica, detta broadcasting. Il PC chiama tutti i PC e dice "Sei tu Amministrazione ?" "Server risponde: No" "Sei tu Amministrazione ?" "PC01 risponde No" e avanti coì fino ( e se) a quando trova Amministrazione.
Credo di aver detto tutto ... Se hai altre domande o non t'è chiaro qualcosa chiedi pure !

"Se tutto funzionasse bene, non ci sarebbe più da divertirsi" - disse l'uomo cui funzionava tutto bene.