Kliënt-VLAN's of 'n gemerkte trunk: kies die regte OpenVPN-modus
vlan-tagging is 'n skakelaarmodel vir toegangspoorte wat die bediener toeken, nie deursigtige merkoordrag nie. Vergelyk albei ontwerpe en die drie voorwaardes wat die keuse bepaal.
Twee versoeke kom met byna dieselfde bewoording aan: plaas elke VPN-kliënt in 'n gekose VLAN, of dra 'n bestaande VLAN-trunk oor die VPN. Dit is twee verskillende produkte. OpenVPN se ingeboude VLAN-bewuste modus is 'n skakelaarmodel vir die eerste versoek, en dit is nie 'n sinoniem vir deursigtige merkoordrag nie. Die verkeerde keuse lewer 'n ontwerp wat opgestel lyk en die rame wat vir jou saak maak, stilweg laat val.
Wat die VLAN-bewuste modus werklik bou
Met vlan-tagging geaktiveer op 'n TAP-ontplooiing slegs vir die bediener, modelleer die daemon sy TAP-toestel en elke gekoppelde kliënt as poorte op 'n interne skakelaar. Kliëntpoorte is ongemerk, en hul VLAN-assosiasie word op die bediener gestel deur die per-kliënt vlan-pvid-konteks, nie deur enigiets wat die kliënt stuur nie. Dit is die hele punt van die model: lidmaatskap is 'n besluit aan die bediener se kant oor 'n gemagtigde eweknie. Niks in die kliëntprofiel hoef te weet in watter VLAN dit hoort nie.
Die bediener se TAP-kant kry sy eie gemerkte of ongemerkte aanvaardingsbeleid deur vlan-accept. Stuur binne daardie skakelaar gebeur net tussen ooreenstemmende VID's, ook wanneer client-to-client gestel is, so twee kliënte in verskillende VLAN's kan mekaar nie deur die bediener bereik nie, al is albei daaraan gekoppel.
Daardie model is 'n toegangspoort-model. Rame wat 'n kliënt verlaat, is ongemerk, en die assosiasie word deur die bediener op grond van identiteit opgelê. Om die skootrekenaar te vra om sy eie verkeer te merk, is om 'n ander ontwerp te vra.
Toekennings moet die gemagtigde kliëntidentiteit volg, nie 'n waarde wat die kliënt oor homself aanbied nie. 'n Weggelate toekenning is ook nie 'n kwarantynstatus nie: die kliënt beland op die verstek-PVID, so 'n ontbrekende ccd-inskrywing is 'n stil beleidsbesluit eerder as 'n neutrale een.
Wat 'n deursigtige trunk eerder vereis
Om reeds gemerkte rame van punt tot punt te dra, begin deur die VLAN-bewuste verwerking af te skakel. Die skakelaarmodel en merkinstandhouding is alternatiewe, en om albei te aktiveer, vra een funksie om die ander se werk te doen.
Om dit te deaktiveer is net die begin. Die brug by elke eindpunt en die fisiese skakelaarpoorte moet saamstem oor watter VLAN's toegelaat word, watter merker inheems is en hoe ongemerkte rame behandel word. Om 'n onbeperkte trunk te verleng, stel baie meer uitsaaisdomeine bloot as die twee wat jy bedoel het om te verbind.
Raamgrootte het sy eie begroting nodig. 'n Gemerkte Ethernet-raam plus inkapseling is groter as die betaallading-syfer wat mense uit 'n gids kopieer, en 'n MTU wat vir 'n geroteerde tonnel reg was, is nie bewys dat 'n trunkpad werk nie.
Drie voorwaardes wat die antwoord bepaal
Eerstens, ondersteun die kliëntplatform TAP hoegenaamd? Android en iOS doen nie, en macOS-ondersteuning is beperk, so 'n vloot mobiele gebruikers sluit enige TAP-ontwerp uit, ongeag hoe die VLAN's gerangskik is. 'n Geroteerde TUN-sessie dra IP-pakkette, nie Ethernet-rame nie, en geen hoeveelheid VLAN-opstelling aan die bediener se kant verander dit nie. Kontroleer die vloot voordat jy die topologie ontwerp, want hierdie voorwaarde is die een wat nie omseil kan word nie. Dit is ook die voorwaarde wat die meeste ontdek word nadat die skakelaarwerk klaar is.
Tweedens, wie ken die VLAN toe? As die antwoord «die bediener, op grond van wie geauthentiseer het» is, pas die skakelaarmodel. As die antwoord «die bestaande skakelaarinfrastruktuur, met merkers wat reeds bestaan» is, het jy die trunk-ontwerp nodig.
Derdens, hoeveel van die netwerk moet bereikbaar wees? Die skakelaarmodel hou elke kliënt per konstruksie in een VLAN. Die trunk-ontwerp is 'n brug, en 'n brug wat verkeerd opgestel is, verbind uitsaaisdomeine wat veronderstel was om apart te bly.
Toets die keuse wat jy gemaak het
Verbind een kliënt wat in die toegelate VLAN moet wees en een wat nie moet nie, en toets dan vanaf die werklike eindpunt eerder as vanaf die bediener self. Bereikbaarheid aan die bediener se kant bewys dat die brug of skakelaar bestaan; dit bewys nie in watter VLAN 'n kliënt beland het nie.
ip -d link show tap0
bridge vlan showOp die bediener wys die tweede opdrag die VLAN-lidmaatskap van elke brugpoort, insluitend of 'n poort gemerk of ongemerk is. Vergelyk dit met die toekenning wat jy bedoel het voordat jy enigiets bokant laag twee ontfout.
Teken aan watter van die twee ontwerpe die ontplooiing gebruik. 'n Nota wat «VLAN-bewus» sê, is dubbelsinnig, en die volgende ingenieur sal die een aanvaar wat hulle eerste geleer het. Die OpenVPN VLAN-verwysingdefinieer die skakelaargedrag en die per-kliënt konteks, en dit is die kortste pad om te bevestig watter model jy laat loop.