802.1Q VLAN Linuxra

Posted on

LANforge hasonló Charriot és Smartbits forgalmi generáció igényeinek. Meg lehet generálni Ethernet, UDP, TCP, HTTP, FTP, VOIP (SIP, RTP) és más protokollok. LANforge-ICE egy WAN emulátor és a hálózat-értékvesztési teszt eszköz. Ez adja látencia, jitter, csomagvesztés és egyéb hálózati rendellenességek szabályozott módon.

802.1Q VLAN kód már része a hivatalos kernel, és már évek. MAC-VLAN kódot adtunk óta körül 2.6.29. Nagyon valószínű, hogy kell letölteni semmit erről az oldalról, a csomagok itt hagyott az utókor kedvéért. Kérjük, küldje kérdésekre, és hibajelentéseket a linux hálózati levelezőlista: netdev@vger.kernel.org.

802.1Q VLAN-ok és MAC-VLAN-ok hozhatók létre a “ip” hasznosság (vconfig dolgozik VLAN, de crufty és elavult).

ip link add link eth0 név eth0.5 típusú VLAN ID 5
ip link add link eth0 neve eth0 # 1 címe 00: aa: bb: cc: dd: ee típusú macvlan

—- Legacy § —–

Hallom, hogy a 2.2 / 2.4-es kernel patch dolgozott e (és egyéb, biztos vagyok benne) rendszerek:

Cisco: {Catalyst: 6509}, 3Com: {Corebuilder, Netbuilder II SuperStack II kapcsoló 630}, Alpine: {3804 (SMMi, F32Ti)} Extreme Ntwks {Summit 48, 48i, 5i} Foundry: {ServerIronXL, FastIron}
Alteon ACENic Gigabit, 3Com 3C509, Realtek RTL8029 (AS), RTL8139, december DC21140 (tulipán), DFE-570TX quad-21143, Intel PRO / 1000 Intel vezető

Teljesítmény: A különbség a futó adatforgalom VLAN-ok v / s szabályos ethernet nagyon csekély. Ha valaki tett valamilyen benchmark, boldog leszek, hogy azt itt!

VLAN kapcsolódó források.

VLAN Telepítés és konfigurálás info.
CVS hozzáférés.
VLAN HOGYAN / FAQ (Néhány CISCO & 3COM konkrét info is.)
Egy másik VLAN Recept (Néhány információ specifikus Intel EEPRO Nics is.)
VLAN Research oldal japán
VLAN oldal fordította angolra
IEEE 802.1Q szabvány

Jellemzők

  1. Végrehajtja 802.1Q VLAN spec.
  2. Képes támogatni akár 4094 db VLAN Ethernet interfész.
  3. Mérleg jól kritikus utak: O (n), ahol n a fizikai Ethernet interfész, és ez csak a behatolás. O (1) minden más kritikus út, amennyire én tudom.
  4. támogatja a multicast
  5. Megváltoztathatja MAC-címét VLAN.
  6. Több elnevezési támogatott, és állítható a futás.
  7. Opcionális header-átrendezési, hogy a VLAN interfész néz ki, mint az Ethernet interfészt. Ez javít néhány probléma DHCPd és bármi mást, amely egy SOCK_PACKET aljzatba. Az alapértelmezett beállítás ki van kapcsolva, ami működik minden egyéb protokoll tudok, és valamivel gyorsabb.

Változások naplója

Release 1.9 (gz) Legújabb vconfig & macvlan_config szeptember 13, 2005:

Bármilyen foltok maradó E csomag történelmi jellegűek. A hivatalos VLAN és mac-VLAN kód a kernel. Ez a kiadás javítások visszatér hibakódok vconfig.

Release 1.8 (gz) A Kernel: 2.4.21+ szeptember 30, 2003:

Frissítve MAC-VLAN-kód és a befejezett vizsgálat. Alapján Alex Zeffertt munkáját, de sokkal már újra írt, és nem tud felelősséget! Kérjük, küldje el az összes hibajelentést a VLAN levelezőlistára. A Candela Technologies egységes folt van a dolog, hogy most alkalmazni, és nem tartalmaz egyéb nem-feltétlenül-VLAN kapcsolatos darabokból.

Release 1.7 m (gz) A Kernel: 2.4.14+ február 27., 2003:

Hozzáadott Alex Zeffertt MAC-alapú VLAN kódot. Nem teljesen működőképes még (főleg azért, mert eltörte a mű eredeti … fogja kijavítani fel hamarosan. Grab & használni a nyers tapasz * fájlok időközben.

Release 1.7 (gz) A Kernel: 2.4.14+ február 27, 2003:

Tisztázta a licenc vconfig (GPL). Egyéb kis csíp.

Release 1.6 (gz) A Kernel: 2.4.14+ március 24, 2002:

Az eltávolított 2.4 kernel patch: Ez a szabványos kernel most.
Frissítve vconfig kijavítani néhány fordítási problémák, és lehetővé teszi a határokon összeállítás a StrongARM platform (változtatásokat kell segíteni a határon összeállítása kísérletek is.)

Release 1.5 (gz) A Kernel: 2.4.12-pre5 október 22, 2001:

Többnyire hozzáadott más népek javításokat (hála emberek!)
Végül állandó mc-lista szivárgás (ARD van Breemen)
Flush mc-lista VLAN-Destory (Ard van Breemen)
Add vconfig man oldal forgalmazás (Ard van Breemen)
Fix probléma / proc és átnevezés VLAN készülékek (af AT devcon D.T nettó)
Add viszonylag nagy változást Nick Eggelston ami VLAN eszközök átláthatóbb eszközök, mint a tcpdump és más nyers csomag illetéktelen megfigyelők. Ezt csak akkor engedélyezett, ha a REORDER_HDR jelző.

Release 1.4 (gz) A Kernel: 2.4.8 augusztus 16, 2001:

Kód már nem igényelnek / proc felületen annak érdekében, hogy a IOCTL. A IOCTL most kötve aljzatok. Amikor a modulokat, akkor: automatikus terhelés most is …
Rögzített formátum string hibáját proc fs kijelzőn.
Fixed crash bug kapcsolatos memóriafoglalási zárral tartott (most használni GF_ATOMIC)
hard_start_xmit most növekszik a csomag fejlécében ha nincs elég belmagasság. Ez rögzíti MPLS-over-VLAN probléma, de az igazi megoldás az, hogy az MPLS fordítsanak több fejtér egyébként …
vconfig változott az új IOCTL API, és a régi vconfig nem fog működni ez, vagy bármely újabb javítások …

Release 1.0.3 (gz) A Kernel: 2.4.7 augusztus 5, 2001:

Átdolgozott kódot sokkal stabilabb és in-line, amit a kernel fenntartói szeretnék látni, mielőtt a VLAN tapasz tartalmazza a kernel.
Az egyik ilyen kérés volt, hogy változtatni az alapértelmezett elnevezési rendszer eth0.5, a VLAN a VID 5. eth0. Akkor felülírjak ezt elnevezési viselkedés a vconfig eszköz.
Voltak * NEM * változások a 2.2-es javítást, és nem számíthat arra, hogy valaha is több változás van …

Release 1.0.1 (gz) A Kernel: 2.2.18 / 19, a 2.4.3-Pre3 április 16., 2001:

Incorporated fix megváltoztatásának MAC egy VLAN, most helyesen állítja PACKET_HOST. Köszönet Martin Bokaemper ez.
A 2.4-es sorozatú tapaszt lefordíthatjuk modulként, köszönhetően a csípés valaki, aki mail elvesztettem! Különben is, 3 éljenzés a un nevű coder!
Voltak * NEM * változások a 2.2-es patch bár én ellenőrizni, hogy úgy tűnik, hogy jól működik a 2.2.19 kernel.

Release 1.0.0 (gz) A Kernel: 2.2.18, 2.4.0 január 14, 2001:

Tényleg fix (és tesztelt) MAC változás-képességét. Ha beállítja a MAC címét egy VLAN, akkor is próbálja beállítani a mögöttes eszköz PROMISCious mód (különben a VLAN nem kap semmilyen csomagot.)
Kivonatolt-eszköz keresési alapértelmezésben le van tiltva, mert néhány ember volt baj a “lo” eszköz. Kérjük, bátran újra engedélyezni szerkesztésével vonal net / core / dev.c (keresni #define BEN_FAST_DEV_LOOKUP).
vconfig kell figyelmeztetni, amikor létrehozza a VLAN 1, mert, hogy a VLAN nem kompatibilis sok kapcsolókkal.

Release 0.0.15 (gz) A Kernel: 2.2.18, 2.4.prerelease december 31, 2000:

Összeolvadt a legtöbb Matti Aarnio a javításokat. Ez azt jelenti, nincs jelentős tapaszt eth.c most, és segít port VLAN-ok a nem ethernet eszközök (pl ppp, TokenRing ??).
Beállítása a MAC címet kell dolgozni now..I hiszem eltört előtt.
Egyéb kód átszervezés, hogy futnak a fájlok méretét.

Release 0.0.14 (gz) A Kernel: 2.2.17, 2.4.pre9 október 26, 2000:

Ez a kód úgy tűnik, elég stabil.

Eltávolított VLAN-tér-per-gépet, így a VLAN-space-per-NIC kötelező most.
DHCP működhet most, ahogy már támogatja a külvilágtól rendszeres ethernet kereteket, ha elküldik a VLAN vezető.
Rögzített fel a nevét / index tördelési dolgokat kezelni nevének megváltoztatása egy eszközön.
Elővett alapértelmezett VID & alapértelmezett prioritás, mint a hasznossága kérdéses volt, és a kód megtört egyébként.

Release 0.0.13 (gz) A Kernel: 2.2.17, 2.4.pre9 október 11, 2000:
Ismert, hogy lebuktak, itt az utókor kedvéért.

Hozzáadott támogatása multicast a VLAN eszközöket. Hála Gleb & Co a legtöbb, hogy a kódot.
Hozzá a képességét, hogy a MAC-címet a VLAN. Most, akkor sem kell állítania az Ethernet NIC be promisc módban, esetleg kitalálni néhány multi-cast ethernet cím beállításához a NIC. Ez nem tesztelték jól egyáltalán.
Hozzáadott egy kivonatolt eszköz nevet keresési rendszer. Ez nagyon felgyorsítja ifconfig -a. Tudtam, hogy működjön egy ifconfig -a 20 másodperc alatt egy Celeron 500, 4000 VLAN eszköz konfigurálva !!
Hozzáadott vlan_test.pl hogy segítsen nekem megtalálni buta hibákat. Nyugodtan, hogy ez sokkal erősebb, és elküldi a kódot vissza hozzám!
vconfig.c került át a C kódot most, ahelyett, hogy a C ++. Hála MATHIEU.
Jelentősen kitakarította a kódot w / out csökkenő bármilyen hasznos funkció, azt hiszem.
Eltávolította a DHCP dolgokat a VLAN forgalmazás.

Release 0.0.12 (gz) A Kernel: 2.2.16, 2.4.pre7 augusztus 27, 2000:
Hozzáadott képességét, hogy újra rend a VLAN csomag, hogy úgy néz ki, mint egy igazi ethernet csomagot bejutásának útját. Ez segítheti a DHCP-t és más programokat, amelyek ragaszkodnak olvasás a nyers puffer majd feltételeznek byte kompenzáció. Nem kell egy jó módja kipróbálni ezt teljes mértékben, ezért úgy vélik, hogy a kísérleti 🙂 Ez a viselkedés megváltoztatható futási időben, és be van állítva egy-egy VLAN alapon. Alapértelmezésben nem rendezheti át a fejlécet, amely az egyetlen magatartás fel, amíg ezen a ponton. A vconfig program beállítása / törlése zászló használatával VLAN IOCTL. Elolvashatja a zászló értékét a / proc / net / VLAN / VLAN * fájlokat.

Azt is beállíthatja az alapértelmezett prioritás a NON-VLAN eszköz. Ez a prioritás csak akkor használható, ha a default_VID az eszköz be van állítva is. Ez a prioritás nem lesz leképezve sehol, csak másolt egyenesen skb-> prioritás. Ez egy uint16.

A 2.3 patch már a 2.4 patch, és azt vizsgálták ellen 2.4.pre7.

Release 0.0.11 (gz) A Kernel: 2.2.13 / 14, 2.3.99 április 23., 2000:
Hozzáadott valódi támogatást az elsőbbségi. Keresztül IOCTL kéri (lásd a vconfig program), akkor meg explicit ki- és beszállás leképezések / a VLAN QoS bitek és a sk_buff-> prioritás terén. Ez nem tesztelt nagyon jól, mint én, nem sokat tudok, hogy az emberek tényleg használja a prioritás helyszíni … kivette a round-robin aggretation hogy bement az RLS-ben 0,10, hiszen elsősorban csak egy hack, és ezzel kapcsolat aggregáció alacsonyabb szinten majd üzembe VLAN a tetején, hogy a virtuális eszköz valószínűleg több értelme van. A vconfig programot változott, hogy támogassa az új features..here ennyi új használat:

Használat: add [interface-név] [vlan_id]
rem [VLAN-name]
set_dflt [interface-név] [vlan_id]
add_port [port-név] [vlan_id]
rem_port [port-név] [vlan_id]
set_egress_map [VLAN-név] [skb_priority] [vlan_qos]
set_ingress_map [VLAN-név] [skb_priority] [vlan_qos]
set_name_type [név típusú]
set_bind_mode [bind-típus]

* A [interface-name] a neve az ethernet kártyát, hogy a házigazdák
A VLAN beszélünk.
* A port-neve az a fizikai interfész, amely a VLAN
lehet rögzíteni.
* A vlan_id azonosítója (0-4095) a VLAN akkor működik.
* Skb_priority prioritásnak a socket buffer (sk_buff).
* Vlan_qos a 3 bit prioritást a VLAN fejléc
* Elmult típusa: VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5)
DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5)
* Bind-típus: PER_DEVICE # Lehetővé VLAN 5 az eth0 és eth1, hogy egyedi legyen.
PER_KERNEL # erők VLAN 5 egyedinek kell lennie az összes eszközön.

A 2.3 foltok már portolták foward 2.3.99, köszönhetően Patrick a vlanproc.c frissítéseket!

VLAN beállítása és konfigurálása
A kezdéshez, akkor eldönthetjük, hogy töltse le a legújabb vlan.XXtar.gz fájlt (a $ HOME könyvtárban.) Csomagold ki a kedvenc parancsokat, például: tar -xvzf vlan.1.6.tar.gz is megteheti, kap ez a CVS Repository segítségével valahogy így:

Telepítse és konfigurálja a gépen.
A VLAN adattár:
export CVSROOT =: pserver: anonymous@cvs.candelatech.com: / home / cvs_user / VLAN
Jelentkezzen be az adattárban:
cvs login (JELSZÓ: anonim)
Nézze meg a forrást:
mkdir VLAN; cd VLAN; cvs checkout -z3 VLAN

Most, ha kell egy VLAN könyvtárat a home könyvtár. Csak meg kell foltozni a kernelt, ha Linuxot használ 2.4.14 vagy korábbi. Most olvasd el a README vagy más docs, hogy kitaláljuk, mi a kernel meg foltok ellen. A listát a mirror tartják www.kernel.org. Csomagolja ki, majd az ENSZ-tar ezt a saját könyvtárban is, amely létrehoz egy linux könyvtárat a $ HOME könyvtárban. Példa: tar -xvzf linux-2.2.14.tar.gz

Most adjuk hozzá a VLAN kernel módosításokat a kernel, ha a kernel megkívánja. Végre rájöttem, hogyan kell csinálni, hogy a foltok diff képes kezelni (azt hiszem ez jobb, legalább!). Meg fogja találni a tapaszt a VLAN könyvtárban. Úgy fogják hívni: vlan.patch, vagy valami hasonlóan egyenes ehhez. A tapaszt a rendszermagot:

cd $ HOME / linux
folt -p 1 <$ HOME / VLAN / [vlan.patch]

Az új, javított, kernel kell lennie az include path mielőtt megpróbálja lefordítani a vconfig programot. Az egyik módja, hogy a dolog működik összekapcsolása $ HOME / linux a “linux” könyvtárat, amit csak az ENSZ-zip és foltozott. A parancs lehet valamit, mint: cd $ HOME; ln -s /home/greear/kernel/2.4/linux.dev linux

Építsd a vconfig programot a $ HOME / VLAN könyvtárban:
cd $ HOME / VLAN
csinál

Most ideje lefordítani az új rendszermagot! Használja a make xconfig parancsot a $ HOME / linux könyvtárba, hogy kiválassza a kernel működését. Az opció kapcsolódó 802.1Q VLAN-ok alatt található Hálózati beállítások. Ha az opció nincs kijelölve, győződjön meg róla, válassza ki a “Kísérleti Drivers” az egyik első xconfig menüket.

Feltételezve, hogy a kernel, simán (kiabálni, ha nem, és úgy gondolja, a kód törte meg !!), akkor most már készen áll, hogy próbálja ki !! Telepítse a kernel a szokásos módon (erősít fel a /etc/lilo.conf megfelelően és futtasd a lilo parancsot root.) Indítsa újra a számítógépet, és válassza ki az új kernel.

Mivel a számítógép visszatér az élet, nem lesz kis jel, hogy most már 802.1Q alkalmas, kivéve a vonal kiköp a rendszerindítási folyamat során. Lennie kell egy config program a $ HOME / VLAN könyvtárban: vconfig. vconfig létrehozásához használt és elpusztítani VLAN eszközök. Így létrehozunk egy VLAN készülék az első Ethernet NIC. vconfig kiírja rövid duma, hogy hogyan kell használni. A vconfig parancsot szoktam használni a következő:

vconfig add eth0 5

Ez megpróbál létrehozni egy VLAN készülék VLAN ID-5-én a eth0 eszközön. Ha törölni szeretnénk egy VLAN, használ valami hasonló:

vconfig rem eth0.5

Azt is el kell, hogy ez egy ip, pl: ifconfig -i 192.168.2.1 eth0.5
és állítsa be az UP: ifconfig -i eth0.5 fel

Megjegyzés: Lehet kapni sok VLAN konfigurációs adatainak a / proc / net / VLAN / * fájlok segítségével “macska” vagy “több”, hogy nézd meg őket.

Eredetileg a http://www.candelatech.com/~greear/vlan.html. Készítette http://hunsci.com