LAN MINI TUTORIAL - TEORIA

UN PO' DI TEORIA

Lan è l'acronimo di "LOCAL AREA NETWORK". Sta ad indicare, come dice il nome stesso, una rete localizzata in un'area geografica limitata (che sia essa una stanza, un ufficio, un palazzo). Fondamentalmente, una LAN serve a far dialogare tra di loro due o più computer. Una volta che i computer sono connessi tra loro tramite LAN, è possibile scambiare dati da un computer all'altro. Cio' rende possibile ad esempio utilizzare stampanti poste su computer diversi da quello su cui si stampa, aprire files che risiedono su un computer diverso dal proprio, e, all'occorrenza, anche giocare in modalità multiplayer nei giochi che lo supportano.
Esistono diversi tipi di protocolli di rete. Un protocollo è lo "standard", il "linguaggio" cioè che utilizzano computer diversi per dialogare tra loro. Cerco di semplificare al massimo il concetto con un esempio: Immaginate di essere in un pub con un inglese, un tedesco, un greco ed un marocchino. Se ognuno parlasse nella sua lingua, nessuno ci capirebbe una mazza, e ognuno passerebbe la serata a parlare tra se e se, senza che gli altri riuscirebbero a capire quello che sta dicendo. Se invece all'inizio della serata ci si mettesse d'accordo, e si dicesse "ok, parliamo inglese per tutta la serata, visto che tutti più o meno lo masticano", ecco che anche persone di nazionalità diverse, con diverse culture e di lingua diversa, riuscirebbero a comunicare ed a chiacchierare allegramente tra di loro. Ecco, un protocollo di rete, semplificando di molto il discorso, è più o meno questo: un linguaggio "convenzionale", che possa essere capito da tutti gli appartenenti alla rete, indipendentemente dal loro sistema operativo, per potersi comprendere a vicenda.
In questa sede andremo ad esplicare (molto molto superficialmente e con parole semplici) il funzionamento di uno dei più diffusi protocolli di comunicazione, lo stesso che viene utilizzato anche su internet: il protocollo TCP/IP. La stragrande maggioranza dei giochi che oggi consentono di giocare in modalita' multiplayer, si "appoggiano" proprio su implementazioni basate sul TCP/IP. Esistono ad onor del vero anche giochi (oramai una minima parte) che poggiano il loro sistema multiplayer sul protocollo IPX, ma vedremo piu' avanti che la configurazione del protocollo IPX, una volta appresi i concetti di rete e del protocollo TCP/IP, e' davvero banale.
Perche' al giorno d'oggi viene preferito il TCP/IP per i giochi in multiplayer? Beh, prima di tutto perche' e' lo standard "de facto". Secondo, perche' e' lo stesso protocollo che viene utilizzato su internet. In questo modo, se i dati da scambiare durante una partita rientrano nell'ordine di poche centinaia di bytes, il gioco sara' fruibile in modalita' multiplayer anche su internet con un normale modem 56k (ed e' cosi' per un gran numero di giochi), visto che con il TCP/IP a livello logico non c'e' differenza tra giocare su internet o giocare in una lan. Lo scambio dati tra i pc infatti avviene esattamente allo stesso modo, eccezion fatta per quanto riguarda l'instradamento dei pacchetti, visto che su lan la comunicazione avviene direttamente tra i pc, su internet i pacchetti vengono instradati attraverso dei router che li fanno viaggiare lungo la rete fino a farli arrivare a destinazione. Inoltre un altro dei vantaggi del protocollo TCP/IP rispetto ad altri protocolli come l'IPX o il NETBEUI di Microsoft, o l'APPLETALK di Apple, è che è oramai un protocollo supportato nativamente da tutti i sistemi operativi più comuni. Linux, Windows, Mac-Os, Unix: tutti questi sistemi operativi riescono a "dialogare" tra di loro proprio grazie ad implementazioni basate sul protocollo TCP/IP.

COSA E' L'IP?


TCP sta per Transport Control Protocol. IP sta per internet Protocol. Ora, visto che questo non e' un documento che vuole avere la pretesa di farvi diventare degli esperti di reti, direi che possiamo accantonare tranquillamente il ruolo ed il funzionamento del TCP. E' invece il caso di spiegare un attimo cosa e' l'IP, perche' sapere questo ci sara' necessario per configurare la nostra lan .Semplificando di molto, il concetto è veramente banale: ogni computer ha un "indirizzo" che gli viene assegnato. un po' come succede per le vie e le piazze di casa nostra. Dato un determinato indirizzo, il postino è capace di rintracciarci e venire sotto casa nostra a portarci le lettere indirizzate a noi, perché è stato fissata a monte una convenzione: quella di identificare le strade delle nostre città con dei nomi, e di assegnare un numero univoco alle diverse case situate sulla stessa strada. Se io trovo scritto su una lettera "via Tiburtina 1024, Roma" non ho possibilità di errore: a Roma c'è UNA SOLA via Tiburtina, così come ci sarà solo una casa a cui corrisponde il numero 1024. Abbastanza semplice, no? Ecco, i PC funzionano più o meno allo stesso modo: ognuno ha un indirizzo che lo identifica in modo univoco sulla rete. L'indirizzo, detto anche "IP ADDRESS" o più comunemente "IP", è composto da 4 gruppetti di 8 bit l'uno, separati tra di loro da un punto, nella forma XXX.XXX.XXX.XXX. Un bit, come saprete, può assumere valore 0 o 1. un gruppetto di 8 bit (detto anche Byte) può quindi rappresentare tutte le possibili combinazioni del variare dei valori di ciascun bit del gruppetto, ad esempio 10100000 o 01011100 e cosi via. Le combinazioni possibili non sono poi tantissime, per la precisione sono 256. Per rappresentare in formato decimale quindi lo stato che possono avere gli 8 bit, si ricorre ad un numero decimale compreso tra 0 e 255. Ad esempio, 0 rappresenta gli 8 bit settati a "00000000", 1 rappresenta "00000001", e cosi via, fino ad arrivare a 255 che rappresenta lo stato del byte impostato a "11111111".
Ricapitolando, l'IP è composto da un insieme di 4 cifre (ogni cifra rappresenta in decimale lo stato degli 8 bit di quel gruppo) che possono assumere un valore compreso tra 0 e 255. Quindi 123.101.222.254 è un indirizzo IP valido. 411.202.109.356 NON E' un indirizzo IP valido, in quanto sia la prima che l'ultima cifra non sono una rappresentazione corretta dello stato degli 8 bit rispettivamente del primo e del quarto byte, in quanto il valore supera il numero 255.

CLASSI DI IP, IP PUBBLICI E IP PRIVATI

A questo punto abbiamo capito cosa è un'IP. Introduciamo allora anche un'altro concetto: quello di classe di indirizzi IP e quello di IP pubblici e IP privati
Semplificando di molto il discorso (altrimenti rischierei di diventare troppo tecnico e soprattutto troppo noioso) vi basterà sapere che esistono diverse classi di indirizzi IP, utilizzate per diversi scopi. Questo per un semplice motivo; abbiamo detto che l'IP di un computer è come l'indirizzo delle case, deve essere diverso per ogni casa, altrimenti i nostri postini non ci capirebbero più niente! Immaginate una città dove ci sono 4 via Tiburtina, con 4 "Via Tiburtina numero 1024". Il postino che vedrebbe una lettera così indirizzata, presso quale delle quattro case dovrebbe recarsi? Allo stesso modo, quando ci connettiamo ad internet, ogni computer deve essere identificato in modo UNIVOCO. Quando ci connettiamo al nostro provider, il suo server si occupa di assegnarci automaticamente un'IP PUBBLICO, e da quale momento in poi, fino a quando non ci disconnettiamo, quell'indirizzo identificherà il nostro computer sulla rete DELL'INTERO PIANETA. Proprio così, se noi in quel momento stiamo utilizzando quell'IP, nessun'altro nel mondo all'infuori di noi potrà usarlo, fino a che, disconnettendosi, il nostro computer dirà al server "ok, mi sto sconnettendo, ora l'indirizzo è libero e può essere usato dal prossimo che si collega". I provider infatti hanno a loro disposizione una intera fascia di indirizzi IP (ad esempio da 151.132.210.1 a 151.132.210.255) e a rotazione li assegnano a chi si collega. Capirete che amministrare questa cosa non è semplice, visto che va organizzata su scala planetaria.
Per questo motivo sono state riservate, per convenzione, delle classi di indirizzi IP alle reti LAN. Ora, non fa niente se io a casa mia ho una rete LAN di classe 192.168.1.x, e un'altra persona sotto casa mia ha una LAN con la stessa classe di indirizzi IP. Le LAN, proprio perchè LOCAL area network, sono aree locali, e non sono in contatto tra di loro. La classe che viene comunemente usata per una lan di piccole dimensioni, è la 192.168.0.x

LA SUBNET MASK

Ci manca ancora un piccolissimo concetto prima di iniziare a configurare la nostra LAN: La Subnet Mask. Immaginate sempre il nostro famoso postino che riceve una lettera che gli dice "via tiburtina 1024, Roma". Se ipotizziamo per assurdo che il nostro postino non abbia uno stradario, e che non sappia dove sia via Tiburtina, dovrà girare tutta la città, per vedere se riesce a trovarla.....La ricerca però potrebbe durare ore..... Se invece ricevesse una lettera con "Via Tiburtina 1024 - 00100 Roma", sempre ipotizzando per assurdo che egli conosca invece benissimo le associazioni quartieri-CAP, andrebbe spedito nel luogo di destinazione, impiegando poco tempo a consegnare la lettera, in quanto il CAP gli fa capire subito in che zona della città si trova via Tiburtina.
Ecco, la subnet mask è proprio una specie di CAP: In pratica fa capire al computer quale è la sua "zona di appartenenza". Ogni pc si preoccupera' cosi' di recapitare i pacchetti autonomamente se il destinatario e' un pc compreso nel suo stesso segmento di rete, o di affidarli ad un gateway, che provvedera' poi ad instradarli verso la corretta destinazione, se il destinatario dei pacchetti e' esterno al suo segmento di rete.
Il meccanismo della subnet mask è abbastanza semplice: è sempre rappresentato nel formato XXX.XXX.XXX.XXX, sempre da 4 gruppi di 8 bit ciascuno, ma che stavolta hanno una diversa funzione: indicano cioè quali BIT dell'indirizzo appartengono alla SUBNET (per subnet si intende proprio SOTTORETE: In effetti una LAN è un segmento di rete, e può essere divisa a sua volta in diversi segmenti) e quanti invece appartengono all'indirizzo IP. Prendiamo ad esempio la seguente coppia IP/Subnet Mask:

IP 192.168.0.1
Subnet Mask:255.255.255.0

Cosa ci dice la subnet mask impostata in questo modo? Ci dice semplicemente che TUTTI E 8 i bit del primo gruppo (il valore 255 rappresenta tutti i bit impostati ad 1, ricordate?) rappresentano la Subnet (e pertanto non possono variare), TUTTI E 8 i bit del secondo gruppo rappresentano la Subnet, e anche tutti e 8 i bit del terzo gruppo. Invece, nessun bit del quarto gruppo (la quarta cifra infatti è 0) rappresenta la subnet, pertanto quel byte è utilizzato interamente per rappresentare i diversi indirizzi della rete LAN.
Una rete così composta, potrà avere quindi al massimo 256e cioè tutti i numeri compresi tra 192.168.0.0 e 192.168.0.255 (i numeri .0 e .255 pero' sono riservati ad altre funzionalita'). In pratica, quello che cambia, è solo L'ULTIMO byte, che deve essere NECESSARIAMENTE DIVERSO per ogni computer.
Avendo una subnet così impostata, il nostro computer capira' subito che si trova in una rete composta al massimo da 256 hosts. Cio' significa che se tentassimo di inviare pacchetti ad un ipotetico pc con indirizzo IP 192.168.0.68, il nostro pc provvedeebbe da solo a spedire i pacchetti al destinatario, sapendo che e' un pc che si trova sul suo stesso segmento di rete. Se invece tentassimo di spedire pacchetti ad un ipotetico indirizzo 190.1.253.34, il nostro pc scarterebbe i pacchetti in uscita (o al massimo, se e' stato impostato, li affiderebbe al default gateway per l'instradamento) in quanto sa che quel pc NON appartiene al suo segmento di rete, e quindi non potrebbe essere raggiunto in modo diretto.



INDIETRO AVANTI