Vad är ett VLAN?

Vi utforskar virtuella LAN och börjar med några 2960 switchar. Vi utgår från följande frågor:

  • Vad vet vi om switchar?
  • Vad menas med VLAN?

Vad vet vi om switchar?

En switch använder MAC-adresser för att styra kommunikation mellan anslutna nätverksenheter. En switch bygger upp en tabell (CAM) med associationer mellan portnummer och anslutna nätverksenheternas MAC-adresser.

En switch identifierar anslutna nätverksenheter och kopplar ihop de i separata kretsar. Det innebär att en switch vidarebefordrar ramar endast till mottagare och inte till alla nätverksenheter anslutna till switchen. Men när  en switch mottar en inkommande ram med en destinations-MAC-adress som inte finns i CAM-adresstabellen skickar switchen ramen ut ur alla portar (broadcast) förutom ramens ingångsport.

Vad menas med VLAN?

Varje VLAN anses vara ett separat logiskt nätverk adresserade med specifika nätverksadresser.

Bilden nedan illustrerar ETT fysiskt nätverk med fyra switchar placerade i olika våningar i en byggnad. På varje våning finns tre avdelningar med datorer ihopkopplade till samma switch.

Datorerna tillhör till tre olika logiska nätverk: IT, HR och Sales. Varje logisk nätverk adresseras med egna nätverksadresser.

Bild 1: Virtuella LAN – VLAN

Ett kaotiskt nätverk

Skulle vi kunna strukturera ett så kaotiskt nätverk som bilden visar här nedan?

Bild 2: Ett kaotiskt nätverk

Som det är nu de tre olika logiska nätverk finns inte och det ända vi gjort är att skilja våningarna med en viss färg.

Målet är att så småningom blir tre olika logiska nätverk:

Bild 3: Ett strukturerat nätverk

Vi vill att på varje switch finns tre logiska nätverk och vi vill skilja dessa logiska nätverk exempelvis med VLAN 10 Engineers, VLAN 20 Designers och VLAN 30 IT.

Innan vi skapar och därefter konfigurerar logiska nätverk behöver vi utforska några till funktioner hos switcharna och mer om VLAN.

Ethernet ramformat

Switchar som stödjer logiska nätverk eller VLAN-teknik markerar ramar (frames) med en etikett. Denna etikett kallas på engelska TAG och markerade ramar kallas på engelska “tagged trafik“. Allt annat datatrafik kallas “untagged trafik“.

Det innebär att nätverkstrafik från VLAN 10 markeras med ett etikett som associerar just med det virtuella LAN. Det samma gäller för VLAN 20 och 30.

Bild 4: Ethernet ram (frame) för VLAN

Olika VLAN typer

Det finns ett antal olika typer av VLAN och bland de finns två som är intressanta för oss i denna laboration:

Default VLAN

Alla portar i en switch tillhör till Default VLAN som konfigureras automatiskt vid switchens initiala start. Efter den initiala uppstarten av en switch tillhör dess portar till en och samma broadcast-domän. Detta gör det möjligt kommunikationen mellan alla nätverksenheter som är anslutna till switchen. Denna default VLAN kallas VLAN 1 vilket kan verifieras med kommandot show vlan brief:

Bild 5: VLAN 1

VLAN 1 kan inte raderas eller byta namn och som default fjärradministreras switchar via VLAN 1.

Native VLAN

Från början fungerar alla portar som access-port och de inkluderas i en default VLAN med namn VLAN 1. Eftersom alla portar tillhör till samma VLAN markeras inte Ethernet-ramar vilket är känd som “untagged frames“. Som default är VLAN 1 en Nativ VLAN. Men när flera VLAN skapas behöver Ethernet-ramar identifieras via inkapslingsprotokoll 802.1Q.

I exemplet som illustreras nedan skickar PC1 ett broadcast-paket till en hubb. Denna skickar vidare mottagna frame till alla anslutna switchar utan att ändra någon styrinformation. När dessa omarkerade ramar tas emot av switchar associeras ramarna med VLAN 1 och därför skickar switchen ramarna via de portar som tillhör VLAN 1.

Bild 6: Tagged och untagged nätverkstrafik

Obs: Hubbar används inte längre i dagens moderna nätverk.

Dynamic Trunking Protocol

DTP används av switchar för att förhandla ett visst arbetsläge: åtkomst-läge (access) eller trunk-läge (trunk). Som default konfigureras alla portar som Access port, men varje port är redo att förhandla möjligheten att bli trunk port.

DTP packet skickas ut varje 60 sekunder och annonserar viljan att bli trunk-port. Förhandlingar kan generera olika arbetsläge beroende på kombinationer mellan följande alternativ:

  • Dynamic auto -En switchs port i dynamic auto läge annonserar inte viljan till att arbeta i trunk-läge. Men beroende på den andra switchens port kan arbetsläge ändå ställa sig in i trunk-läget, exempelvis om den andra port är i dynamic desirable läge.
  • Dynamic desirable -En switchs port i dynamic desirable läge kommer aktivt att annonsera viljan att arbeta i trunk-läget.
  • Trunk – En switchs port i trunk-läge arbetar som sådant, men porten kan också gå in förhandlingar med en annan switch för att arbeta i trunk-läge.
  • Access – En switchs port i access-läge arbetar just i det läget och annonserar inte någon vilja att arbeta i trunk-läget.

Portarnas arbetsläge kan illustreras med hjälp av tabellen nedan där man matchar kolumn med rad. Till exempel kolumn 2 och rad 2 innebär arbetsläge ACCESS, men kolumn 2 och rad 3 ger arbetsläge TRUNK. Det blir det samma med kolumn 2 och rad 4, men inte kolumn 2 och rad 5 där arbetsläget är ACCESS.

Bild 7: Dynamiska arbetsläge

Det går också att lära sig följande matchningar:

  • Dynamic Auto + Dynamic Auto = Access
  • Dynamic Desirable + Dynamic Desirable = Trunk
  • Dynamic Desirable + Dynamic Auto = Trunk
  • Dynamic Desirable + Trunk = Trunk

Bild 8: DTP och arbetsläge förhandlingar

Konfigurationer

  • Switch>enable
  • Switch#configure terminal
  • Switch(config)#hostname S1
  • S1(config)#vlan 10
  • S1(config-vlan)#name Engineers
  • S1(config-vlan)#exit
  • S1(config)#vlan 20
  • S1(config-vlan)#name Designers
  • S1(config-vlan)#exit
  • S1(config)#vlan 30
  • S1(config-vlan)#name IT
  • S1(config-vlan)#exit
  • S1(config)#
  • S1(config)#interface range fa0/1-5
  • S1(config-if-range)#switchport access mode
  • S1(config-if-range)#switchport access vlan 10
  • S1(config-if-range)#exit
  • S1(config)#interface range fa0/6-10
  • S1(config-if-range)#switchport access mode
  • S1(config-if-range)#switchport access vlan 20
  • S1(config-if-range)#exit
  • S1(config)#interface range fa0/11-15
  • S1(config-if-range)#switchport access mode
  • S1(config-if-range)#switchport access vlan 30
  • S1(config-if-range)#end
  • S1#show vlan brief
  • Switch>enable
  • Switch#configure terminal
  • Switch(config)#hostname S2
  • S2(config)#vlan 10
  • S2(config-vlan)#name Engineers
  • S2(config-vlan)#exit
  • S2(config)#vlan 20
  • S2(config-vlan)#name Designers
  • S2(config-vlan)#exit
  • S2(config)#vlan 30
  • S2(config-vlan)#name IT
  • S2(config-vlan)#exit
  • S2(config)#
  • S2(config)#interface range fa0/1-5
  • S2(config-if-range)#switchport access mode
  • S2(config-if-range)#switchport access vlan 10
  • S2(config-if-range)#exit
  • S2(config)#interface range fa0/6-10
  • S2(config-if-range)#switchport access mode
  • S2(config-if-range)#switchport access vlan 20
  • S2(config-if-range)#exit
  • S2(config)#interface range fa0/11-15
  • S2(config-if-range)#switchport access mode
  • S2(config-if-range)#switchport access vlan 30
  • S2(config-if-range)#end
  • S2#show vlan brief
  • Switch>enable
  • Switch#configure terminal
  • Switch(config)#hostname S3
  • S3(config)#vlan 10
  • S3(config-vlan)#name Engineers
  • S3(config-vlan)#exit
  • S3(config)#vlan 20
  • S3(config-vlan)#name Designers
  • S3(config-vlan)#exit
  • S3(config)#vlan 30
  • S3(config-vlan)#name IT
  • S3(config-vlan)#exit
  • S3(config)#
  • S3(config)#interface range fa0/1-5
  • S3(config-if-range)#switchport access mode
  • S3(config-if-range)#switchport access vlan 10
  • S3(config-if-range)#exit
  • S3(config)#interface range fa0/6-10
  • S3(config-if-range)#switchport access mode
  • S3(config-if-range)#switchport access vlan 20
  • S3(config-if-range)#exit
  • S3(config)#interface range fa0/11-15
  • S3(config-if-range)#switchport access mode
  • S3(config-if-range)#switchport access vlan 30
  • S3(config-if-range)#end
  • S3#show vlan brief