Newsgroup: it.comp.reti.locali
Titolo: Routing con Windows (lungo e logorroico)

In alcune circostanze ci è necessario "collegare" due subnet tra loro 
attraverso un pc. Ok, non è il lavoro di un pc, ma non tutti possiamo 
comprare un Cisco appositamente.
Windows NT e successive versioni hanno una discreta funzionalità di 
routing che può risolvere alcune situazioni di rete.
Windows for Workgroup (si, Wfw 3.11!) aveva le stesse funzionalità nel 
suo stack Tcp/Ip, funzionalità che solo la Beta di 95 ha mantenuto, ma 
che dalla versione release in poi (ME compreso) sono state tolte.
Invero, sul Resource Kit Help file (che troviamo sui cd), cercando bene, 
si trova, nei parametri del registro del Tcp/Ip, una chiave che si chiama 
"EnableRouting" (in 
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP) che può 
essere aggiunta e impostata ad 1.
Ma lo stesso help specifica che questa impostazione NON modifica le 
tabelle di routing necessarie. E inoltre Win9x non permette entrate 
statiche nella tabella di routing.. 8\
Preoccupiamoci allora principalmente della famiglia NT, rimandando a 
qualche volenteroso l'approfondimento della possibilità del routing su 
Win9x.
Cosa ci serve: un indirizzo statico su ciascuna rete e un po' di 
pazienza. 8)
Per abilitare il routing su NT è infatti sufficiente mettere UNA spunta 
su "Enable IP Forwarding" nell'apposita scheda, una volta che i due 
indirizzi sono presenti e funzionanti. Parlo di 2 indirizzi perché la 
cosa è possibile anche in presenza di UNA SOLA scheda di rete, purché su 
questa siano stati configurati DUE indirizzi IP.
La pazienza a questo punto consiste nel modificare per tutte le macchine 
di ogni subnet le tabelle di routing per fare in modo che i pacchetti 
siano inoltrati correttamente sul nuovo router che abbiamo messo su.
Questo perché?
Perché quando un pacchetto esce dal vostro pc deve sapere dove deve 
andare. E questo viene stabilito dalle "tabelle di routing", di cui il 
"default gateway" è un caso particolare.
Facciamo un esempio, se no non vi faccio capire nulla. 8)
Rete A: 10.0.0.x/24 senza gateway
Rete B: 192.168.0.x/24 con gateway 192.168.0.1
Abbiamo un pc di nome "Ruota" con 2 schede di rete e NT. Impostiamo le 
due schede con degli indirizzi validi per le due subnet:
Ruota (A) 10.0.0.1 mask 255.255.255.0 nessun gateway.
Ruota (b) 192.168.0.2 mask 255.255.255.0 default gateway 192.168.0.1
In questa situazione, Ruota vede i pc presenti su A e su B. Un pc su A 
vede solo la rete A (Ruota compreso), un pc su B vede solo la rete B 
(Routa compreso) più eventualmente altre cose attraverso il suo default 
gateway.
Abilitiamo ora l'IP forwarding. Cosa cambia?
NULLA. 8)
La rete A e la rete B si ignorano ancora reciprocamente.
Dobbiamo dire alla rete A che esiste una "uscita" per la rete B (ed 
eventualmente per altro); visto che A è "chiusa", possiamo allora 
semplicemente indicare a tutti i client della subnet di utilizzare Ruota 
come default gateway. A tutti, meno che a Routa. Lui sa benissimo dove 
mandare i pacchetti. 8)
Cosa cambia?
Ancora NULLA ;))
I pacchetti inviati da A vengono ora ricevuti da B.. ma la rete B non sa 
ancora che farne. Ovvero, visto che un default gateway è presente, ogni 
macchina di A invia i pacchetti a 192.168.0.1.
Dobbiamo dire a questa macchina che la rete B è raggiungibile attraverso 
Ruota.
Come si fa?
Dipende. Non ho fatto ipotesi su questa macchina. Supponiamo che sia un 
Windows 2000. Allora è semplice: va aggiunta una informazione alle sue 
tabelle di routing. Si usa dal prompt il comando "Route".
La sintassi potete vederla con un "route /?".
Nel nostro caso:
c:\>route add 10.0.0.0 mask 255.255.255.0 192.168.0.2 /P
Chiaro? Stiamo dicendo: "ehi, la rete 10.0.0.x/24 è raggiungibile tramite 
Ruota, che ha come IP 192.168.0.2. Ricordatelo!"
E ora funziona?
SIIII. 8)
Ora tutti i pacchetti sanno dove andare e il routing tra A e B è 
abilitato e funzionante.
Se non ci fosse stato il router su 192.168.0.1, avremmo dovuto agire su B 
come sulla rete A.
Questa è una soluzione semplice. Si potrebbe sofisticare impostando la 
tabella di routing specifica per la rete A SU OGNI macchina di B (Ruota 
esclusa) in modo da non "affaticare" troppo il router 192.168.0.1. 
Dipende dal traffico, dal numero delle macchine, dalla comodità di 
metterci le mani sopra e anche dal sistema operativo. Ricordo che le 
macchine 9x non supportano il "/P" per rendere l'entrata statica e 
memorizzarla. L'istruzione "route add" dovrebbe quindi essere lanciata ad 
ogni avvio.
NT implementa (da installare a parte) anche funzioni RIP e BOOTP. Non ne 
parlo, ma ne trovate info sul link della KB Microsoft che vi riporto.
Per altre info sul routing
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q140859
http://www.smartbits.com/Edmond/KB/HowtoConf.html
Per info sul routing con 9x
http://www.psp.demon.co.uk/tfl/techindx.htm
Se pensate che questo concluda il discorso, scordatevelo..! 8[
Abbiamo messo a posto SOLO il TCP/IP e non il networking MICROSOFT. In 
pratica, vi funzionerà il Ping, e tutti i protocolli Internet.
Ma da "Risorse di rete" A vedrà ancora solo A e B ancora solo B (con 
qualche approssimazione).
Per risolvere il networking Microsoft, se vorrete, vi scoccerò un'altra 
volta. 8)
-- 
		Luca Amicone
		(da casa)

Scoccia pure quanto vuoi; per certe cose io avrei dovuto passare una
settimannina a spulciare google!!

 settimannina a spulciare google!!
Matteo ha ragione; Luca sei meglio di un libro!!!! continua a "scocciarci"
Ciao e Grazie

Ma chi sei, Babbo Natale?
very interessante, peccato che mi sono letto  i 5 HowTo fondamentali di
Linuz, prima di sentire che potevo tentare con MS.

 Linuz, prima di sentire che potevo tentare con MS.
MALE non ti fanno di sicuro! 8)
Mediamente, il pinguino può fare cose più a basso livello di quanto 
permetta Windows.
Se poi hai risolto, tempo non ne hai sprecato di sicuro. 8)


> Se poi hai risolto, tempo non ne hai sprecato di sicuro. 8)
linuz e' davvero istruttivo per comprendere le reti, come funzionano e come
farle funzionare.
Il "troppo semplice" di MS troppo spesso fa cilecca.

 volta. 8)
Qui aggiungo qualcosa io: sulle macchine delle subnet A e B ho piazzato
nelle opprtune directory (C:\Windows per W9x e
C:\Winnt\system32\drivers\etc,
supponendo C: la partizione del S.O.) il file LMHOSTS, per risolvere
i nomi NetBIOS delle macchine con i loro indirizzi IP.
Per sapere come e' fatto questo file, basta cercare il file LMHOSTS.SAM
(che fa da esempio), farne una copia, editarla per il nostro caso e
salvarla col nome LMHOSTS. Dopodiche' fare il boot (o forse basta
dare il comando nbstat -R).
In tal modo agli indirizzi IP non presenti sulla propria subnet e'
associato il nome NetBIOS del PC (se si fa ping Nome_PC_sulla_subnet_A
da un PC della subnet B, il tutto funziona). Ah, ovviamente il lavoro
deve essere fatto su entrambe le subnet: il comando ping implica un
echo,
e questo deve sapere come tornare indietro!
Ora arrivano i miei attuali dubbi:
a) non avendo definito dominii, e poiche' due PC che stanno su due 
subnet differenti non possono far parte di uno stesso Workgroup,
a che Workgroup deve appartenere Ruota? 
Ovvero: supponiamo che io abbia definito che i PC sulla subnet A
fanno parte del Workgroup Work_A, e quelli della subnet B fanno 
parte del Workgroup Work_B. A questo punto non so bene se Ruota
deve appartenere a Work_A o Work_B (non penso che possa appartenere
ad entrambi, anche se ha due schede di rete).
b) supponiamo che Ruota faccia parte di Work_A. Cosa devo vedere
dalle varie "Entire Network" dei vari Explorer sui singoli PC?
1) da Ruota vedo sia il gruppo Work_A che Work_B.
2) da un PC di Work_A, vedo Work_A e i suoi PC, ma non Work_B.
3) da un PC di Work_B, vedo Work_B e i suoi PC, ma non Work_A.
Corretto? Ovvero Explorer dovrebbe "saltare" il Gateway o fermarsi
li' quando fa il browse di Entire Network?
c) ovviamente se uno fa Find Computer da un PC di Work_A, cercando
un PC di Work_B (sia come indirizzo IP che come nome Netbios), 
Explorer lo trova (dopo un po' di tempo). Solo che non lo mostra
a priori in Entire Network (devo dire che questo mi ha stupito un
po'...).
d) se su una delle due subnet vengono definite delle risorse di share, 
queste possono tranquillamente essere condivise dagli utenti dell'altra
subnet, a patto di definire localmente gli stessi utenti che risiedono
sulla macchina che fa lo share (almeno uno!). Anche questo mi ha stupito
un po' (forse un po' di meno) dato che i PC sulle due subnet
appartengono a diversi Workgroups.
I miei prossimi esperimenti (se non vi siete gia' rotti le scatole
a leggermi) riguarderanno la possibilita' di istallare su Ruota un S.O.
Server, in modo da avere abilitati servizi tipo DHCP Server, DNS Server
e cosi' via. E in modo da creare un rete non piu' solo Peer to Peer,
ma con gestione centralizzata delle risorse.
Siccome pero' mi ritengo ancora molto ignorante riguardo a questi
argomenti (e possiedo solo quattro ferrivecchi per poter sperimentare),
ci vorra' tempo.
Ringrazio tutti coloro che vorranno avere la pazienza di commentare gli
esperimenti da autodidatta da me compiuti sino ad ora.
Ciao
Stefano
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 I miei prossimi esperimenti [CUT] ci vorra' tempo.
Così magari preparo in tempo la seconda tranche. 8)
Come avrai arguito, l'argomento è complesso (il tuo caso è persino 
"semplice"!) e un po' articolato da mettere giù.. Vedremo. 8)


 comprare un Cisco appositamente.
Mitico!!!!!!!!

 volta. 8)
No, dai, scoccia! Picchiaci! Insultaci! Frustaci!... ma č proprio la parte
che mi interessa di piů!!!!!!!!!!!!!!!!!!!!

 che mi interessa di piů!!!!!!!!!!!!!!!!!!!!
ROTFL! ;D
Ok ok, datemi tempo; ormai ho promesso, ma non č che il tempo a
disposizione sia tantissimo.
Spero in settimana, o meglio in FINE-settimana.
-- 
			Luca Amicone
			ICQ: 14890779
--
	La tolleranza č saper ridere
	quando uno vi pesta i calli mentali.	
		-- J. Garland Pollard

 informazione sul newsgroup al quale quella macchina appartiene.
Come gliela do' questa informazione? Devo scrivere qualcosa nel file
LMHOSTS della macchina locale che cerca di accedere al gruppo (e alla
subnet) di cui lei non fa parte? (e nel caso, come? Immagino che il
carattere #DOM si riferisca a domini, non a gruppi). 
Oppure devo indicarlo nel PC Ruota?
Ma in quest'ultimo caso farei un'operazione penso contraria alla
filosofia di una rete tipo Peer to Peer (scrivere in Ruota informazioni
che non siano relativi al computer locale penso sia un'operazione
tipica di un S.O. di tipo Server, nemmeno possibile in S.O. di tipo
Workstation).
Ciao e grazie


 Workstation).
Ruota non può far moltissimo, anzi, spesso COMPLICA le cose. Ma vorrei
parlarne in modo pià armonico...
Il trucco consiste nello spacciare Workstation come Server, e
configurarle in modo da detenere per l'elenco di MasterBrowsing "come
se" fossero in effetti dei veri e proprio "Domain Controller".
-- 
			Luca Amicone
			ICQ: 14890779
--
	La tolleranza è saper ridere


(....)
Bello bello
Ma perchè "qualcuno" non si inventa qualcosa per win 98 che a me mi
pacerebbe tanto?
Paolo

 pacerebbe tanto?
Sarebbe "paciuto" a molti, ma che ci si può fare se è rimasta solo una 
chiave del registro? 8]
Prova ad impostarla e se vuoi, magari in un altro thread, proviamo a 
vedere se se ne ricava qualcosa.
Ribadisco, era più funzionale Windows for Workgroup, per il routing.
O se no, puoi provare il bridging. 8)


 ha scritto nel messaggio
news:Mx_u8.44852$SR5.1...@twister1.libero.it...


 spieghi che è "na capata"!
Hemm grazie! ^___^
-- 
			Luca Amicone
			ICQ: 14890779
--
	Tutti sono necessari, nessuno è utile.
		-- M. Marchesi

 Ognuno usa Internet come gli pare.. anche cosě, no? ;)
Magari tutti quelli che ne sanno piů della media fossero cosě disponibili!
Purtroppo l'appetito vien mangiando, e stiamo tutti "scrutando" in attesa
della seconda puntata :-)

 (da casa)
GIUSTAPPUNTO!!!! Dato che ci siamo tanto vale che tiri fuori il rospo ...
hai visto mai!!! Nel servizio dove lavoro siamo connessi in lan (5
postazioni win 98) e, tramite router, ad una wan che riguarda piů sedi.
All'interno della lan abbiamo individuato una macchina su cui conservare
archivi, banche dati, ecc. Per problemi di privacy  vorremmo che questo pc
sia accessibile dalla lan ma "invisibile" per la wan. Siccome, anche se mi
hanno "nominato" amministratore di rete, non ho la minima intenzione di
mettere mano nella configurazione del router (cisco 1600), avevo pensato di
montare su una delle macchine una seconda scheda di rete e sfruttarla per
fare bridging tra la macchina "sensibile" e il resto della LAN insomma una
roba del tipo che:
router        30.40.50.20    subnet 255.255.0.0 (per l'organizzazione della
wan č una classe a "declassata")
Lan            30.40.x.n      subnet 255.255.0.0     gateway 30.40.50.1
Seconda scheda su PC "bridge"    192.168.x.x    gateway ....BHO!!!
PC "sensibile"                                192.168.x.y    gateway non mi
ricordo se funzionava con 192.168.x.x o con 30.40.x.n
Alla fine dopo qualche esperimento ho ottenuto che:
Il PC "bridge" vedeva tutto
Il PC "sensibile" vedeva il bridge (e lo pingava sia come 192.168.x.x che
come 30.40.x.n)
Il resto della rete non vedeva (risorse di rete) ma neppure pingava il pc
"sensibile" nč la porta 192.168.x.x del pc "bridge".
Qualcuno ha qualche dritta per risolvere l'inghippo?
GRAZIE!!!!
Paolo Zampiceni

 Qualcuno ha qualche dritta per risolvere l'inghippo?
Io cambierei filosofia.... Metterei la macchina sensibile in Lan, e la 
lascerei con il solo NetBeui, installandolo contemporaneamente sulle 
altre macchine. Sono solo sei, e NetBeui non dovrebbe dare molto 
fastidio. E inoltre, non essendo un protocollo "routabile", non potrebbe 
essere mai visibile da oltre il router.... 8]


 (da casa)
Bell'idea! a NetBeui non ci avevo proprio pensato ... Ma sulle reti TCP.IP
non consigliano in genere di disinstallare questi protocolli proprio per
problemi di sicurezza?
Grazie
Provvederò comunque a darmi 100 bacchettate sulle dita!
Paolo Zampiceni

 macchine sull'altra  rete?
SCEMO!!!! Il bridge lavora a livello 2. E' questo che volevi dire?
Paolo Zampiceni

 SCEMO!!!! Il bridge lavora a livello 2. E' questo che volevi dire?
Esatto. Il bridge "passa i pacchetti da una scheda all'altra" senza 
guardare il protocollo (o quasi). Se tu avessi messo un bridge, la 
macchina con 2 schede avrebbe dovuto avere LO STESSO INDIRIZZO IP e 
quella "particolare" un IP della stessa subnet delle altre (rendendo 
inutile tutto il procedimento: sarebbe stata vista ugualmente dalla WAN).
E' utile per mantenere la stessa subnet su rete FISICA diversa, per 
esempio per avere "mezza lan su un HUB e l'altra mezza su coassiale, o 
su wireless". Ma a te serve altro.


 problemi di sicurezza?
Non confondere il NetBeui col Netbios. Il NetBEUI come il tcp/ip è un 
protocollo "di trasporto", che contiene "di suo" il NetBios. Il Tcp/Ip 
invece deve "aggiungerlo". Il NetBios è il protocollo di comunicazione 
della rete Microsoft, ed è quello che su Internet NON deve viaggiare e 
che può dare problemi di sicurezza.


 Sono contento. ^__^ Allora a qualcosa "sono" stato utile! ;))
Bhe, molto di piů direi! Grazie di tutto.
Paolo Zampiceni