Soms zien we in het forum dat mensen een eigen router willen gebruiken en in de problemen komen omdat ze niet begrijpen hoe dat te configureren op de eigen router of dat die router geen VLAN support heeft, In dit artikel wil ik proberen het vlan gebeuren te leggen.
VLAN achtergrond
In meer complexe netwerken is er vaak de behoefte om een netwerk op te splitsen in delen voor verschillende toepassingen. Ook bij internet toegang is dat vaak nodig om de internet toegang, IP-TV en beheer uit elkaar te kunnen houden. VLANs maken het mogelijk die verschillende logische netwerken over een enkele kabel te versturen zonder dat die elkaar zien of beïnvloeden (zo lang de totale bandbreedte van de verbinding niet wordt overschreden).
Dat gebeurt door de verschillende netwerken ieder een eigen label te geven in de data pakketten (de data frames) die over de kabel gestuurd worden. Dit zijn niet de IP-parketten zoals je misschien wel kent maar de frames die over een kabel verstuurd worden die op hun beurt juist de IP-parketten versturen. Voor een goede uitleg zie: https://en.wikipedia.org/wiki/IEEE_802.1Q. VLANs tags zijn een nummertje tussen 1 en 4095.
Het is voldoende te onthouden dat ergens een label (tag) in de frames (buiten het IP-pakket) wordt gestopt dat aangeeft bij welk VLAN/ netwerk dat pakketje hoort. Ieder netwerk apparaat zal dan bij het versturen van data de juiste tag invoegen. Een ontvanger zal die tag gebruiken om te zien bij welk logisch netwerk dat hoort. Hiermee kunnen we dus een enkele kabel gebruiken om meerdere netwerken te verdelen.
Het is overigens ook mogelijk ook paketten zonder VLAN tag over dezelfde kabel te versturen. De VLAN ondersteunende ontvanger zal dat dan apart behandelen: het geeft dat pakket intern alsnog een een VLAN tag: de PVID. Intern in een apparaat dat VLANs ondersteunt zal ieder data pakket dus een VLAN tag hebben.
Een verbinding die meerdere VLANs heeft noemen we vaak een “trunk”. Die kan dus meerdere VLANs hebben en een netwerk (PVID) zonder VLAN tag.
Untagged frames kunnen aan beide kanten van de verbinding een andere PVID hebben).
Routers en switches
Zoals hieboven al aangegeven zijn VLAN tags geen onderdeel van een IP-pakket maar een labeltje dat in het ethernet frame aan het IP-pakket hangt.
Voor verbindingen tussen apparaten gebruiken we vaak switches in ons netwerk. Er bestaan switches met en zonder beheersfuncties: de zogenaamde managed en unmanaged switches. Sommige unmanaged switches kunnen VLANs transparant doorgeven maar niet allemaal. In dit artikel gaan we verder niet in op unmanaged switches in. Kies als je met VLANs werkt een managed switch.
Een managed switch kan meer met VLANs: je kunt aangeven welke VLANs toegestaan zijn op de verschillende poorten. Een VLAN dat niet toegestaan op een poort wordt dan daar niet uitgestuurd of ontvangen.
En herinner je nog de PVID? Een switch zal untagged paketten intern dat dus een VLAN id geven. Uitsturen van die VLAN zal de switch doen met “untagged” paketten oftewel zonder tag. Dat gebruik je vaak om een VLAN uit te splitsen. Een managed switch werkt dus alleen met frames. IP-pakketten worden alleen doorgegeven niet uitgepakt of gerouteerd.
Routers, die met IP-pakketten werken zullen het frame uitpakken en verder de IP-pakketten gewoon behandelen, net alsof die van verschillende fysieke interfaces komen. De IP-paketten worden behandeld en gerouteerd. Mochten op de uitgaande verbinding ook VLANs van toepassing zijn dan zal de router daar zonodig dus weer opnieuw een VLAN tag aanhangen, een andere dan waarop het pakket is ontvangen omdat het naar een andere netwerk gaat.
VLANs in het Odido network
Odido gebruikt de volgende VLANs in het vaste netwerk:
VLAN 100: management, voor configuratie van de configuratie van de router en waarschijnlijk ook voor remote access naar de door Odido geleverde routers
VLAN 300: Internet. Dit is het VLAN waarover de internet service wordt geleverd. Een eigen router hoeft dus alleen op VLAN 300 aangesloten te worden. Dat kan dus op de router zelf OF via een switch die VLAN300 uitsplitst naar een untagged poort (PVID). Zie hieronder.
VLAN 640: deze VLAN wordt gebruikt voor het oude TV-plaform. De meeste gebruikers hebben dan ook geen toegang tot dat VLAN. Helaas zie je daarom ook dat de Zyxels veel meldingen in de logfiles hebben dat het niet mogelijk is voor de DHCP clients om op dat VLAN een adres op te halen. Dat is dus normaal (maar nogal irritant: het vervuilt de logfile). Het huidige TV-platform werkt via internet (VLAN 300) en heeft VLAN 640 niet meer nodig.
Voor GPON gebruikers met een Huawei ONT is er behalve de VLANs vanuit ook nog de mogelijkheid om op de ONT in te loggen met wat meer gedetailleerde informatie over de GPON verbinding. Dat gebeurt met “untagged” verkeer, strict gesproken dus geen VLAN, maar wel verstuurd over dezelfde trunk als de Odido VLANs
Praktische voorbeelden
Nu we de theorie een beetje begrijpen zijn hier wat voorbeelden. Ik gebruik hiervoor mijn Zyxel GS1900-10HP. De afbeeldingen komen van het configuration VLAN menu.
VLAN
We beginnen met het menu voor het het specificeren van de VLANs die we verder kunnen gebruiken in de andere menus (configuration → VLAN → VLAN:
In de praktijk is het het beste VLAN 1 te vermijden. We gaan hier niet in op de redenen.
Verder zien we de andere VLANs op het glasnetwerk worden gebruikt (100, 300 en 640).
VLANs 150, 155 en 2004 zijn VLANs die ik in mijn netwerk gebruik die voor dit verhaal niet relevant zijn. VLAN 2004 gaat naar mijn interne router voor het uitlezen van de ONT
Port menu
In dit menu specificeren we voor de verschillende poorten welk soort verkeer is toegestaan:
Voor ieder van de poorten kunnen we hier specificeren wat de untagged vlan (PVID) is op de poort. Poort 3 gaat bijvoorbeeld naar een Raspberry PI die in het servers netwerk hangt (VLAN 150). De PI weet niets van die VLAN, dat hoeft ook niet. De poort mag alleen met untagged verkeer gebruikt worden.
Poorten 7 – 10 zijn allemaal geschikt voor de verbinding met het glasvezel netwerk (ik ga hier even niet in op de redenen). De ONT is aangesloten op port 8. Port 9 en 10 (de SFP poorten) waren voor het geval ik ooit een SFP ONT zou aanschaffen.
Ieder van die poorten heb ik VLAN 2004 als PVID gegeven: de GPON ONT geeft me op die untagged VLAN toegang tot zijn web interface. Hiermee kan ik dan via dat VLAN inloggen in de ONT.
Let ook op de kolom “accept frame type”. Sommige poorten zijn gespecificeerd als “untag only”. De apparaten op die kunnen dus alleen communiceren met hun default VLAN (de PVID). Andere poorten (zoals die naar de ONT) accepteren zowel tagged als untagged pakketten (ALL). Ik heb voor alle poorten ingesteld staan dat ze binnenkomende paketten alleen doorlaten als die VLAN voor die poort is toegstaan (Ingress check als enabled).
VLAN port
In dit menu specificeren voor ieder van de VLANs (uit het VLAN menu). Welke poorten toegang hebben voor dat VLAN (dropdown menu bovenaan).
In deze screenshot zie je voor VLAN 300 (het WAN LAN op de glasvezel, bovenaan geselecteerd) welke poorten toegang hebben op mijn switch tot dat VLAN. In dit geval poort 4 (gaat naar een router met VLAN support) en de poorten 7 – 10 (ONT). Zo’n menu is er voor ieder van de VLANs uit het VLAN menu
Voor ieder van de poorten geef je hier aan (voor dat VLAN bovenaan) wat voor toegang ze hebben.
-
forbidden: geen toegang (excluded is bijna hetzelfde maar daar kan de poort met het GVRP protocol alsnog aan de VLAN worden toegevoegd). Het gebruik van forbidden is dus iets duidelijker en veiliger.
-
tagged: de VLAN kan met VLAN tag op deze port gebruikt worden
-
untagged: de vlan mag als untagged/ PVID gebruikt worden. Het PVID moet wel gezet zijn op het vorige menu.
TIP: als je dus een router wilt gebruiken die geen VLANs support op de WAN port zet je de port van de switch die naar de WAN port van de router gaat hier op “untagged” en de PVID op het port menu op VLAN 300. Zie ook hieronder.
Eigen router zonder VLAN support
Mocht je dus een eigen router willen aansluiten die geen VLAN support heeft dan kan dat via een managed switch:
-
Configureer de switch zodat die VLAN300 kent (VLAN menu)
-
Configureer de switch als volgt voor de WAN verbinding:
-
-
Port instellingen: voor de poort naar de media converter/ ONT:
-
PVID is niet relevant (tenzij je de web interface van de ONT wilt benaderen, maar dat is een wat complexer verhaal). Kies een willekeurige waarde.
-
Accept frame type “ALL”
-
Ingress check:enable
-
VLAN trunk: disable
-
-
VLAN port menu voor VLAN 300:
-
Zet TAGGED voor je WAN port naar de router.
-
-
-
En voor de poort naar de WAN poort van je router:
-
Stel VLAN 300 in als PVID op de poort naar de WAN poort van je router
-
VLAN port menu: Stel de port in zodat alleen VLAN 300 op die port toegankelijk is voor untagged traffic. Andere VLANs hebben geen toegang nodig.
-
Je router zal nu WAN toegang hebben via het Odido netwerk. Stel je router in voor DHCP op de WAN port