Stavo pensando a un’esperienza che mi è capitata un po’ di tempo fa in un laboratorio di computer di una scuola (elementare).
In pratica questo laboratorio è composto da una dozzina di computer con Windows XP (alcuni Home, altri Professional) più un computer con Windows 7 per la LIM che viene usato poco.
Tutti i computer sono in una LAN, però questa caratteristica viene usata per condividere le stampanti attraverso SMB (ovvero il protocollo della condivisione di windows) e per andare su internet.
Io dovevo aggiornare i vari software gratuiti da scaricare da internet, però, dato che la connessione ad internet, pur essendo una fibra ottica, ha qualche problemino e va a 100KiB/s, ho deciso di scaricare i setup in un solo computer e di condividere la cartella con SMB.
Purtroppo mi sono scontrato con un limite imposto dalla Microsoft: il limite di 10 sessioni SMB sulla versione Pro, addirittura solo di 5 in Home edition.
In questo caso il problema non è grosso, basta disconnettere quelli dove ho già fatto il lavoro, però penso che sfruttare la rete per centralizzare i documenti non sarebbe una cattiva cosa: peccato per i due client in più che vanno oltre il limite.
Ovviamente la scuola non ha soldi da spendere per mettere su un server, così ho pensato a diverse soluzioni. Ve le illustro tutte, anche se solo una è possibile nella circostanza.
La prima è di usare un server Linux e di sfruttare il protocollo SMB che è nativo: su Linux si usa il server samba che è molto buono: potrebbe addirittura fare da Controller di Dominio. Però meglio non mettere in quella scuola un server Linux, diverso da altri computer etc etc etc.
Un’altra soluzione è virtualizzare una distro di Linux da usare appositamente per il server SMB ma non ne vale la pena: dovrebbe partire sempre…
Un’altra soluzione più o meno possibile è usare Samba sotto cygwin, che è un emulatore di sistema POSIX in ambiente windows: la versione del server patchato però è alquanto vecchia (risale al 2006). Anche nel caso in cui ci si volesse fidare rimarrebbe il problema che sarebbe meglio usare un unico computer come server, anche per condividere le stampanti: samba può condividerle attraverso CUPS, e poi diventa un lavoro infinito. Anche perché non sono sicuro esista un CUPS per windows…
Avevo anche avuto l’idea di mettere in ascolto cygwin su un indirizzo IP diverso, ma tenendo un’unica scheda di rete non sembra essere possibile. Ho persino provato a fare il setup di un server OpenVPN tanto per riuscire nell’impresa ma senza alcun esito positivo: magari era perché ero in una Virtual Machine ma se provavo a fare un bridge tra l’interfaccia di rete “reale” e il TAP non c’era più rete.
Quindi ho abbandonato l’idea di adoperare SMB in favore di una che avevo già avuto prima: usare FTP.
C’è però uno svantaggio: al contrario di SMB, l’FTP nativo di Windows fa alquanto cagare e su Windows non è come su Linux che grazie a FUSE potresti montare anche la carriola di tua nonna come disco, ma bisogna installare in ogni computer un programma per far vedere l’FTP come disco remoto.
Il server è una vera cavolata: ho usato Filezilla server: setup in pochi minuti e poi funziona tutto.
Per i client invece ho usato FTPDrive, un programma gratuito che consente di far vedere i server FTP come unità remota, quindi andando su risorse del computer si trova l’unità Z e la lista dei server montati. Al massimo si può fare un collegamento sul desktop.
Possiamo ridurre di molto i tempi di cache: tanto siamo in una LAN di 100Mbps.
Purtroppo non ho ancora potuto fare i test sul campo per vedere se ci sono altri limiti come le connessioni mezze aperte che bloccano il tutto, perciò non sono ancora sicuro che il tutto funzioni, però come soluzione mi pare finora la migliore: costo 0€, tempo di installazione: molto, molto basso.