VLAN kasutamine
Sisukord
VLAN (Virtual Local Area Network)
VLAN (Virtual Local Area Network) tehnika võimaldab ühel füüsilisel infrastruktuuril moodustada mitmeid loogilisi etherneti segmente, selliste võimalustega
- lokaliseerida liiklust (on vaieldav kas tegu on ranges mõttes turvalisuse instrumendiga, vt nt VLAN Hopping)
- lahendada topoloogilisi küsimusi ISO level 2 kihis, st kiht allpool ruuterid
VLANilises andmevahetuses osalevatel ethernet frame'idel on lisaks juures spetsiaalne vlan märk (ingl. k. tag), mis sisaldab andmeid selle kohta, millisesse VLANi frame kuulub. Nende tag'ide abil saavad võrgus osalevad seadmed kontrollida kõnealuse frame'i liikumist. Kasutaja jaoks esinevad VLAN tagid positiivsete täisarvude kujul, mida nimetatakse VLAN ID'deks.
Tavaliselt kõneldaks VLAN võimest seoses switchidega, kahes tähenduses
- mode access - füüsilise switchi igale pordile on öeldud, millisesse VLANi ta kuulub ning ühendades selliselt seadistatud switchi portidesse arvutid nö näevad üksteist ethernetis ainult samasse VLANi kuuluvad arvutid. Tavaliselt kasutatakse erinevates VLANides töötavatel seadmetel erinevaid ip subnet aadresse ja kui sellise asjakorralduse puhul ka seadistada ühe VLANi arvutile aadress teise VLANi ip subnetist, siis ikkaga ühendust teine VLANi arvutitega ei teki kuna ethernet frame'ide tasemel (ISO level 2) on selline liiklus blokeeritud. Sellisel juhul omistab switch peale etherneti frame'i porti sisenemist talle VLAN tagi ning peale pordist väljumist VLAN tag eemaldatakse. Selliselt seadistatud switchi porte kasutavad arvutid iseenesest ei tea midagi VLANidest.
- mode trunk - selleks, et mode access režiimis saaks kasutada sama VLANi nii, et see ulatub üle mitme switchi peab olema VLAN tagidega frame'idel võimalus liikuda switchide vahel nii, et need tagid säilivad. Kui näiteks ühte VLANi peab kuuluma porte ühe ja teise switchi küljest, siis piisab need kaks switchi ühendada omavahel kokku tavalise võrgukaabliga ning seadista vastavad pordid mode trunk'is, mis tähendab, et selliste portide läbimisel ethernet frame'idelt VLAN tag'e ei eemaldata. Seadistades switchi pordi mode trunk režiimi tuleb öelda, milliste VLAN ID'dega ethernet frame'id pordist läbi saavad.
Mode access või mode trunk režiimis olek on üksiku pordi mitte switchi omadus.
Cisco switch
Cisco switchi puhul toimub mode access seadistamine näiteks selliselt
conf t interface GigabitEthernet0/9 no shutdown switchport access vlan 5 switchport mode access ^z write
Kui mõni muu port veel selliselt seadistada ja neisse portidesse ühendada arvutid ning seadistada neile sama ip subneti aadressid, siis nad saavad omavahel võrgus suhelda.
Cisco switchi puhul toimub mode trunk seadistamine näiteks selliselt
conf t interface GigabitEthernet0/10 no shutdown switchport trunk encapsulation dot1q switchport trunk allowed vlan 5,6,7 switchport mode trunk ^z write
Kui teise switchi mõni port seadistada sarnaselt ja nad ühendada mööda kõnealuseid porte kaabliga, ning seadistada kummagi switchi muid porte mode access režiimis VLAN ID väärtusega 5, siis saavad neisse portidesse ühendatud arvuti kõik omavahel suhelda. Seejuures peab arvestama, et kahe switchi vahel on andmevahetuse kiirus piiratud trunk režiimis oleva ühenduse kiirusega.
OpenBSD kasutamine mode trunk režiimis
Lisaks sellele, et OpenBSD töötab tavalise mode access režiimis seadistatud switch pordi külge ühendatud arvutina saab OpenBSD seadistada käima ka selliselt, et ta töötab VLAN tag'idega tegelemise mõttes nagu mode trunk režiimis töötava pordiga switch. St OpenBSD ise kontrollib andmevahetust VLAN tagide alusel sh moodustab neid tag'e. Selline asjakorraldus nt võimaldab lülitada arvuti samaaegselt erinevatesse VLANidesse kuigi tal on vaid üks füüsiline võrgukaart.
Selleks tuleb ühendada samuti sobivalt seadistatud VLAN ID'dega trunk režiimis switchi port ja füüsiline võrgukaart kaabliga ning esmalt moodustada vlan seade seostades ta sobiva füüsilise seadmega, nt xl0
ifconfig vlan5 vlan 5 vlandev xl0
ning seejärel seadistada loogilisele seadme võrk, näiteks
ifconfig vlan5 inet 192.168.5.1 netmask 255.255.255.0
Kusjuures neid käske võib korrata seostades ühe füüsilise seadmega mitu erinevat VLANi (samad mis vastaval switchi pordil), nt
# ifconfig -A .. xl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 00:60:97:2a:4b:4c media: Ethernet 10baseT (10baseT half-duplex) status: active inet6 fe80::260:97ff:fe2a:4b4c%xl0 prefixlen 64 scopeid 0x3 .. vlan5: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 00:60:97:2a:4b:4c vlan: 5 priority: 0 parent interface: xl0 groups: vlan inet6 fe80::260:97ff:fe2a:4b4c%vlan5 prefixlen 64 scopeid 0xb vlan6: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500 lladdr 00:60:97:2a:4b:4c vlan: 6 priority: 0 parent interface: xl0 groups: vlan inet6 fe80::260:97ff:fe2a:4b4c%vlan6 prefixlen 64 scopeid 0xc vlan7: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 00:60:97:2a:4b:4c vlan: 7 priority: 0 parent interface: xl0 groups: vlan inet6 fe80::260:97ff:fe2a:4b4c%vlan7 prefixlen 64 scopeid 0xd
Selleks, et peale bootimist vlan seade automaatselt moodustuks, tuleb tekitada tekstifail /etc/hostname.vlan5 sisuga
inet 192.168.5.1 255.255.255.0 NONE vlan 5 vlandev xl0
Selleks, et võrk töötaks peab see seade, mida vlan seadmed kasutavad olema up olekus, selleks tuleb antud näite puhul omada faili /etc/hostname.xl0 sisuga
up
Linux'i kasutamine mode trunk režiimis
Operatsioonisüsteem Debian GNU/Linux abil saab edukalt kasutada vlan seadmeid. Tuleb paigaldada pakett vlan
bash# apt-get install vlan
ning laadida 8021q moodul
bash# modprobe 8021q
ning öelda
bash# ip link set dev eth0 up bash# vconfig set_name_type DEV_PLUS_VID_NO_PAD bash# vconfig add eth0 5 Added VLAN with VID == 5 to IF -:eth0:- bash# vconfig add eth0 6 Added VLAN with VID == 6 to IF -:eth0:- bash# vconfig add eth0 7 Added VLAN with VID == 7 to IF -:eth0:-
Tekivad seadmed
eth0.5 Link encap:Ethernet HWaddr 00:0C:42:07:1A:44 BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) eth0.6 Link encap:Ethernet HWaddr 00:0C:42:07:1A:44 BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) eth0.7 Link encap:Ethernet HWaddr 00:0C:42:07:1A:44 BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Ning seejärel seadistada vlan seadmete võrk, nt selliselt
bash# ifconfig eth0.5 192.168.5.1 netmask 255.255.255.0 bash# ifconfig eth0.6 192.168.6.1 netmask 255.255.255.0 bash# ifconfig eth0.7 192.168.7.1 netmask 255.255.255.0
Seadme eemaldamiseks tuleb öelda
bash# vconfig rem eth0.7 Removed VLAN -:eth0.7:-