Virtlab:Komponenty/Tunelovací server

Z VirtlabWiki

< Virtlab:Komponenty(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
Verze z 10:10, 15. 10. 2007
Vav166 (Diskuse | příspěvky)

← Předchozí porovnání
Aktuální verze
Kuc274 (Diskuse | příspěvky)

Řádka 1: Řádka 1:
-* má síťová rozhraní k lokálnímu segmentu virtuálního spojovacího pole (trunk do spojovacích prvků C3550) a do Internetu+Při návrhu distribuované varianty virtuální síťové laboratoře se ukázala potřeba propojovat dvě i více vzdálených zařízení do jednoho virtuálního ethernetového segmentu a to dynamicky, podle potřeby uživatele. Navíc bylo potřeba počítat s tím, že v každé lokalitě může být zařízení, které má být do virtuálního ethernetového segmentu, připojeno do jiné VLAN. Při zkoumání možných řešení nebyl nalezen žádný vhodný existující software pro tunelování VLAN, a proto bylo přistoupeno k implementaci vlastního řešení.
-* podle své konfigurace tuneluje rámce vybraných VLAN přicházející z lokálního segmentu virtuálního spojovacího pole k příslušným tunelovacím serverům jiných lokalit a opačně+
-** umí i kopírovat rámce do více VLAN+
-*umožňuje přemosťovat mezi lokálními VLAN (kvůli propojování simulovaných laboratorních prvků připojených ke konstantě přiřazeným VLAN)+
-Později předpoklad doplnění návaznosti na enkapsulační server synchronních rozhraní 
-==Zprovoznění USB-Ethernet převodníku==+Tunelovací server je jeden ze šesti serverů distribuovaného virtlabu. Jelikož se předpokládá jeho velké vytížení a hlavně potřeba vysoké rychlosti, je vhodné, aby běžel na vlastním fyzickém stroji. Pro svou činnost vyžaduje (minimálně) dvě síťová rozhraní. Jedním rozhraním je připojen k virtuálnímu spojovacímu poli a druhým do Internetu.
-Rackovatelný server Abacus má dvě síťové karty, které však používají hardwarovou akceleraci a tím znemožňují přístup k číslu VLAN. Tohle číslo je ale pro tunelovací server nezbytné, proto s těmito kartami nedokáže pracovat.+
-Náhradní možnost je použít USB-Ethernet převodník (testováno s Edimax EU-4202). Ten se dá v linuxu (Debian s jádrem 2.6.8 a upgradovaný ze Sarge na Etch) velice jednoduše zprovoznit. Stačí příkaz '''modprobe usbnet'''. Karta se sice ze začátku "schovává" - tzn. ve vypisu ifconfig nebyla k nalezení, ale okamžiťe po připojení UTP kabelem do sítě se zobrazila jako eth2 a byla schopna práce.+Od spojovacího pole přebírá všechny rámce směřující k prvku v jiné lokalitě. Úkolem je "zamaskovat" skutečnost, že prvek fyzicky není ve stejném ethernetovém segmentu, ale třeba na druhém konci světa.
-''Pro automatické zavádění modulu po startu systému je nutné ještě dopsat do souboru '''/etc/modules''' řádek '''usbnet'''. Dále jsem do souboru '''/etc/rc.local''' dopsal prikaz pro "nahozeni" rozhrani eth2 - <code>ifconfig eth2 up</code>.''+'''Příklad:'''
 + | |
 + PC 1 -- Switch A -- | Internet | -- Switch B -- PC 2
 + | |
-== Pozor na Spanning-tree ==+Uživatel Virtlabu chce spojit Switch A a Switch B fyzickou linkou. Tyto switche se však mohou nacházet v různých lokalitách Distribuovaného Virtlabu. Tunelovací server tedy převezme všechny rámce směřující od Switche A do Switche B a zabalí je do UDP datagramu. Ten je poslán do lokality, kde se Switch B nachází. Tam jej opět převezme místní Tunelovací server a postará se o vybalení z UDP a odeslání směrem ke Switchi B.
-Tunelovací server nedokáže pracovat, pokud "hlavním" switchi (tzn. switch, který je k tun-serveru přímo připojen) není vypnut protokol spanning-tree. Vzorová konfigurace tohoto switche je ulozena v SVN v souboru ''DISTR/src/spojovac/C3550-permanent.cfg''.+
-== Problém s omezením čísel VLAN ==+'''Uživateli Virtlabu je však celá tato procedura skryta a vše se mu jeví, jako by switche byly opravdu přímo fyzicky spojeny.'''
-Na "hlavním" switchi je dále vhodné vypnout protokol VTP, přesněji řečeno přepnout jej do módu '''transparent'''.+
-<code>SW(config)#vtp mode transparent</code>+----
 +== Shrnutí ==
 +'''Tunelovací server'''
-V opačném případě nebyly switche schopny pracovat s VLANy s číslem větším než 1001. Buď switch vypsal při nastavování tohoto čísla chybovou hlášku (''non-ethernet vlan'') nebo jen port zablokoval a LEDka svítila oranžovou barvou. V každém případě port nebyl schopen práce.+* má síťová rozhraní k lokálnímu segmentu virtuálního spojovacího pole (trunk do spojovacích prvků C3550) a do Internetu
-''(Asi daná verze VTP nepodporuje takováto čísla?)''+* podle své konfigurace tuneluje rámce vybraných VLAN přicházející z lokálního segmentu virtuálního spojovacího pole k příslušným tunelovacím serverům jiných lokalit a opačně
 +** umí i kopírovat rámce do více VLAN
 +*umožňuje přemosťovat mezi lokálními VLAN (kvůli propojování simulovaných laboratorních prvků připojených ke konstantě přiřazeným VLAN)
 + 
 +Později předpoklad doplnění návaznosti na enkapsulační server synchronních rozhraní
-''V "ukázkové konfiguraci" v souboru DISTR/src/spojovac/C3550-permanent.cfg je vše dobře.''+== Detailní informace pro vývojáře ==
 +* [[Virtlab:Tunelovací server]]
 +[[Kategorie:Komponenty virtlabu]]
 +[[Kategorie:Server]]
[[Kategorie:Tunelovací server]] [[Kategorie:Tunelovací server]]

Aktuální verze

Při návrhu distribuované varianty virtuální síťové laboratoře se ukázala potřeba propojovat dvě i více vzdálených zařízení do jednoho virtuálního ethernetového segmentu a to dynamicky, podle potřeby uživatele. Navíc bylo potřeba počítat s tím, že v každé lokalitě může být zařízení, které má být do virtuálního ethernetového segmentu, připojeno do jiné VLAN. Při zkoumání možných řešení nebyl nalezen žádný vhodný existující software pro tunelování VLAN, a proto bylo přistoupeno k implementaci vlastního řešení.


Tunelovací server je jeden ze šesti serverů distribuovaného virtlabu. Jelikož se předpokládá jeho velké vytížení a hlavně potřeba vysoké rychlosti, je vhodné, aby běžel na vlastním fyzickém stroji. Pro svou činnost vyžaduje (minimálně) dvě síťová rozhraní. Jedním rozhraním je připojen k virtuálnímu spojovacímu poli a druhým do Internetu.

Od spojovacího pole přebírá všechny rámce směřující k prvku v jiné lokalitě. Úkolem je "zamaskovat" skutečnost, že prvek fyzicky není ve stejném ethernetovém segmentu, ale třeba na druhém konci světa.

Příklad:

                      |              |
PC 1 -- Switch A  --  |   Internet   |  --  Switch B -- PC 2
                      |              | 

Uživatel Virtlabu chce spojit Switch A a Switch B fyzickou linkou. Tyto switche se však mohou nacházet v různých lokalitách Distribuovaného Virtlabu. Tunelovací server tedy převezme všechny rámce směřující od Switche A do Switche B a zabalí je do UDP datagramu. Ten je poslán do lokality, kde se Switch B nachází. Tam jej opět převezme místní Tunelovací server a postará se o vybalení z UDP a odeslání směrem ke Switchi B.

Uživateli Virtlabu je však celá tato procedura skryta a vše se mu jeví, jako by switche byly opravdu přímo fyzicky spojeny.


Shrnutí

Tunelovací server

  • má síťová rozhraní k lokálnímu segmentu virtuálního spojovacího pole (trunk do spojovacích prvků C3550) a do Internetu
  • podle své konfigurace tuneluje rámce vybraných VLAN přicházející z lokálního segmentu virtuálního spojovacího pole k příslušným tunelovacím serverům jiných lokalit a opačně
    • umí i kopírovat rámce do více VLAN
  • umožňuje přemosťovat mezi lokálními VLAN (kvůli propojování simulovaných laboratorních prvků připojených ke konstantě přiřazeným VLAN)

Později předpoklad doplnění návaznosti na enkapsulační server synchronních rozhraní

Detailní informace pro vývojáře

Osobní nástroje