Trunking e Inter-VLAN Routing
Teoria e Pratica Completa
Guida completa alla configurazione di VLAN, Trunking e routing tra VLAN
Cosa sono le VLAN e perché sono fondamentali
Le VLAN (Virtual Local Area Network) rappresentano una delle tecnologie più importanti nel networking moderno. Permettono di creare reti logicamente separate all’interno della stessa infrastruttura fisica, offrendo vantaggi significativi in termini di sicurezza, prestazioni e gestione della rete.
Vantaggi principali delle VLAN
- ✓ Sicurezza migliorata: Isolamento del traffico tra diversi gruppi di utenti
- ✓ Prestazioni ottimizzate: Riduzione dei domini di broadcast
- ✓ Flessibilità amministrativa: Gestione logica indipendente dal cablaggio fisico
- ✓ Risparmio sui costi: Utilizzo efficiente dell’infrastruttura esistente
- ✓ Scalabilità: Facile aggiunta e riorganizzazione di utenti
Scenari di utilizzo tipici
Le VLAN sono particolarmente utili in ambienti come:
🔗 VLAN Trunking Protocol (VTP)
Il VTP (VLAN Trunking Protocol) è un protocollo proprietario Cisco che semplifica la gestione delle VLAN in una rete con più switch. VTP sincronizza automaticamente il database delle VLAN tra tutti gli switch del dominio, evitando configurazioni manuali ripetitive.
Vantaggi del VTP
- ✓ Gestione centralizzata: Le VLAN vengono create una sola volta sul server
- ✓ Sincronizzazione automatica: Tutti i client ricevono gli aggiornamenti
- ✓ Riduzione errori: Meno configurazioni manuali = meno possibilità di errore
- ✓ Scalabilità: Facile aggiunta di nuovi switch alla rete
📋 Modalità VTP
📊 Esempio di architettura VLAN
↕
Router/Layer 3 Switch (Inter-VLAN Routing)
Guida pratica: VLAN, Trunking e Inter-VLAN Routing
Prima di procedere con la configurazione, è essenziale comprendere la relazione tra livelli OSI e VLAN:
- Livello 2 (Data Link): Le VLAN operano qui, separando il traffico Ethernet
- Livello 3 (Network): Ogni VLAN corrisponde tipicamente a una subnet IP
Regola fondamentale: 1 VLAN = 1 Subnet = 1 Dominio di Broadcast
Componenti chiave
- VLAN ID: Identificatore numerico (1-4094, con alcune riservate)
- Tag 802.1Q: Header aggiuntivo che identifica la VLAN
- Native VLAN: VLAN non taggata su una porta trunk (default VLAN 1)
- Management VLAN: VLAN dedicata alla gestione degli switch
Il primo passo nella configurazione delle VLAN è creare il database delle VLAN sullo switch:
Switch>enable
Switch#
Switch#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#
Switch(config)#vlan 10
Switch(config-vlan)# name Amministrazione
Switch(config-vlan)#exit
Switch(config)#vlan 20
Switch(config-vlan)# name Studenti
Switch(config-vlan)#exit
Switch(config)#vlan 30
Switch(config-vlan)# name Docenti
Switch(config-vlan)#exit
Switch(config)#exit
Switch#
Best Practice: Utilizzare nomi descrittivi per le VLAN facilita la gestione e il troubleshooting
Verifica della configurazione
Switch#show vlan brief
Switch#show vlan id 10
VTP sincronizza il database VLAN tra switch dello stesso dominio. Attenzione: può essere pericoloso se mal configurato!
Verifica stato VTP
Switch>show vtp status
Configurazione modalità SERVER
Il server crea e gestisce le VLAN, propagandole agli altri switch:
Switch(config)#vtp domain scuola
Switch(config)#vtp mode server
Switch(config)#vtp password cisco123
Configurazione modalità CLIENT
Il client riceve automaticamente le VLAN dal server:
Switch(config)#vtp domain scuola
Switch(config)#vtp mode client
Switch(config)#vtp password cisco123
Configurazione modalità TRANSPARENT
Il transparent non partecipa al VTP ma inoltra gli advertisement:
Switch(config)#vtp domain scuola
Switch(config)#vtp mode transparent
Switch(config)#vtp password cisco123
⚠️ Best Practices VTP
- Utilizzare password VTP per sicurezza del dominio
- Verificare revision number prima di aggiungere switch
- Backup configurazione prima di modifiche VTP
- Considerare VTP v3 per maggiore sicurezza
- Modalità OFF per disabilitare completamente VTP
Comandi di verifica
Switch#show vtp status
Switch#show vtp counters
Switch#show vlan brief
Nota importante: In ambienti di produzione, molti amministratori preferiscono disabilitare VTP per evitare modifiche accidentali al database VLAN.
Le porte access collegano dispositivi finali (PC, stampanti, server) a una singola VLAN:
Switch(config)#interface FastEthernet0/1
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 10
Switch(config-if)#description PC-Amministrazione-01
Switch(config-if)#exit
Nota: I frame inviati su porte access non contengono tag VLAN – vengono aggiunti dallo switch
Configurazione multipla (range di porte)
Switch(config)#interface range FastEthernet0/3-12
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 20
Switch(config-if-range)#description Range-Studenti
Il protocollo IEEE 802.1Q è lo standard utilizzato per il trunking tra switch e router. Funziona aggiungendo un tag di 4 byte ai frame Ethernet:
Struttura del Tag 802.1Q
- TPID (Tag Protocol Identifier): 0x8100 – identifica il frame come tagged
- PRI (Priority): 3 bit per Quality of Service (COS)
- CFI (Canonical Format Indicator): 1 bit per compatibilità Ethernet/Token Ring
- VID (VLAN Identifier): 12 bit che identificano la VLAN (1-4094)
VLAN Native
La VLAN nativa (default VLAN 1) trasporta traffico senza tagging. Best practice: cambiare la VLAN nativa per sicurezza.
# Frame Ethernet standard senza 802.1Q
[Preamble][Dest MAC][Src MAC][Type/Length][Data][FCS]
# Frame Ethernet con tagging 802.1Q
[Preamble][Dest MAC][Src MAC][802.1Q Tag][Type/Length][Data][FCS]
Il Router-on-a-Stick permette il routing inter-VLAN usando una singola interfaccia fisica con multiple subinterfaces logiche.
Architettura e Funzionamento
- Interfaccia fisica: Collegata a porta trunk dello switch
- Subinterfaces: Interfacce logiche, ognuna associata a una VLAN specifica
- Tagging: Ogni subinterface processa solo il traffico con il tag VLAN corrispondente
- Gateway: Ogni subinterface funge da gateway per la rispettiva VLAN
Configurazione CLI Step-by-Step
Step 1: Abilitazione interfaccia fisica
Router> enable
Router# configure terminal
Router(config)# interface FastEthernet4/0
Router(config-if)# no shutdown
Router(config-if)# description Trunk-to-Switch
Step 2: Creazione subinterface per VLAN 10
Router(config)# interface FastEthernet4/0.10
Router(config-subif)# encapsulation dot1Q 10
Router(config-subif)# ip address 192.168.1.1 255.255.255.0
Router(config-subif)# description Gateway-VLAN10-Amministrazione
Step 3: Creazione subinterface per VLAN 20
Router(config)# interface FastEthernet4/0.20
Router(config-subif)# encapsulation dot1Q 20
Router(config-subif)# ip address 192.168.2.1 255.255.255.0
Router(config-subif)# description Gateway-VLAN20-Studenti
Step 4: Creazione subinterface per VLAN 30
Router(config)# interface FastEthernet4/0.30
Router(config-subif)# encapsulation dot1Q 30
Router(config-subif)# ip address 192.168.3.1 255.255.255.0
Router(config-subif)# description Gateway-VLAN30-Ospiti
Verifica della Configurazione
Router# show ip interface brief
Router# show interfaces FastEthernet4/0.10
Router# show vlan
Router# show running-config
Considerazioni Prestazionali
- Il router deve processare tutto il traffico inter-VLAN
- Possibile collo di bottiglia sull’interfaccia fisica condivisa
- Soluzione ideale per reti piccole/medie con traffico moderato
Le Access Control List (ACL) sono regole che filtrano il traffico di rete basandosi su indirizzi IP, protocolli e porte.
Tipi di ACL
- Standard ACL (1-99): Filtrano solo per IP source
- Extended ACL (100-199): Filtrano per IP source/destination, protocollo, porta
- Named ACL: ACL con nome invece di numero
Syntax delle ACL
access-list [number] [permit|deny] [source] [wildcard-mask]
Wildcard Mask vs Subnet Mask
- Subnet Mask: 1=network, 0=host (255.255.255.0)
- Wildcard Mask: 0=match, 1=ignore (0.0.0.255)
Implementazione Pratica delle ACL
Scenario: Bloccare comunicazione tra VLAN 10 e VLAN 20
ACL 1 – Applicata su VLAN 30 (out)
Router(config)# access-list 1 deny 192.168.1.0 0.0.0.255
Router(config)# access-list 1 deny 192.168.2.0 0.0.0.255
Router(config)# access-list 1 permit any
Router(config)# interface FastEthernet4/0.30
Router(config-subif)# ip access-group 1 out
ACL 2 – Applicata su VLAN 20 (out)
Router(config)# access-list 2 deny 192.168.1.0 0.0.0.255
Router(config)# access-list 2 permit any
Router(config)# interface FastEthernet4/0.20
Router(config-subif)# ip access-group 2 out
Best Practices ACL
- Sempre una regola permit esplicita alla fine
- Le regole sono processate in ordine sequenziale
- C’è una deny any implicita alla fine di ogni ACL
- Testare le ACL prima dell’implementazione in produzione
Comandi di Verifica ACL
# Mostra tutte le ACL configurate
Router# show access-lists
# Mostra le ACL applicate alle interfacce
Router# show ip interface
# Mostra configurazione running
Router# show running-config
# Test connectivity
Router# ping 192.168.1.10
Router# traceroute 192.168.2.15
Problemi Comuni e Soluzioni
Problema 1: ACL blocca tutto il traffico
# Causa: Manca regola permit finale
Router(config)# access-list 1 permit any
Problema 2: ACL applicata nella direzione sbagliata
# Verifica direzione applicazione
Router# show ip interface FastEthernet4/0.20
# Se necessario, rimuovere e riapplicare
Router(config-subif)# no ip access-group 2 out
Router(config-subif)# ip access-group 2 in
Problema 3: Wildcard mask errata
# Correggere wildcard mask
Router(config)# no access-list 1
Router(config)# access-list 1 deny 192.168.1.0 0.0.0.255
Router(config)# access-list 1 permit any
Esempio di Troubleshooting Completo
- Verificare che le subinterfaces siano up/up
- Controllare le ACL applicate alle interfacce
- Testare il ping tra host della stessa VLAN
- Testare il ping tra host di VLAN diverse
- Verificare le regole ACL con show access-lists
- Controllare i counter delle ACL per vedere il traffico bloccato
Verifica Contatori ACL
Router# show access-lists 1
Standard IP access list 1
deny 192.168.1.0 0.0.0.255 (25 matches)
deny 192.168.2.0 0.0.0.255 (10 matches)
permit any (150 matches)
I contatori mostrano quanti pacchetti hanno matchato ogni regola – utilissimo per il troubleshooting!
Esercitazione step-by-step
- Topologia base: 1 Switch + 4 PC + 1 Router
- VTP Setup: Configurare dominio VTP e modalità
- VLAN assignment:
- PC1-PC2 → VLAN 10 (192.168.10.0/24)
- PC3-PC4 → VLAN 20 (192.168.20.0/24)
- Trunk configuration: Switch ↔ Router
- Router subinterfaces: Gateway per ogni VLAN
Configurazione Router-on-a-Stick
Configurazione delle subinterfaces del router per il routing inter-VLAN:
Router(config)#interface FastEthernet4/0
Router(config-if)#no shutdown
Router(config)#interface FastEthernet4/0.10
Router(config-subif)#encapsulation dot1Q 10
Router(config-subif)#ip address 192.168.1.1 255.255.255.0
Router(config-subif)#exit
Router(config)#interface FastEthernet4/0.20
Router(config-subif)#encapsulation dot1Q 20
Router(config-subif)#ip address 192.168.2.1 255.255.255.0
Router(config-subif)#exit
Router(config)#interface FastEthernet4/0.30
Router(config-subif)#encapsulation dot1Q 30
Router(config-subif)#ip address 192.168.3.1 255.255.255.0
Router(config-subif)#exit
Configurazione Access Control List (ACL)
Implementazione di liste di controllo accesso per la sicurezza:
Router(config)#access-list 1 deny 192.168.1.0 0.0.0.255
Router(config)#access-list 1 deny 192.168.2.0 0.0.0.255
Router(config)#access-list 1 permit any
Router(config)#access-list 2 deny 192.168.1.0 0.0.0.255
Router(config)#access-list 2 permit any
Router(config)#interface FastEthernet4/0.30
Router(config-subif)#ip access-group 1 out
Router(config)#interface FastEthernet4/0.20
Router(config-subif)#ip access-group 2 out
Test di verifica
- Ping tra PC della stessa VLAN (deve funzionare)
- Ping tra PC di VLAN diverse (deve funzionare tramite router)
- Verifica sincronizzazione VTP tra switch
- Analisi del traffico per verificare il tagging 802.1Q
- Test di isolamento dei broadcast
- Verifica funzionamento delle ACL di sicurezza
Suggerimento: Utilizzare il simulatore di Packet Tracer per visualizzare il percorso dei pacchetti e comprendere meglio il funzionamento delle VLAN e VTP
Master delle VLAN, Trunking e Inter-VLAN Routing 🌐🔧