802.1 Q VLAN įgyvendinimo už Linux

LANforge yra panašus į Charriot ir Smartbits eismo kartos poreikius. Ji gali sukurti Ethernet, UDP, TCP, HTTP, FTP, VOIP (SIP, RTP) ir kitų protokolų. LANforge-ICE yra WAN emuliatorius ir tinklo vertės sumažėjimo testas įrankis. Ji gali būti skiriama latency, jitter, paketų praradimo ir kitų tinklo sutrikimų kontroliuojamu būdu.

802.1 Q VLAN kodas yra dabar oficialioje branduolio, ir buvo metai iš metų. MAC-VLAN kodas buvo pridėta nes aplink 2.6.29. Tai yra labai mažai tikėtina, kad jums reikia atsisiųsti ką nors iš šios svetainės, paketai kairėje čia palikuonių labui. Prašome, siųsti klausimus ir pranešimus apie klaidas į linux tinklo adresų sąrašas: netdev@vger.kernel.org.

802.1 Q VlanVLAN ir MAC-VLAN gali būti sukurtos su “ip” priemonę (vconfig darbai vlan, bet yra crufty ir nebenaudojamas).

ip link add link eth0 name eth0.5 type vlan id 5
ip link add link eth0 name eth0#1 address 00:aa:bb:cc:dd:ee type macvlan

—- Palikimas Skyriuje —–

Aš girdėjau, kad 2.2/2.4 pleistrai dirbo su šių (ir kitų, aš tikiu) sistemos:

  • Cisco: {Catalyst: 6509}, 3Com: {Corebuilder, Netbuilder II, SuperStack II switch 630}, Alpine: {3804(SMMi,F32Ti)} Extreme Ntwks {Summit 48, 48i, 5i} Foundry: {ServerIronXL, FastIron}
  • Alteon ACENic Gigabit, 3Com 3c509, realtek RTL8029(AS), RTL8139, DEC DC21140 (tulip), DFE-570TX quad-21143, Intel PRO/1000 su Intel vairuotojas

Našumą: skirtumas veikia eismo per VLAN įprastą ethernet ryšį naudojantys yra labai nežymus. Jei kas nors padarė kažkoks etalonas, aš būsiu laimingas, kad jį čia!

VLAN susijusių Išteklių.

Savybės

  • Įgyvendina 802.1 Q VLAN spec.
  • Gali palaikyti iki 4094 VLAN per ethernet sąsają.
  • Svarstyklės gerai kritiniai keliai: O(n), kur n yra skaičius FIZINIO ethernet sąsajos, ir tai tik dėl patekimo į vidų. O(1) ir kiekvienas kitas kritinis kelias, kiek aš žinau.
  • Palaiko MULTICAST
  • Galite pakeisti MAC adresą VLAN.
  • Kelių pavadinimų konvencijų, rėmė, ir reguliuojamas aplinką.
  • Neprivaloma antraštės-pertvarkymas, kad VLAN sąsaja atrodo kaip Ethernet sąsaja. Tai išsprendžia kai kurias problemas, su DHCPd ir nieko daugiau, kad naudoja SOCK_PACKET lizdą. Numatytasis nustatymas yra išjungtas, kurie dirba, už kiekvieną kitą protokolą aš žinau apie tai, ir yra šiek tiek greičiau.

Pakeisti Žurnalas

  • Release 1.9 (gz)  Naujausias vconfig & macvlan_config  Rugsėjis 13, 2005:
    Bet kokios dėmės, likusios šis paketas yra istorinė tik informaciniais tikslais. Oficialus VLAN ir mac-vlan kodas yra branduolyje. Ši versija išsprendžia grįžti klaidų kodus vconfig.
  • Release 1.8 (gz) Už Branduolio: 2.4.21+  Rugsėjis 30, 2003:
    Atnaujinta MAC-VLAN kodas ir baigtas testavimas. Remiantis Alex Zeffertt darbo, bet daug buvo pakartotinai raštu, ir jis negali būti laikoma atsakinga! Prašome siųsti visus pranešimus apie klaidas į VLAN pašto adresų sąrašą. Į Candela Technologijų vieningą pleistras yra dalykas, taikyti dabar, ir ji yra įvairių kitų ne-būtinai-VLAN susijusių bitai ir vienetų.
  • Release 1.7m (gz) Branduolys: 2.4.14+  Vasaris 27, 2003:
    Pridėta Alex Zeffertt MAC-based VLAN kodą. Ne visiškai funkcinis dar (daugiausia, nes aš susilaužė originalus darbas…viskas taisyti greičiau. Patraukti ir naudoti savo žaliavinio patch* failų šiuo metu.
  • Release 1.7 (gz) Branduolys: 2.4.14+  Vasaris 27, 2003:
    Patikslinti licenciją vconfig (GPL). Kiti smulkūs pataisymai.
  • Release 1.6 (gz) Branduolys: 2.4.14+ Kovo 24, 2002:
    Pašalinti 2.4 patch: Ji yra standartas branduolio dabar.
    Atnaujinta vconfig nustatyti kai kurių sudaryti klausimus ir padės cross-kompiliacija į StrongARM platforma (pakeitimai turėtų padėti kitų cross-kaupti kartų per.)
  • Release 1.5 (gz)  Branduolys: 2.4.12-pre5  Spalio 22, 2001:
    Daugiausia pridėtinės kitų tautų, pataisymų ir pleistrai (ačiū žmonės!)
    Pagaliau išspręsta mc-sąrašą nuotėkio (Ard van Breemen)
    Flush mc-sąrašą vlan-zniszcz (Ard van Breemen)
    Pridėti vconfig vyras puslapyje ir platinimo (Ard van Breemen)
    Išspręsti problemą, /proc kataloge ir pervadinti VLAN prietaisai (af AT devcon D.T net)
    Įtraukti santykinai didelį pakeisti Nick Eggelston, kad daro VLAN prietaisai, skaidresnė, kad priemonės, kaip tcpdump ir kitų žaliavų paketinių snoopers. Tai bus tik būti įjungtas, kai REORDER_HDR vėliava yra nustatyti.
  • Release 1.4 (gz) Branduolys: 2.4.8  Rugpjūčio 16, 2001:
    Kodas nebeturėtų reikalauti, /proc sąsaja siekiant gauti IOCTLs. Į IOCTLs dabar yra susieta į lizdus. Naudojant modulius, gali auto-apkrovos dabar, per…
    Ilgalaikio format string klaida proc fs ekranas.
    Fiksuotas avarijos klaidą, susijusios su atminties paskirstymas ir su spynomis vyko (mes dabar naudoti GF_ATOMIC)
    hard_start_xmit dabar bus augti paketo antraštę, jei nėra pakankamai aukštis. Tai gali išspręsti MPLS technologija-per-VLAN problema, nors realus sprendimas yra, kad MPLS technologija skirti daugiau aukštis vistiek…
    vconfig buvo pakeistas naudoti naują IOCTL API, ir senas vconfig neveiks su šios ar bet naujesnių lopai…
  • Release 1.0.3 (gz)  Branduolys: 2.4.7  Rugpjūčio 5, 2001:
    Vėl dirbo kodas būti stabilesnė ir labiau atitinka tai, ką branduolio lydi norite pamatyti prieš VLAN pleistras įtrauktas į branduolį.
    Vienas iš tų prašymų, buvo pakeisti numatytąjį įvardijimo schema eth0.5, VLAN, VID 5 eth0. Galite per važiuoti šis įvardijimas elgesį su vconfig įrankis.
    Ten buvo *NO* pokyčiai 2.2 serijos pleistras, ir aš ne tikėtis, kad kada nors padaryti, bet daugiau pokyčių yra…
  • Release 1.0.1 (gz)   Branduolys: 2.2.18/19, 2.4.3-pre3  Balandžio 16, 2001:
    Registravo pataisą, pakeisti MAC VLAN, tai dabar teisingai nustato PACKET_HOST. Ačiū Martin Bokaemper už šį vieną.
    2.4 serijos pleistras dabar turėtų sudaryti kaip modulis, ačiū įgnybti iš ką nors, kas mail aš pamečiau! Bet kokiu atveju, 3 cheers jt pavadintas programuotojas!
    Ten buvo *NO* pokyčiai 2.2 serijos pleistras, nors aš patikrinti, kad ji, atrodo, dirbti gerai su 2.2.19 branduolį.
  • Release 1.0.0 (gz) Branduolys: 2.2.18, 2.4.0  Sausis 14, 2001:
    Tikrai fiksuotas (ir išbandyta) MAC kaita-galimybė. Kai jums nustatyti MAC adresą VLAN, taip pat bus bandoma nustatyti pagrindines prietaiso PROMISCious režimas (kitaip, VLAN negaus paketus.)
    Maišos-prietaisas lookup yra išjungtas pagal numatytuosius nustatymus, nes kai kurie žmonės turėjo problemų su “lo” įrenginį. Prašome nedvejodami vėl įjungti redagavimo linijos net/core/dev.c (search #define BEN_FAST_DEV_LOOKUP).
    vconfig turėtų įspėti kurdami VLAN 1, todėl, kad VLAN nėra suderinama su daugeliu jungikliai.
  • Release 0.0.15 (gz)  Branduolys: 2.2.18, 2.4.negalutine Gruodis 31, 2000:
    Sujungti dauguma Matti Aarnio pleistrai. Tai reiškia jokių didelių pleistras eth.c dabar, ir padės prievadą, VLAN ne-ethernet įrenginius (ie ppp, TokenRing??).
    Nustatyti MAC adresą dabar jau turėtų veikti..manau, jis buvo nutrauktas anksčiau.
    Įvairūs kodas pakartotinio organizacijos padaryti pataisas, esamų failų mažesnis.
  • Release 0.0.14 (gz)  Branduolys: 2.2.17, 2.4.pre9  Spalio 26, 2000:
    Šis kodas atrodo gana stabilus.

    • Pašalinti vlan-vietos-per mašinos, todėl vlan-vietos-per-NIC yra privalomi dabar.
    • DHCP gali dirbti dabar, kaip aš papildoma parama už sandarinimo reguliariai ethernet kadrų, jei jie yra siunčiami į vlan vairuotojas.
    • Nustatyta iki pavadinimas/index maišos dalykų, rankena keičia pavadinimą į prietaisą.
    • Paėmė numatytasis VID & numatytasis prioritetas, nes jų usefullness buvo klausimas, o kodas buvo skaldytų vistiek.
  • Release 0.0.13 (gz)  Branduolys: 2.2.17, 2.4.pre9  Spalio 11, 2000:

ŽINOMA KAD BUSTED, čia palikuonių labui.

  • Papildoma parama už MULTICAST į VLAN prietaisai. Ačiū Gleb & Co dauguma, kad kodą.
  • Pridėta galimybė nustatyti MAC adresą VLAN. Dabar, jums arba reikia nustatyti, kad jūsų Ethernet NIC į PROMISC režimą, arba, galbūt, išsiaiškinti, kai multi-mesti ethernet adresas, nustatytas NIC. Tai nebuvo išbandyta gerai ne visi.
  • Pridėjo sumaišyti prietaisas-lookup pavadinimas sistemą. Tai labai pagreitina ifconfig -a. Man pavyko paleisti ifconfig -a 20 sekundžių ant Celeron 500, su 4000 vlan prietaisų sukonfigūruotas!!
  • Pridėta vlan_test.pl padėkite man rasti kvailas klaidas. Nesivaržykite, tai daug daugiau galingas, ir siųsti kodas atgal į mane!
  • vconfig.c buvo paversta C kodas yra dabar, o ne C++. Ačiū, kad MATHIEU.
  • Gerokai išvalyti kodą w/out mažėja, bet naudinga funkcija, manau.
  • Pašalinti DHCP daiktų iš VLAN platinimo.

 

  • Release 0.0.12 (gz)  Branduolys: 2.2.16, 2.4.pre7  Rugpjūčio 27, 2000:
    Pridėta galimybė iš naujo, kad į VLAN paketinių taip, kad jis atrodo kaip tikras ethernet paketų dėl patekimo kelias. Tai turėtų padėti DHCP ir kitų programų, kad reikalauti skaityti raw buferis ir tada daryti prielaidas apie baitas nukrypimais. Aš neturiu geras būdas išbandyti tai visiškai, todėl mano, kad tai eksperimentinis 🙂 toks elgesys gali būti pakeistas ne run-time, ir yra nustatyti kiekvienam VLAN pagrindu. Pagal nutylėjimą yra NE pertvarkyti antraštės, kuris buvo tik elgesys iki iki šio taško. Į vconfig programa gali nustatyti/aišku, vėliavos, naudojant VLAN IOCTL. Galite skaityti vėliavos vertės iš /proc/net/vlan/vlan* failus.

Taip pat galite nustatyti numatytąjį prioritetas NE VLAN prietaiso. Šis prioritetas bus naudojami tik tada, kai default_VID prietaise yra nustatytas, taip pat. Šis prioritetas negali būti priskirti bet kur, tiesiog nukopijuoti tiesiai į skb->prioritetas. Tai uint16.

2.3 patch yra dabar 2.4 patch, ir jis buvo išbandytas prieš 2.4.pre7.

  • Release 0.0.11 (gz)  Branduolys: 2.2.13/14, 2.3.99  Balandžio 23, 2000:
    Pridėta reali parama PRIORITETAS. Per IOCTL skambučiai (žr. vconfig programa), galite nustatyti aiškų įeinant ir išeinant iš jo vaizdais į/iš VLAN QOS bitai ir sk_buff->prioritetas srityje. Tai ne išbandyti labai gerai, nes aš nežinau daug apie tai, kaip žmonės iš tiesų naudoti pirmenybę srityje… Paėmė round-robin aggretation, kad nuėjo į rls 0.10, kaip tai buvo daugiausia tik hack, ir daro link aggregation žemesnio lygio, ir tada pradėti VLAN viršuje, kad virtualaus įrenginio tikriausiai daugiau prasmės. Į vconfig programa pakeitė remti naujų funkcijų…čia tai nauja naudojimas:

    Usage: add             [interface-name] [vlan_id]
           rem             [vlan-name]
           set_dflt        [interface-name] [vlan_id]
           add_port        [port-name]      [vlan_id]
           rem_port        [port-name]      [vlan_id]
           set_egress_map  [vlan-name]      [skb_priority]   [vlan_qos]
           set_ingress_map [vlan-name]      [skb_priority]   [vlan_qos]
           set_name_type   [name-type]
           set_bind_mode   [bind-type]
    
    * The [interface-name] is the name of the ethernet card that hosts
      the VLAN you are talking about.
    * The port-name is the name of the physical interface that a VLAN
      may be attached to.
    * The vlan_id is the identifier (0-4095) of the VLAN you are operating on.
    * skb_priority is the priority in the socket buffer (sk_buff).
    * vlan_qos is the 3 bit priority in the VLAN header
    * name-type:  VLAN_PLUS_VID (vlan0005), VLAN_PLUS_VID_NO_PAD (vlan5),
                  DEV_PLUS_VID (eth0.0005), DEV_PLUS_VID_NO_PAD (eth0.5)
    * bind-type:  PER_DEVICE  # Allows vlan 5 on eth0 and eth1 to be unique.
                  PER_KERNEL  # Forces vlan 5 to be unique across all devices.
    

2.3 pleistrai buvo perkeltas nurodantį į 2.3.99, ačiū Patrick už vlanproc.c atnaujinimus!


VLAN Setup ir Konfigūracija

Norėdami pradėti, jūs norite atsisiųsti naujausią vlan.X.X.tar.gz failo (į savo $HOME kataloge.) Išpakuokite jį su savo mėgstamas komandas, pavyzdžiui: tar-xvzf vlan.1.6.tar.gz Arba, jūs galite gauti jį iš CVS Saugyklos naudojant kažką panašaus į tai:

  1. Įdiegti ir sukonfigūruoti savo mašina.
  2. Nurodykite vlan duomenų saugykla:
    eksporto CVSROOT=:pserver:anonymous@cvs.candelatech.com:/home/cvs_user/vlan
  3. Prisijungti prie duomenų saugykla:
    cv login (PASSWORD: anonimas)
  4. Patikrinti šaltinis:
    mkdir vlan; cd vlan; cvs -z3 kasos vlan

Dabar, jūs turėtumėte turėti vlan katalogas jūsų namų katalogą. Jums tik reikia patch branduolio jei naudojate Linux 2.4.14 arba anksčiau. Dabar, perskaitykite README ar kitų dokumentų, išsiaiškinti, kas branduolio ji pataisas prieš. Sąrašas veidrodžiai yra saugomi www.kernel.org. Išpakuokite ir jt-deguto tai savo namų kataloge, taip pat, kuri turėtų sukurti linux direktoriją savo $HOME kataloge. Pavyzdys: tar-xvzf linux-2.2.14.tar.gz

Dabar pridėkite VLAN branduolio pokyčiai branduolio, jei jūsų branduolių reikia. Aš pagaliau suprato, kaip padaryti pataisas, kad skirtumas gali dirbti (manau, kad aš tai padariau teisę bent!). Rasite pataisų vlan katalogas. Ji bus vadinama: vlan.pleistras, ar kažkas lygiai taip pat tiesiai-nurodantį. Taikyti pleistras jūsų branduolys:

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

Savo naują, lopas, branduolį turėtų būti jūsų APIMTI kelias prieš bandant sudaryti vconfig programa. Vienas būdas gauti dalykų darbo yra susieti $HOME/linux “linux” katalogo, kad jūs tiesiog jt-kišenė su užtrauktuku ir lopas. Komanda gali būti kažkas panašaus: cd $HOME; ln -s /home/greear/kernel/2.4/linux.dev linux

Kurti vconfig programos $HOME/vlan katalogų:
cd $HOME/vlan
make

Dabar, laikas rinkti savo naują branduolį! Naudoti make xconfig komandą savo $HOME/linux katalogą, pasirinkite savo branduolio funkcijos. Galimybė susiję su 802.1 Q VLAN yra rasti pagal Tinklų funkcijos. Jei parinktis yra ne pabrėžta, įsitikinkite, kad jums pasirinkti “Eksperimentinis Vairuotojų” vienas iš pirmųjų xconfig meniu.

Darant prielaidą, kad jūsų branduolio parengė švariai (klykauti, jei ji nebuvo ir manote, kad mano kodas sulaužiau!!), dabar jūs esate pasiruošę išbandyti!! Įdiegti savo branduolio įprastu būdu (pataisyti /etc/lilo.conf faile tinkamai ir paleisti lilo kaip root.) Iš naujo paleisti kompiuterį ir pasirinkti savo naują branduolį.

Kaip ir kompiuteris sugrįžta į gyvenimą, bus mažai ženklas, kad jūs dabar 802.1 Q gali, išskyrus linijos išspjauti per įkelties procesą. Ten turėtų būti config programų savo $HOME/vlan kataloge: vconfig. vconfig yra naudojama sukurti ir sunaikinti VLAN prietaisai. Taigi, leidžia sukurti VLAN prietaisas jūsų pirmasis ethernet NIC. vconfig<return> pateiks trumpą spiel apie tai, kaip jį naudoti. Į vconfig komandą, aš paprastai naudoti:

vconfig add eth0 5

Tai bando sukurti VLAN prietaisas su VLAN-ID apie 5 eth0 prietaiso. Jei norite ištrinti VLAN, naudoti kažką panašaus į:

vconfig rem eth0.5

Jums taip pat reikia duoti ip, pvz: ifconfig -i eth0.5 192.168.2.1
ir sukonfigūruoti jį taip UP: ifconfig -i eth0.5 up

PASTABA: Jūs galite gauti daug VLAN susijusių konfigūracijos informaciją iš /proc/net/vlan/* failus naudojant “katė” ar “daugiau” ir pažvelgti į juos.

Išversta su http://www.candelatech.com/~greear/vlan.html

 

Grįžti į pagrindinį

Leave a Reply

Your email address will not be published. Required fields are marked *