server1 \ / server 4
server2 ---- switch 1 -> router <- switch 2 ---- server 5
server3 / ^ \ server 6
|
switch 3
Sullo switch 3 sono connessi alcuni servizi del cliente, come ad
esempio un server interno, un NAS e cose del genere.
I server da 1 a 6 devono essere isolati tra loro ma poter
accedere tutti ai servizi erogati da switch3
Pensavo di creare delle VLAN, da 1 a 3 sullo switch 1 e fare
lo stesso sullo switch 2 (usando gli stessi vlanid, ovvero
sempre 1,2,3)
Dovrei quindi essere a posto. Lo switch1 con le sue vlan blocca
la comunicazioni dei server 1,2,3, lo switch 2 con le sue
vlan blocca le comunicazioni dei server 4,5,6
Le comunicazioni tra la vlan1 dello switch1 e la vlan1 dello switch2
vengono bloccate a livello di router, con delle semplici direttive
iptables, dove il traffico di eth0 (switch1) può essere diretto
(o prevenire) solo da eth2 (switch3)
Su switch 3 non ci saranno vlan, perchè ci pensa il router ad
instradare il traffico da e verso le vlan sorgenti (la eth0)
del router è associata a tutte le VLAN.
Può funzionare? In pratica eventuali servizi su switch3 devono
poter comunicare con il server1 anche con un banale ping (senza
alcuna riconfigurazione sui singoli server dei singoli servizi)
mentre i vari server devono poter comunicare esclusivamente
con i servizi e mai con gli altri a meno che non vengano
volutamente posizionati sulla stessa vlan connessa allo stesso
switch.
Tutti i server e tutti i servizi hanno, come default GW, l'ip
della rispettiva vlan associato al router. (quindi eth0 avrà
3 ip, uno per ciascuna vlan) stessa cosa su eth1 ed un solo
IP associato a eth2, visto che non c'è alcuna vlan.
se sposti il L3 sul router, è li' che devi gestire il routing delle vlan
e la gestione delle policy di sicurezza. di funzionare deve funzionare
tutto a patto di avere come gateway di ogni vlan il router su quella
vlan (come mi sembra di aver capito hai correttamente configurato).
problemi non ne vedo, è la normalità.
però fai attenzione ai server che attestano più vlan, DISABILITA il
FORWARD dei pacchetti sul server, altrimenti il server stesso diventa un
punto di routing "non controllato".
a fine installazione prendi un host, metti come gateway un server e vedi
se arrivi sull'altra vlan in maniera non autorizzata. ripeti la prova su
tutti i server che hanno più di una vlan. credimi, non è tempo sprecato.
ciao!
Be, non è che lo "sposto", di norma il L3 sta su un apparato L3 come
un router.
> di funzionare deve funzionare
> tutto a patto di avere come gateway di ogni vlan il router su quella
> vlan (come mi sembra di aver capito hai correttamente configurato).
Si, il router avrà un IP per ciascuna vlan e questo IP sarà il gateway
per la vlan stessa.
Quello che mi chiedevo, però, è:
posso semplicemente terminare le VLAN su una interfaccia e lasciare
libere le altre? Penso di si, perchè in tal caso il routing tra vlan1
e "novlan" ovvero una delle ethernet fisiche, lo fa il router.
Purtroppo non ho molta esperienza sulle VLAN ed in questo caso la
pratica sul campo aiuterebbe a togliere molti dubbi (cosa che non
ho ancora avuto modo di fare in maniera approfondita).
In pratica una VLAN viene vista come una rete indipendente, e lato
server avrò sostanzialmente una sorta di interfaccia di rete in più.
Se voglio far comunicare due interfacce (vlan o fisiche) le mette in
bridge, se voglio routarle le gestisco a L3.
Dico bene? Non cambia nulla tra vlan e eth fisica vero?
Quindi se eth0 mi veicola eth0.1, eth0.2, eth0.3 io avrò tali
interfacce sul server e da li faccio quel che mi pare come instradare
il traffico da e verso eth2, proprio come se fossero reti fisiche.
Ma possono coesistere eth0.1 ed una eth1.1 ? Ovvero stesso vlanID ma
veicolato su nic differenti? Non vorrei che facessero a cazzotti.
(in teoria no)
> però fai attenzione ai server che attestano più vlan, DISABILITA il
> FORWARD dei pacchetti sul server, altrimenti il server stesso diventa un
> punto di routing "non controllato".
Si, l'avevo già previsto.
> a fine installazione prendi un host, metti come gateway un server e vedi
> se arrivi sull'altra vlan in maniera non autorizzata. ripeti la prova su
> tutti i server che hanno più di una vlan. credimi, non è tempo sprecato.
> ciao!
Lo farò senza dubbio. Diventare matti a gestire le VLAN per poi
ritrovarsi con un sistema che non isola il traffico, sarebbe folle.
la norma è far attestare il routing delle VLAN su di uno switch L3 di
centro stella che, ovviamente, farà routing. meno frequentemente (ma
comunque non raro) accade di vedere come terminatore di vlan un "router
puro", inteso come il router che poi avrà come def gateway l'ISP. Tra
Switch e "Router Puro" accade invece spesso di terminare le vlan su di
un firewall che crea N interfacce virtuali in base alle vlan e su cui è
più semplice gestire le policy.
Ovvio che di per se un apparato L3 è un apparato in grado di far
routing, ci mancherebbe :) però solitamente è uno switch L3. ma si può
gestire in 1000 maniere, ho visto in alcuni comuni terminare tutto su
dei server adibiti solo a questo (e francamente sprecati).
> Quello che mi chiedevo, però, è:
> posso semplicemente terminare le VLAN su una interfaccia e lasciare
> libere le altre? Penso di si, perchè in tal caso il routing tra vlan1
> e "novlan" ovvero una delle ethernet fisiche, lo fa il router.
>
si, certo. perchè no. un'interfaccia può avere 100 vlan in tagging e
un'altra "nessuna" untagged (ossia una sola vlan) perchè lo switch non
invia il tag vlan per scelta.
oppure su alcuni server accade spesso di terminare le vlan in maniera
bilanciata, ossia: porta 1 vlan 1-2, porta 2 vlan 3-4, etc..
> In pratica una VLAN viene vista come una rete indipendente, e lato
> server avrò sostanzialmente una sorta di interfaccia di rete in più.
si
> Se voglio far comunicare due interfacce (vlan o fisiche) le mette in
> bridge, se voglio routarle le gestisco a L3.
no. il bridge di per se è concettualmente sbagliato su due vlan
differenti. addirittura alcuni firewall non ti fanno nemmeno mettere in
bridge due "interfacce vlan" oppure, molti switch, non ti fanno nemmeno
mettere la stessa classe di indirizzi ip su due vlan differenti.
che senso ha avere 2 vlan in bridge? assolutamente nessuno. anzi, crei
colli di bottiglia tutti sul punto di bridgging. e poi 2 vlan differenti
hanno sempre (smentitemi se altri apparati, differenti da quelli che
tratto io, gestiscono diversamente il tutto) due domini di broadcast
differenti, ergo devono avere sempre classi ip diverse se vuoi gestirla
a livello 3.
che io sappia, solo apparati stupidi L2 ti consentono di poter mettere
ciò che vuoi come indirizzamento. ma quando si sale a L3, è come avere
su due reti diverse la stessa classe di indirizzi ip sulla stessa
macchina... non so se ho reso l'idea.
invece, se hai necessità di gestire un'eccezione, la gestisci a livello 3.
anche se sarebbe interessante fare qualche prova, personalmente non ho
mai progettato due vlan in bridge perchè le reputo concettualemnte
errate. magari altrove qualcuno ci ha smanettato per necessità (si è
ritrovato due reti così e buona notte), le ha gestite a *L3*, e ci può
portare qualche feedback.
> Ma possono coesistere eth0.1 ed una eth1.1 ? Ovvero stesso vlanID ma
> veicolato su nic differenti? Non vorrei che facessero a cazzotti.
> (in teoria no)
è come avere due schede di rete sulla stessa rete, se non gestita
correttamente rischi loop (broadcast storm), rischi di uscire sempre e
comunque da una sola scheda (a quale delle due dai il gateway?) etc..
Hai ragione, in effetti ho fatto un esempio troppo forzato.